CN104991874A - 一种基于scst的多控制器存储设备alua配置方法 - Google Patents
一种基于scst的多控制器存储设备alua配置方法 Download PDFInfo
- Publication number
- CN104991874A CN104991874A CN201510435439.1A CN201510435439A CN104991874A CN 104991874 A CN104991874 A CN 104991874A CN 201510435439 A CN201510435439 A CN 201510435439A CN 104991874 A CN104991874 A CN 104991874A
- Authority
- CN
- China
- Prior art keywords
- controller
- attribute
- lun
- tpg
- group
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/18—Handling requests for interconnection or transfer for access to memory bus based on priority control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Logic Circuits (AREA)
- Hardware Redundancy (AREA)
Abstract
本发明公开了一种HOST主机在访问多控制器存储设备下的逻辑单元LUN的时候,由于存储逻辑单元LUN存在控制器属主概念,所以通过各个控制器提供的路径对LUN进行读写的时候存在效率差距,LUN所属的控制器提供的路径效率要明显优于其他控制器所提供的路径。Scst提供了implicit ALUA的配置方式,可以为LUN提供路径访问的优先级,使LUN所在的控制器端口具有更高的优先级,从而使更多的IO命令通过LUN主控制器对LUN进行访问。本发明利用SCST提供的接口修改ALUA配置属性,为LUN所属控制器的目标端口提供更高的路径优先级,从而提高IO效率。
Description
技术领域
本发明涉及计算机存储访问技术,特别涉及存储控制器的多路径机制配置方法。
背景技术
SCSI target subsystem for Linux(SCST)是Linux平台下的SCSI target中间层子系统,它为SCSI target驱动提供了统一的内核访问接口,从而简化target驱动的设计开发。SCST位于Linux SCSI子系统中间层之上,类似于SCSI子系统较高层的,SCST接受来自客户端的SCSI命令并将命令传给SCSI中间层。图1为SCST与SCSI中间层以及SCSI target驱动的关系图。
SCST通过sysfs提供了很好的用户接口,用户可以以此修改SCST的相关配置,本发明涉及的ALUA配置就是通过sysfs接口进行的,这将在后续进行说明。
非对称逻辑单元访问ALUA(Asymmetric Logical Unit Access),是为SCSI设备定义路径优先级顺序的一个SCSI相关概念和指令的集合,它用自己的方式定义了SCSI目标端口状态和属性。概括的说,ALUA描述了访问SCSI设备的所有路径的特点,包括快、慢、不可访问以及路径处于这些状态之间转换的过程中。ALUA提供了主机和存储设备之间的多路径冗余输入输出IO的管理方法,增加了通用性,减少了不同厂家自制所带来的复杂性。ALUA提供了获取目标端口到主机的状态方法,并通过这些状态为路径按优先级分类,以此做出故障转换和负载均衡决定。
通过配置将目标端口分别划分在不同的目标端口组TPG(target portgroup)中,同一个TPG中的目标端口在访问逻辑单元LUN的时候具有相同的属性。主机通过发送SCSI指令MAINTENANCE_IN来获取访问某一个LUN的所有TPG以及TPG的相关属性,并通过INQUIRY获取组中的目标端口ID列表,然后主机通过这些信息来组织访问LUN的路径。通过INQUIRY指令获取目标端口ID的可访问性,以及REPORT_TARGET_PORT_GROUPS指令获取TPG的状态等特点就可以得到所有访问SCSI设备的路径可访问性及优先级特点。
ALUA分为两种类型:隐式(Implicit)和显式(Explicit),其中:
●Implicit ALUA,TPG的alua状态由SCSI Target Device决定,支持Report target port group命令。
●Explicit ALUA,除了支持Report target port group命令,还支持settarget port group命令,可以在应用客户端设置TPG的ALUA状态。
SCST仅支持Implicit ALUA,本发明的TPG的状态需要在存储端通过SCST提供的接口进行设置,后续的具体实施例部分将进一步地进行具体的介绍。
ALUA定义了四个访问LUN的路径的状态:
●Active/Optimized活动/优化
●Active/Non-Optimized活动/非优化
●Standby待机
●Unavailable不可访问
●Offline掉线
●Transitioning状态转换中
多控制器在进行IO读写的时候,进入到非LUN所在控制器的时候需要先将IO请求传输到LUN所在控制器之后,再由LUN所在控制器对LUN进行读写操作。图2示出了双控制器下IO过程。如图2所示,IO请求在通过控制器B对LUN进行读写的时候先将IO请求传输到控制器A,然后再由控制器A对LUN进行读写,而当IO请求通过控制器A对LUN进行访问的时候,则直接对LUN进行IO访问。所以当主机通过控制器B对LUN进行访问的时候,速度会明显小于通过控制器A进行访问的速度。
发明内容
本发明公开了一种基于SCST的多控制器存储设备ALUA配置方法,通过SCST提供的implicit ALUA的配置方式,可以为LUN提供路径访问的优先级,使LUN所在的控制器端口具有更高的优先级,从而使更多的IO命令通过LUN主控制器对LUN进行访问。本发明利用SCST提供的接口修改ALUA配置属性,为LUN所属控制器的目标端口提供更高的路径优先级,从而提高IO效率。
为了解决上述技术问题,本发明提供了一种基于SCST的多控制器存储设备非对称逻辑单元访问ALUA配置方法,包括:将目标端口按照所属控制器进行分组,划分到不同的目标端口组TPG中;根据逻辑单元LUN所在的控制器来设置所述TPG的属性,使LUN所在的控制器端口具有更高的优先级。
进一步地,在安装了SCST模块的存储端控制器上进行上述ALUA配置方法。
进一步地,通过SCST模块提供的sysfs接口对所述TPG组进行配置。
进一步地,所述TPG组的属性包括preferred属性和state属性。
进一步地,将本控制器下TGP的preferred属性设置为1,state属性设置为active;其他控制器下TGP的preferred属性设置为0,state属性设置为standby。
进一步地,所述TPG组的数量与控制器个数相同。
本发明还提供了一种基于SCST的多控制器存储设备非对称逻辑单元访问ALUA配置装置,包括:STSC模块,用于提供implicit ALUA的配置方式,为逻辑单元LUN提供路径访问的优先级,使LUN所在的控制器端口具有更高的优先级。
进一步地,还包括安装模块,用于在存储端控制器上安装SCST模块,从而通过SCST模块提供的sysfs接口对TPG组进行配置。
进一步地,所述STSC模块还包括:组添加模块,为所述组下添加设备组和TPG组,在所述设备组下添加要访问的逻辑单元LUN,将同一个控制器下的目标端口添加到相同的TPG组中;设置模块,根据逻辑单元LUN所在的控制器来设置所述TPG的属性,使LUN所在的控制器端口具有更高的优先级。
通过ALUA配置,将所属控制器目标端口提供更高的优先级,就能实现IO效率的优化的有益效果。
附图说明
附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
图1示出了SCST与SCSI中间层以及SCSI target驱动的关系图;
图2示出了现有技术中双控制器下IO过程。
图3示出了根据本发明的一实施例的配置方法流程图。
具体实施方式
为了达到主机访问多控制器存储设备的最佳性能,在安装了SCST模块的存储端控制器上进行ALUA的配置,将目标端口按照所属控制器进行分组,划分到不同的TPG中,并根据LUN所在的控制器来设置TPG的属性。
其中,SCST接口中所述TPG的可设置的属性包括,preferrd和state。所述preferrd可选值包括0和1,与所述state相互独立,并影响主机的路径选择。例如当某条路径preferrd设置为0,state设置为active时,主机可能优先选择preferrd为1,active为standby的路径。所述state,可选值包括活动(active)、非优化(nonoptimized)、待机(standby)、不可访问(unavailable)、掉线(offline)、状态转换中transitioning。
参考图3,根据本发明的一实施例,具体ALUA配置过程如下:
步骤101(未示出),在存储端控制器上安装SCST模块,安装SCST模块之后,会在linux的sys目录下生成路径/sys/kernel/scst_tgt/device_group。
进一步地,在编译SCST模块的时候选择makediable_proc使能SCST的sysfs接口,从而通过SCST模块提供的sysfs接口对TPG组进行配置。
步骤102,将目标端口按照所属控制器进行分组,划分到不同的目标端口组TPG中。
具体地,在所述生成路径下添加组group,所述组group下包括设备(device)组和TPG组。
在所述设备组下添加要访问的逻辑单元LUN。
添加多个所述TPG组,所述TPG组的数量与控制器个数相同,将同一个控制器下的目标端口(target port)添加到相同的TPG组中。
步骤103,根据逻辑单元LUN所在的控制器来设置所述TPG的属性,使LUN所在的控制器端口具有更高的优先级。
具体地,进入所述TPG组中,修改所述TPG组的属性,所述属性包括preferred属性和state属性。
进一步地,将所述本控制器下TGP的preferred属性设置为1,state属性设置为active,其他控制器下TGP的preferred属性设置为0,state属性设置为standby。
以上配置过程是在某一个控制器上面进行的,重复步骤101-步骤103,在其他控制器进行相同的配置。
所述主机在通过ALUA获取路径优先级的时候需要多路径软件的配合,并根据多路径软件提供的配置方法将多路径策略修改为按优先级分组,并将获取优先级的策略改为ALUA。
根据本发明的一实施例,上述ALUA配置过程可以通过如下装置来实现,包括:
STSC模块,用于提供的implicit ALUA的配置方式,为逻辑单元LUN提供路径访问的优先级,使LUN所在的控制器端口具有更高的优先级;
进一步地,所述ALUA配置装置还包括,安装模块,用于在存储端控制器上安装SCST模块,从而通过SCST模块提供的sysfs接口对TPG组进行配置。
进一步地,所述STSC模块还包括:
组添加模块,为所述组下添加设备组和TPG组;
在所述设备组下添加要访问的逻辑单元LUN;
所述TPG组的数量与控制器个数相同,将同一个控制器下的目标端口(target port)添加到相同的TPG组中;
设置模块,根据逻辑单元LUN所在的控制器来设置所述TPG的属性,使LUN所在的控制器端口具有更高的优先级。
在示例性实施例中,上述模块可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器,上述指令可由一装置的处理器执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
虽然本发明所揭露的实施方式如上,但所述的内容仅为便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。
Claims (12)
1.一种基于SCST的多控制器存储设备非对称逻辑单元访问ALUA配置方法,其特征在于,包括:
将目标端口按照所属控制器进行分组,划分到不同的目标端口组TPG中;
根据逻辑单元LUN所在的控制器来设置所述TPG的属性,使LUN所在的控制器端口具有更高的优先级。
2.如权利要求1所述的方法,其特征在于,在安装了SCST模块的存储端控制器上进行上述ALUA配置方法。
3.如权利要求1所述的方法,其特征在于,通过SCST模块提供的sysfs接口对所述TPG组进行配置。
4.如权利要求1所述的方法,其特征在于,所述TPG组的属性包括preferred属性和state属性。
5.如权利要4所述的方法,其特征在于,将本控制器下TGP的preferred属性设置为1,state属性设置为active;其他控制器下TGP的preferred属性设置为0,state属性设置为standby。
6.如权利要求5所述的方法,其特征在于,所述TPG组的数量与控制器个数相同。
7.一种基于SCST的多控制器存储设备非对称逻辑单元访问ALUA配置装置,包括:
STSC模块,用于提供implicit ALUA的配置方式,为逻辑单元LUN提供路径访问的优先级,使LUN所在的控制器端口具有更高的优先级。
8.如权利要求7所述的装置,其特征在于,还包括安装模块,用于在存储端控制器上安装SCST模块,从而通过SCST模块提供的sysfs接口对TPG组进行配置。
9.如权利要求7所述的装置,其特征在于,所述STSC模块还包括:
组添加模块,为所述组下添加设备组和TPG组,在所述设备组下添加要访问的逻辑单元LUN,将同一个控制器下的目标端口添加到相同的TPG组中;
设置模块,根据逻辑单元LUN所在的控制器来设置所述TPG的属性,使LUN所在的控制器端口具有更高的优先级。
10.如权利要求9所述的装置,其特征在于,所述属性包括preferred属性和state属性。
11.如权利要求10所述的装置,其特征在于,将所述本控制器下TGP的preferred属性设置为1,state属性设置为active,其他控制器下TGP的preferred属性设置为0,state属性设置为standby。
12.一种基于SCST的多控制器存储设备非对称逻辑单元访问ALUA配置装置,包括:
处理器;
用于存储所述处理器的可执行指令的存储器;
其中,所述处理器被配置为:
将目标端口按照所属控制器进行分组,划分到不同的目标端口组TPG中;
根据逻辑单元LUN所在的控制器来设置所述TPG的属性,使LUN所在的控制器端口具有更高的优先级。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510435439.1A CN104991874B (zh) | 2015-07-22 | 2015-07-22 | 一种基于scst的多控制器存储设备alua配置方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510435439.1A CN104991874B (zh) | 2015-07-22 | 2015-07-22 | 一种基于scst的多控制器存储设备alua配置方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104991874A true CN104991874A (zh) | 2015-10-21 |
CN104991874B CN104991874B (zh) | 2018-02-06 |
Family
ID=54303690
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510435439.1A Active CN104991874B (zh) | 2015-07-22 | 2015-07-22 | 一种基于scst的多控制器存储设备alua配置方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104991874B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106873907A (zh) * | 2017-01-09 | 2017-06-20 | 中国电子科技集团公司第五十二研究所 | 一种多控制器存储阵列读写负载均衡方法及装置 |
CN107340973A (zh) * | 2017-07-05 | 2017-11-10 | 郑州云海信息技术有限公司 | 一种访问异步逻辑单元的方法及系统 |
CN107526660A (zh) * | 2017-09-05 | 2017-12-29 | 郑州云海信息技术有限公司 | 一种多控存储隐式alua的实现方法及装置 |
CN107832093A (zh) * | 2017-10-16 | 2018-03-23 | 北京易讯通信息技术股份有限公司 | 一种在私有云中免驱动对接标准iscsi/fc存储的方法 |
CN111930312A (zh) * | 2020-08-12 | 2020-11-13 | 北京计算机技术及应用研究所 | 一种双控存储阵列异步逻辑单元访问方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130246705A1 (en) * | 2012-03-15 | 2013-09-19 | Aboubacar Diare | Balancing logical units in storage systems |
CN103329106A (zh) * | 2010-11-12 | 2013-09-25 | 赛门铁克公司 | Alua首选项和状态转换的主机发现和处理 |
CN103493020A (zh) * | 2011-04-27 | 2014-01-01 | 国际商业机器公司 | 同步镜像的存储卷之间的透明的输入/输出切换 |
-
2015
- 2015-07-22 CN CN201510435439.1A patent/CN104991874B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103329106A (zh) * | 2010-11-12 | 2013-09-25 | 赛门铁克公司 | Alua首选项和状态转换的主机发现和处理 |
CN103493020A (zh) * | 2011-04-27 | 2014-01-01 | 国际商业机器公司 | 同步镜像的存储卷之间的透明的输入/输出切换 |
US20130246705A1 (en) * | 2012-03-15 | 2013-09-19 | Aboubacar Diare | Balancing logical units in storage systems |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106873907A (zh) * | 2017-01-09 | 2017-06-20 | 中国电子科技集团公司第五十二研究所 | 一种多控制器存储阵列读写负载均衡方法及装置 |
CN107340973A (zh) * | 2017-07-05 | 2017-11-10 | 郑州云海信息技术有限公司 | 一种访问异步逻辑单元的方法及系统 |
CN107340973B (zh) * | 2017-07-05 | 2021-04-13 | 郑州云海信息技术有限公司 | 一种访问异步逻辑单元的方法及系统 |
CN107526660A (zh) * | 2017-09-05 | 2017-12-29 | 郑州云海信息技术有限公司 | 一种多控存储隐式alua的实现方法及装置 |
CN107832093A (zh) * | 2017-10-16 | 2018-03-23 | 北京易讯通信息技术股份有限公司 | 一种在私有云中免驱动对接标准iscsi/fc存储的方法 |
CN111930312A (zh) * | 2020-08-12 | 2020-11-13 | 北京计算机技术及应用研究所 | 一种双控存储阵列异步逻辑单元访问方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104991874B (zh) | 2018-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102955675B (zh) | 用于改进数据中心中的资源使用效率的方法及装置 | |
US8898385B2 (en) | Methods and structure for load balancing of background tasks between storage controllers in a clustered storage environment | |
CN104991874A (zh) | 一种基于scst的多控制器存储设备alua配置方法 | |
EP3000023B1 (en) | Low cost storage for rarely read data | |
US8365169B1 (en) | Migrating a virtual machine across processing cells connected to an interconnect that provides data communication without cache coherency support | |
CN102567244A (zh) | 闪存和磁盘转换存取方法 | |
CN101075210B (zh) | 无需再引导对硬盘进行分区的设备和方法 | |
CN104205780A (zh) | 一种存储数据的方法和装置 | |
US9069471B2 (en) | Passing hint of page allocation of thin provisioning with multiple virtual volumes fit to parallel data access | |
JP2013210744A (ja) | ストレージ装置、起動装置決定方法およびプログラム | |
CN102393838B (zh) | 数据处理方法及装置、pci-e总线系统、服务器 | |
CN104951243A (zh) | 虚拟化存储系统中的存储扩展方法和装置 | |
EP2527973A1 (en) | Computer system with multiple operation modes and method of switching modes thereof | |
CN104808953A (zh) | 控制数据存储的方法、装置及移动终端 | |
CN102521155B (zh) | 实现表项在物理存储器上动态分配的方法和装置 | |
US7774650B2 (en) | Power failure warning in logically partitioned enclosures | |
US20180157425A1 (en) | Storage control apparatus, storage apparatus, and non-transitory computer-readable recording medium having control program stored therein | |
KR101147186B1 (ko) | 홈 저장 장치 및 소프트웨어 | |
JP2014137783A (ja) | Raidコントローラおよびそのコマンド処理方法 | |
US10712956B2 (en) | Management method and storage system using the same | |
US20130151808A1 (en) | Allocation device, allocation method and storage device | |
US8543784B1 (en) | Backup application coordination with storage array power saving features | |
CN103488533A (zh) | 一种程序执行方法、设备及系统 | |
KR102673715B1 (ko) | 호스트 커널에 부착되는 솔리드 스테이트 드라이브의 데이터 제어 시스템 및 방법 | |
WO2013115806A1 (en) | Drivers and controllers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |