KR101531564B1 - Method and System for load balancing of iSCSI storage system used network distributed file system and method - Google Patents

Method and System for load balancing of iSCSI storage system used network distributed file system and method Download PDF

Info

Publication number
KR101531564B1
KR101531564B1 KR1020130145285A KR20130145285A KR101531564B1 KR 101531564 B1 KR101531564 B1 KR 101531564B1 KR 1020130145285 A KR1020130145285 A KR 1020130145285A KR 20130145285 A KR20130145285 A KR 20130145285A KR 101531564 B1 KR101531564 B1 KR 101531564B1
Authority
KR
South Korea
Prior art keywords
iscsi
information
gateway
target
manager
Prior art date
Application number
KR1020130145285A
Other languages
Korean (ko)
Other versions
KR20150061316A (en
Inventor
오승
신중수
Original Assignee
주식회사 유투앤
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 주식회사 유투앤 filed Critical 주식회사 유투앤
Priority to KR1020130145285A priority Critical patent/KR101531564B1/en
Publication of KR20150061316A publication Critical patent/KR20150061316A/en
Application granted granted Critical
Publication of KR101531564B1 publication Critical patent/KR101531564B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1029Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers using data related to the state of servers by a load balancer

Abstract

본 발명은 iSCSI 스토리지 시스템을 이용한 비대칭 클러스터 분산 파일 시스템에서 부하를 효과적으로 분산할 수 있는 방법 및 시스템에 관한 것이다.
본 발명은 네트워크 분산 파일 시스템 기반 iSCSI 스토리지 시스템을 이용하고, 블록 레이아웃 매니저는 특정 iSCSI 초기자가 특정 iSCSI 게이트웨이에 속한 특정 iSCSI 타겟의 iSCSI 블록 읽기(Read)와 쓰기(Write) 요청을 처리할 때 읽기 및 쓰기 유형 정보, 데이터 크기 정보 및 LUN 정보 중 적어도 하나를 기록하는 제 1 단계; 블록 레이아웃 매니저는 상기 iSCSI 세션 매니저에 읽기 및 쓰기 유형 정보, 데이터 크기 정보 및 LUN 정보 중 적어도 하나의 정보를 전달하는 제 2 단계; 상기 iSCSI 세션 매니저는 상기 정보를 iSCSI 게이트웨이 별로 집계하는 제 3 단계; 상기 iSCSI 세션 매니저는 상기 iSCSI 게이트웨이 별로 집계된 정보에서 iSCSI 게이트웨이 순위 인덱스를 갱신하는 제 4 단계; 및 상기 iSCSI 세션 매니저는 상기 iSCSI 게이트웨이 별로 집계된 정보로부터 iSCSI 타겟의 iSCSI 게이트웨이를 변경하는 제 5 단계를 포함한다.
The present invention relates to a method and system for efficiently distributing a load in an asymmetric cluster distributed file system using an iSCSI storage system.
The present invention utilizes a network distributed file system based iSCSI storage system, and the block layout manager can read and write iSCSI block iSCSI block read and write requests of a specific iSCSI target belonging to a specific iSCSI gateway. A first step of recording at least one of write type information, data size information and LUN information; A second step of transferring at least one of read and write type information, data size information and LUN information to the iSCSI session manager; A third step of the iSCSI session manager aggregating the information for each iSCSI gateway; The iSCSI session manager updating an iSCSI gateway rank index from the information aggregated for each iSCSI gateway; And the iSCSI session manager includes a fifth step of changing the iSCSI gateway of the iSCSI target from information compiled for each iSCSI gateway.

Description

네트워크 분산 파일 시스템 기반 iSCSI 스토리지 시스템에서의 부하 분산 방법 및 시스템 {Method and System for load balancing of iSCSI storage system used network distributed file system and method}BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method and system for load balancing in an iSCSI storage system based on a network distributed file system,

본 발명은 비대칭 클러스터 분산 파일 시스템 기반 iSCSI 스토리지 시스템에서 부하를 효과적으로 분산할 수 있는 방법 및 시스템에 관한 것이다.
The present invention relates to a method and system for efficiently distributing loads in an asymmetric cluster distributed file system based iSCSI storage system.

최근 인터넷 기술의 비약적인 발전에 따라 사진, 동영상과 같은 멀티미디어 데이터의 전송이 비약적으로 증가하고 있으며, 따라서 인터넷을 이용한 멀티미디어 데이터 전송 서비스를 제공하는 업체의 경우 매우 큰 용량의 데이터가 새롭게 생성되고 있다. 따라서, 많은 용량의 데이터를 효과적으로 분산하여 관리할 수 있는 시스템의 도입이 시급한 실정이다.In recent years, with the rapid development of the Internet technology, the transmission of multimedia data such as photographs and moving images has been dramatically increased. Therefore, a company providing a multimedia data transmission service using the Internet has generated a very large amount of data. Therefore, it is urgent to introduce a system capable of effectively distributing and managing a large amount of data.

최근, 스토리지 시스템 또는 파일 시스템에 대한 기술 발전은 스토리지 시스템의 확장성 및 성능을 크게 향상시키고 있다. 파일 시스템 구조 측면에서 살펴보면, 몇몇 시스템들은 파일의 데이터 입출력 경로와 파일의 메타데이터 관리 경로를 분리시킨, 소위 비대칭 클러스터 파일 시스템을 구축하여 분산 스토리지 시스템의 확장성과 성능을 높이기 위한 노력을 하고 있다.Recently, advances in storage system or file system technology have greatly improved the scalability and performance of storage systems. In terms of the file system structure, some systems are trying to build a so-called asymmetric cluster file system that separates the data input / output path of the file and the metadata management path of the file, thereby improving the scalability and performance of the distributed storage system.

이러한 구조는 클라이언트 시스템이 저장 장치들을 직접 접근할 수 있게 해주며, 또한, 파일의 빈번한 접근으로 인해 발생하는 병목 지점을 회피하여 스토리지의 확장성을 높일 수 있다. 예컨데, IBM의 StorageTank와 Panasas의 ActiveScale Storage Cluster, Cluster Filesystems의 Luster, Hadoop의 DFS, Google의 Google Filesystem 등의 엔터프라이즈급 스토리지 솔루션이 이러한 구조를 기반으로 개발되었다. This structure allows the client system to directly access the storage devices and also increases storage scalability by avoiding bottlenecks caused by frequent file accesses. For example, IBM's StorageTank and Panasas 'ActiveScale Storage Cluster, Cluster Filesystems' Luster, Hadoop's DFS, and Google's Google Filesystem were developed based on this architecture.

이러한 네트워크 기반 분산 파일 시스템 환경에서는 어플리케이션 서버, 메타데이터 서버, 데이터 서버들이 네트워크를 통해 교신하면서 데이터의 입출력을 제공한다. 또한, 어플리케이션 서버가 특정 파일에 접근하기 위해서는 먼저 메타데이터 서버로부터 파일의 실제 데이터가 저장된 블록의 위치 정보를 얻은 뒤에, 이 위치 정보를 이용하여 실제 데이터를 저장하고 있는 데이터 서버에 접근하여 해당 블록의 데이터를 얻는다.
In such a network-based distributed file system environment, an application server, a metadata server, and a data server communicate with each other via a network to provide data input / output. In order for the application server to access a specific file, the metadata server obtains the location information of the block in which the actual data of the file is stored, accesses the data server storing the actual data using the location information, Data is obtained.

이러한 비대칭형 구조의 분산 파일 시스템을 기반으로 iSCSI 프로토콜을 이용한 블록 데이터 입출력 서비스를 하기 위해서는 iSCSI Target 생성하고 분산 파일 시스템의 저장 영역을 연결시키는 모듈(iSCSI 게이트웨이)이 필요하다. 하나의 단위 iSCSI 게이트웨이가 여러 개의 IQN(iSCSI Qualified Name)을 기준으로 각각의 iSCSI 타겟을 형성하여, 다수의 클라이언트(애플리케이션 서버 상의 iSCSI 초기자(Initiator))에게 블록 데이터 입출력 서비스를 제공하게 된다. 따라서, 다수의 iSCSI 게이트웨이는 연결된 클라이언트의 블록데이터 입출력 크기에 따라서, 각각의 iSCSI 게이트웨이에 가해지는 데이터 입출력의 크기에 따라서 데이터 입출력 부하가 특정 게이트웨이에 집중되는 문제점이 있다.
In order to perform block data input / output service using the iSCSI protocol based on the distributed file system of the asymmetric structure, a module (iSCSI gateway) for creating an iSCSI target and connecting the storage area of the distributed file system is required. One unit iSCSI gateway forms each iSCSI target based on a plurality of iSCN Qualified Names (IQN), and provides a block data input / output service to a plurality of clients (iSCSI Initiator on the application server). Therefore, a plurality of iSCSI gateways have a problem that the data input / output load is concentrated on a specific gateway depending on the size of data input / output applied to each iSCSI gateway, depending on the block data input / output size of a connected client.

따라서, 본 발명은 하나의 단위 iSCSI 게이트웨이가 다수의 클라이언트에게 블록 데이터 입출력 서비스를 제공할 때, 다수의 iSCSI 게이트웨이는 연결된 클라이언트의 블록데이터 입출력 크기에 따라서 데이터 입출력 부하가 특정 게이트웨이에 집중되는 문제점을 해결하는 것을 목적으로 한다.
Accordingly, when one unit iSCSI gateway provides a block data input / output service to a plurality of clients, a plurality of iSCSI gateways solve a problem that a data input / output load is concentrated in a specific gateway according to a block data input / output size of a connected client .

메타데이터 서버(M), 데이터 서버(D) 및 어플리케이션 서버(0)를 포함하여 구동되는 네트워크 분산 파일 시스템 기반 iSCSI 스토리지 시스템에서의 부하 분산 방법으로서,A method for load balancing in a network distributed file system based iSCSI storage system driven including a metadata server (M), a data server (D), and an application server (0)

상기iSCSI 스토리지 시스템은 상기 메타데이터 서버(M) 및 데이터 서버(D)를 블록 입출력 저장공간으로 활용하여 SCSI(Small Computers System Interface) 명령을 iSCSI(internet Small Computers System Interface) 인터페이스 기반으로 처리하기 위하여 복수의 iSCSI 게이트웨이(Gateway), iSCSI 컨트롤 서버(Control Server) 및 iSNS 서버를 포함하고,The iSCSI storage system utilizes the metadata server M and the data server D as a block I / O storage space to process SCSI (Small Computers System Interface) commands based on iSCSI (Internet Small Computer System Interface) ISCSI Gateway, iSCSI Control Server and iSNS Server,

상기 iSCSI 게이트웨이는 네트워크 기반의 스토리지 외부에서 요청하는 블록 데이터 입출력의 표준 인터페이스로 기능하는 SCSI 타겟 코어(Target Core)와, 분산 파일 시스템에 iSCSI 인터페이스를 지원하기 위한 SCSI 미들웨어와, 다수의 물리적 디스크 공간에 분산된 데이터 블록 정보를 관리하는 블록 레이아웃 매니저(Block Layout Manager)를 포함하고, 상기 컨트롤 서버는 분산 파일 시스템의 저장공간을 이용하여 iSCSI 볼륨을 구성하고 다수의 iSCSI 게이트웨이를 제어하는 iSCSI 볼륨 매니저와 복수의 iSCSI 타겟 코어의 세션 기능을 관리하는 iSCSI 세션 매니저를 포함하는 시스템에 의하여 구동되며,The iSCSI gateway includes a SCSI target core serving as a standard interface for block data input / output requested outside the network-based storage, SCSI middleware for supporting the iSCSI interface in the distributed file system, And a block layout manager (Block Layout Manager) for managing distributed data block information, wherein the control server comprises an iSCSI volume manager for configuring an iSCSI volume using a storage space of a distributed file system and controlling a plurality of iSCSI gateways, Lt; RTI ID = 0.0 > iSCSI < / RTI > session manager,

상기 블록 레이아웃 매니저는 특정 iSCSI 초기자가 특정 iSCSI 게이트웨이에 속한 특정 iSCSI 타겟의 iSCSI 블록 읽기(Read)와 쓰기(Write) 요청을 처리할 때 읽기 및 쓰기 유형 정보, 데이터 크기 정보 및 LUN 정보 중 적어도 하나를 기록하는 제 1 단계;The block layout manager may include at least one of read and write type information, data size information, and LUN information when a specific iSCSI initiator processes iSCSI block read and write requests of a specific iSCSI target belonging to a specific iSCSI gateway A first step of recording;

상기 블록 레이아웃 매니저는 상기 iSCSI 세션 매니저에 읽기 및 쓰기 유형 정보, 데이터 크기 정보 및 LUN 정보 중 적어도 하나의 정보를 전달하는 제 2 단계;A second step of transferring at least one of read and write type information, data size information and LUN information to the iSCSI session manager;

상기 iSCSI 세션 매니저는 상기 정보를 iSCSI 게이트웨이 별로 집계하는 제 3 단계;A third step of the iSCSI session manager aggregating the information for each iSCSI gateway;

상기 iSCSI 세션 매니저는 상기 iSCSI 게이트웨이 별로 집계된 정보에서 iSCSI 게이트웨이 순위 인덱스를 갱신하는 제 4 단계;The iSCSI session manager updating an iSCSI gateway rank index from the information aggregated for each iSCSI gateway;

상기 iSCSI 세션 매니저는 상기 iSCSI 게이트웨이 별로 집계된 정보로부터 iSCSI 타겟의 iSCSI 게이트웨이를 변경하는 제 5 단계를 포함하는 것을 특징으로 한다.And the iSCSI session manager includes a fifth step of changing the iSCSI gateway of the iSCSI target from the information compiled for each of the iSCSI gateways.

또한, 상기 방법은 상기 제 1 단계에 앞서서 iSCSI 컨트롤 서버가 iSNS 서버에 특정 iSCSI 타겟의 IQN 정보 및 포탈 정보를 기록하는 사전 단계를 더 포함하는 것이 바람직하다.In addition, the method may further include a pre-step in which the iSCSI control server records the IQN information and the portal information of the specific iSCSI target in the iSNS server prior to the first step.

이 경우, 상기 사전 단계는, 상기 iSCSI 볼륨 매니저는 메타 데이터 서버(M)를 통해 iSCSI 볼륨을 파일 기반으로 생성하는 단계, 상기 iSCSI 볼륨 매니저는 생성한 iSCSI 볼륨에 대해 iSCSI 컨트롤 서버에 위치한 DB에 iSCSI 볼륨 이름 정보 및 크기 정보를 저장하는 단계, 상기 iSCSI 볼륨 매너저는 iSCSI 게이트웨이 ID, IQN 정보, TPG(Target Portal Group; 타겟 프로토콜 그룹), LUN, 포탈(Portal) 및 ACL 정보 중 적어도 하나의 정보로부터 특정 iSCSI 게이트웨이에 iSCSI 타겟을 생성하는 단계, 상기 iSCSI 불륨 매니저는 iSCSI 컨트롤서버에 위치한 DB에 iSCSI 게이트웨이 ID, IQN 정보, TPG, LUN, 포탈 및 ACL 정보 중 적어도 하나의 정보를 기록하는 단계, 상기 iSCSI 볼륨 매니저는 상기 iSCSI 타겟의 LUN에 iSCSI 볼륨을 매핑(연결)하고, iSCSI 컨트롤 서버의 DB에 iSCSI 볼륨 사용 정보를 기록하는 단계, 및 iSCSI 볼륨 매니저는 iSCSI 세션 매니저에 상기 iSCSI 볼륨 사용 정보를 통보하는 단계를 더 포함하는 것이 바람직하다.In this case, in the pre-processing step, the iSCSI volume manager creates an iSCSI volume on a file basis through the metadata server M, and the iSCSI volume manager performs iSCSI Storing the volume name information and the size information; and the iSCSI volume manner is configured to determine, from at least one of the iSCSI gateway ID, the IQN information, the TPG (Target Portal Group), the LUN, creating an iSCSI target in an iSCSI gateway, the iSCSI volume manager recording at least one of iSCSI gateway ID, IQN information, TPG, LUN, portal and ACL information to a DB located in an iSCSI control server; The manager mapping (connecting) the iSCSI volume to the LUN of the iSCSI target, recording the iSCSI volume usage information in the DB of the iSCSI control server, The SI volume manager may further include notifying the iSCSI session manager of the iSCSI volume usage information.

또한, 상기 제 2 단계에서 상기 정보의 전달은 미리 선택된 보고 주기 별로 반복적으로 이루어지는 것이 바람직하다.In addition, in the second step, it is preferable that the transmission of the information is repeatedly performed for each of the pre-selected reporting periods.

또한, 상기 제 2 단계에서 상기 정보의 전달이 성공되면 상기 블록 레이아웃 매니저는 저장된 정보를 초기화하는 단계를 더 포함하는 것이 바람직하다.In addition, if the information is successfully transferred in the second step, the block layout manager may further include initializing the stored information.

또한, 상기 제 2 단계에서 상기 블록 레이아웃 매니저는 "보고 주기"까지 읽기 및 쓰기 유형 정보, 데이터 크기 정보 및 LUN 정보 중 적어도 하나의 정보를 누적하는 단계를 더 포함하는 것이 바람직하다.In the second step, the block layout manager may further include accumulating at least one of read and write type information, data size information, and LUN information until a "reporting period ".

또한, 상기 제 4 단계에서 상기 iSCSI 세션 매니저는 읽기 및 쓰기 별 데이터 크기 정보에 임의로 설정된 "읽기 가중치" 및 "쓰기 가중치"를 곱해서 합산한 수치를 기반으로 iSCSI 게이트웨이 순위 인덱스를 갱신하는 것이 바람직하다.In the fourth step, the iSCSI session manager updates the iSCSI gateway rank index based on a value obtained by multiplying the read and write-specific data size information by a randomly set " read weight "and a" write weight ".

또한, 상기 iSCSI 세션 매니저는 각 iSCSI 게이트웨이에 iSCSI 초기자에 의해 로그인되지 않은 iSCSI 타겟을 감시하는 제 6단계를 더 포함하는 것이 바람직하다. In addition, the iSCSI session manager preferably further includes a sixth step of monitoring an iSCSI target not logged in by the iSCSI initiator to each iSCSI gateway.

이 경우, 상기 iSCSI 세션 매니저는 비활성화된 iSCSI 타겟이 감지되면 해당 iSCSI 타겟의 iSCSI 게이트웨이 순위 인덱스를 확인하는 단계, 및 iSCSI 게이트웨이 순위 인덱스가 관리자에 의해 설정된 "리밸런싱 인덱스 기준값" 보다 낮을 경우에 감지된 iSCSI 타겟이 부하 분산 대상으로 선정하는 단계를 더 포함하는 것이 바람직하다.In this case, if the iSCSI session manager detects the deactivated iSCSI target, it checks the iSCSI gateway rank index of the corresponding iSCSI target, and if the iSCSI gateway rank index is lower than the "rebalancing index benchmark value & it is preferable that the step of selecting an iSCSI target as a load distribution target is further included.

또한, iSCSI 세션 매니저는 iSCSI 볼륨 매니저를 통해 DB에 저장된 해당 iSCSI 타겟의 정보를 이용해 대상 iSCSI 게이트웨이에 iSCSI 타겟을 복제하고, iSNS 서버의 포탈 정보를 갱신하는 단계를 더 포함하는 것이 바람직하다.The iSCSI session manager may further include a step of replicating the iSCSI target to the target iSCSI gateway using the information of the iSCSI target stored in the DB through the iSCSI volume manager and updating the portal information of the iSNS server.

또한, 상기 방법은 해당 iSCSI 타겟이 해당 iSCSI 게이트웨이에 유일할 경우 부하 분석을 종료하는 것이 바람직하다.Also, the method preferably terminates load analysis when the corresponding iSCSI target is unique to the iSCSI gateway.

또한, 상기 방법은 로그아웃(logout)된 iSCSI 타겟의 게이트웨이가 인덱스 기준값 이하인 경우 부하분석 종료하는 것이 바람직하다.Also, the method preferably ends the load analysis when the gateway of the log-out iSCSI target is below the index reference value.

또한, 상기 방법은 해당 iSCSI 타겟을 iSCSI 게이트웨이 순위 인덱스가 가장 높은 iSCSI 게이트웨이, 즉 가장 부하가 적은 게이트웨이(대상 iSCSI Gateway)에 가상으로 해당 iSCSI 타겟을 소속시키고 임시 iSCSI 게이트웨이 순위 인덱스를 갱신하고, 대상 iSCSI 게이트웨이의 iSCSI 게이트웨이 순위 인덱스 값이 리밸런싱 인덱스 기준값 보다 클 경우에는 iSCSI 타겟을 대상 iSCSI 게이트웨이로 이동할 것을 명령하는 것이 바람직하다.In addition, the above-described method can be achieved by virtually belonging iSCSI target to the iSCSI gateway having the highest iSCSI gateway rank index, i.e., the lowest load gateway (target iSCSI gateway), updating the temporary iSCSI gateway rank index, If the gateway's iSCSI gateway rank index value is greater than the rebalancing index threshold, it is advisable to instruct the iSCSI target to move to the target iSCSI gateway.

또한, 상기 방법은 대상 iSCSI 게이트웨이의 iSCSI 게이트웨이 순위 인덱스 값이 리밸런싱 인덱스 기준값 보다 작은 경우 부하 분석을 종료하는 것이 바람직하다.
In addition, the method preferably ends the load analysis when the iSCSI gateway index value of the target iSCSI gateway is smaller than the rebalancing index reference value.

본 발명에 따른 네트워크 분산 파일 시스템 기반 iSCSI 스토리지 시스템에서의 부하 분산 방법을 이용하면 하나의 단위 iSCSI 게이트웨이가 다수의 클라이언트에게 블록 데이터 입출력 서비스를 제공할 때 다수의 iSCSI 게이트웨이는 연결된 클라이언트의 블록데이터 입출력 크기에 따라서 데이터 입출력 부하가 특정 게이트웨이에 집중되는 문제점을 해결할 수 있다.
When a single unit iSCSI gateway provides block data input / output services to a plurality of clients using the load distribution method in the iSCSI storage system based on the network distributed file system according to the present invention, a plurality of iSCSI gateways access the block data input / It is possible to solve the problem that the data input / output load is concentrated on the specific gateway.

도 1은 본 발명의 바람직한 실시예에 따른 iSCSI 스토리지 시스템 및 상기 스토리지 시스템을 이용한 네트워크 분산 파일 시스템 기반 iSCSI 스토리지 시스템의 개략적인 구성을 도시하는 도면이다.
도 2는 블록(Block) IO를 지원하기위한 iSCSI 불륨(Volume) 형성 절차를 개략적으로 도시하는 도면이다.
도 3은 블록 IO에서 데이터 데이터 읽기(Data Read)를 처리하는 절차를 개략적으로 도시하는 도면이다.
도 4는 블록 IO에서 데이터 쓰기(Data Write)를 처리하는 절차를 개략적으로 도시하는 도면이다.
도 5는 iSCSI 타겟의 IQN 정보 및 포탈 정보가 기록되는 절차를 개략적으로 도시하는 도면이다.
도 6은 iSCSI 게이트웨이의 부하를 분산하는 절차를 개략적으로 도시하는 도면이다.
FIG. 1 is a diagram showing a schematic configuration of an iSCSI storage system according to a preferred embodiment of the present invention and an iSCSI storage system based on a network distributed file system using the storage system.
2 is a schematic diagram illustrating an iSCSI Volume formation procedure for supporting Block IO.
Fig. 3 is a view schematically showing a procedure of processing data data read in block IO.
Fig. 4 is a view schematically showing a procedure of processing data write (Data Write) in block IO.
5 is a diagram schematically showing a procedure in which IQN information and portal information of an iSCSI target are recorded.
6 is a diagram schematically showing a procedure for distributing the load of the iSCSI gateway.

본 발명의 바람직한 실시예에 따른 iSCSI 스토리지 시스템을 이용한 네트워크 분산 파일 시스템 기반 iSCSI 스토리지 시스템에서 부하를 분산하는 방법을 첨부한 도면을 참고로 이하에서 설명한다.
A method for distributing a load in a network distributed file system based iSCSI storage system using an iSCSI storage system according to a preferred embodiment of the present invention will be described with reference to the accompanying drawings.

본 실시예에 따른 네트워크 분산 파일 시스템 기반 iSCSI 스토리지 시스템은 논리적인 iSCSI 볼륨(LUN)을 생성하고 이를 iSCSI 타겟(Target)을 통해 iSCSI 초기자(initiator)로 제공하여 블록 IO를 처리하는 스토리지 시스템이다.The network distributed file system based iSCSI storage system according to the present embodiment is a storage system that generates a logical iSCSI volume (LUN) and provides it to an iSCSI initiator through an iSCSI target to process a block IO.

또한, 본 발명의 바람직한 실시예에 따르면 스토리지 용량의 확장은 분산 파일 시스템의 노드를 증설하는 형태로 제공된다.Also, according to a preferred embodiment of the present invention, the expansion of the storage capacity is provided in the form of adding nodes of the distributed file system.

또한, 본 발명의 바람직한 실시예에 따르면 전체 입출력 대역폭의 확장은 게이트웨이 형식의 iSCSI 타겟을 증설하는 형태로 제공된다.Also, according to a preferred embodiment of the present invention, the overall input / output bandwidth expansion is provided in the form of adding an iSCSI target of a gateway type.

또한, 본 발명의 바람직한 실시예에 따르면 스토리지 가용성 확보는 2개 이상의 iSCSI 게이트웨이를 이용하며, 하나의 iSCSI 게이트웨이의 이상 발생시 타 iSCSI 게이트웨이에 자동으로 페일-오버(Fail-Over) 하는 형태로 제공된다.
According to a preferred embodiment of the present invention, more than two iSCSI gateways are used for ensuring storage availability and fail-over is automatically provided to other iSCSI gateways when an iSCSI gateway fails.

도 1은 본 발명의 바람직한 실시예에 따른 iSCSI 스토리지 시스템 및 상기 스토리지 시스템을 이용한 네트워크 분산 파일 시스템의 개략적인 구성을 도시하는 도면이다. 도 1에서 보듯이, 본 발명의 바람직한 실시예에 따른 네트워크 분산 파일 시스템은 물리적으로 분리된 대규모의 스토리지 자원을 단일 스토리지 볼륨으로 가상화하는 메타데이터 서버(M), 데이터 서버(D) 및 어플리케이션 서버(0)를 포함한다. FIG. 1 is a diagram showing a schematic configuration of an iSCSI storage system and a network distributed file system using the storage system according to a preferred embodiment of the present invention. 1, a network distributed file system according to a preferred embodiment of the present invention includes a metadata server M, a data server D, and an application server (hereinafter, referred to as " 0).

구체적으로, 메타데이터 서버(M)는 분산 파일 시스템에서 컨트롤 패스(Path) 기능을 수행한다. 또한, 메타데이터 서버(M)는 파일에서 메타정보 (파일 속성, 경로, 데이터 서버(D)상에서 데이터 조각의 경로 리스트, 복제 여부 등)을 관리한다. Specifically, the metadata server M performs a control path function in the distributed file system. In addition, the metadata server M manages meta information (file attributes, path, path list of data pieces on the data server D, whether or not to replicate) in the file.

또한, 데이터 서버(D)는 분산 파일 시스템에서 데이터 패스(Path)의 기능을 수행한다. 즉, 데이터 서버(D)는 메타데이터 서버(M)에 의해서 파일을 데이터 조각으로 분리하면, 실질적으로 분리된 데이터 조각을 분산 저장하는 기능과 분리된 데이터 조각을 분산 전달하는 기능을 수행한다.The data server D also functions as a data path in the distributed file system. That is, when the data server D separates a file into data fragments by the metadata server M, the data server D performs a function of distributing substantially separated data fragments and a function of distributing separated fragments of data.

또한, 본 발명의 바람직한 실시예에 따른 분산 파일 시스템은 상기 메타데이터 서버(M) 및 데이터 서버(D)를 블록 입출력 저장공간으로 활용하여 SCSI 명령을 iSCSI 인터페이스 기반으로 처리하는 시스템이다. The distributed file system according to the preferred embodiment of the present invention is a system for processing SCSI commands based on an iSCSI interface by utilizing the metadata server M and the data server D as block input / output storage spaces.

또한, 어플리케이션 서버(0)는 스토리지를 사용하는 서버로서, iSCSI 초기자가 형성되어 이더넷(Ethernet)을 통하여 iSCSI 게이트웨이와 연결된다.
In addition, the application server 0 is a server using storage, and an iSCSI initiator is formed and connected to the iSCSI gateway through Ethernet.

본 발명의 바람직한 실시예에 따른 iSCSI 스토리지 시스템은 네트워크 분산 파일 시스템에 기반한다. 본 실시예에 따른 확장형 iSCSI 스토리지 시스템은 물리적으로 분리된 대규모의 스토리지 자원을 단일 스토리지 볼륨으로 가상화하는 메타데이터 서버(M) 및 데이터 서버(D)를 블록 입출력 저장공간으로 활용하여 SCSI 명령을 iSCSI 인터페이스 기반으로 처리하는 시스템이다. An iSCSI storage system according to a preferred embodiment of the present invention is based on a network distributed file system. The scalable iSCSI storage system according to the present embodiment utilizes a metadata server M and a data server D, which virtualize large-scale physical storage resources as a single storage volume, as a block I / O storage space, Based system.

또한, 본 실시예에 따른 확장형 iSCSI 스토리지 시스템은 복수의 iSCSI 게이트웨이(1), iSCSI 컨트롤 서버(2) 및 iSNS 서버(3)로 구성되어, 메타데이터 서버(M) 및 데이터 서버(D) 및 어플리케이션 서버(0)와 예컨데 이더넷(ethernet)으로 연결되어 다수의 iSCSI 초기자에게 블록 입출력 서비스를 확장성있게 제공하도록 구성된다.
The scalable iSCSI storage system according to the present embodiment includes a plurality of iSCSI gateways 1, an iSCSI control server 2 and an iSNS server 3 and is provided with a metadata server M, a data server D, For example, Ethernet (ethernet) to the server (0) to provide a block input / output service to a plurality of iSCSI initiators in a scalable manner.

또한, 본 발명의 바람직한 실시예에 따르면 확장형 iSCSI 스토리지 시스템의 기반 저장소로 이용되는 메타데이터 서버(M), 데이터 서버(D)는 iSCSI 게이트웨이(1) 별로 분산 데이터 처리를 지원하고 블록 기반 스토리지 용량의 확장성을 제공하는 것이 바람직하다. 또한, iSCSI 게이트웨이(1)는 블록 데이터 입출력 서비스를 이용하는 다수의 iSCSI 초기자의 성능 요구사항을 충족하기 위해 복수로 구성된다.
According to a preferred embodiment of the present invention, the metadata server M and the data server D, which are used as a base storage of the scalable iSCSI storage system, support distributed data processing for each iSCSI gateway 1, It is desirable to provide scalability. In addition, the iSCSI gateway 1 is composed of a plurality of iSCSI initiators in order to meet performance requirements of a plurality of iSCSI initiators using block data input / output services.

본 발명의 바람직한 실시예에 따른 iSCSI 게이트웨이(1)는 각각 iSCSI 타겟 코어(Target Core; 1-1), SCSI 미들웨어(Middleware; 1-2) 및 블록 레이아웃 메니저(Block Layout Manager; 1-3)로 구성되는데, 구체적으로 다음과 같은 기능을 수행한다.The iSCSI gateway 1 according to the preferred embodiment of the present invention includes an iSCSI target core 1-1, a SCSI middleware 1-2 and a block layout manager 1-3 Specifically, the following functions are performed.

먼저, iSCSI 타겟 코어(1-1)는 이더넷 네트워크 기반의 스토리지 외부에서 요청하는 블록 데이터 입출력의 표준 인터페이스로 기능한다. 구체적으로, iSCSI 타겟 코어(1-1)는 iSCSI 타겟 관리, 네트워크 포털 관리, 타겟 포털 그룹 관리, LUN 매핑(Mapping), CHAP(Challenge Handshake Authentication Protocol) 기반 iSCSI 인증 관리, 다중 연결 방식 iSCSI 세션(Session) 관리, iSCSI PDU(Protocol Data Unit) 및 커맨드(Command) 처리 기능을 갖는다. 한편, UCS-FS상의 iSCSI 볼륨(LUN)과 타겟과의 매핑은 iSCSI 볼륨 매니저의 iSCSI 타겟 코어를 제어함으로서 이루어진다. First, the iSCSI target core 1-1 functions as a standard interface for block data input / output requested outside the Ethernet network-based storage. Specifically, the iSCSI target core 1-1 includes iSCSI target management, network portal management, target portal group management, LUN mapping, iSCSI authentication management based on Challenge Handshake Authentication Protocol (CHAP) ) Management, an iSCSI protocol data unit (PDU), and a command processing function. On the other hand, the mapping between the iSCSI volume (LUN) on the UCS-FS and the target is achieved by controlling the iSCSI target core of the iSCSI volume manager.

한편, iSCSI 인터페이스의 기능은 SCSI 명령어와 파라미터를 캡슐화 형태로 기술된 CDB를 이더넷(Ethernet) 기반의 TCP/IP 형태로 교환하기 위해서, CDB를 캡슐화하여 PDU를 생성하고, 요청 및 응답에 따른 약속된 절차에 따라 전달하는 역할만 제공하고 있다. 따라서 파일 기반 솔루션인 분산 파일 시스템에 iSCSI 인터페이스를 지원하기 위해서는 SCSI CDB를 처리하는 모듈이 필수적이다. SCSI 미들웨어(1-2)는 이러한 목적에 따라 구성된 모듈으로서 CDB를 디코딩(Decoding) 하여 해당 SCSI 명령어의 표준에 따라 해당 명령을 구분하여 처리한다. SCSI 명령은 크게 데이터 입출력 명령과 비입출력 명령으로 구분할 수 있으며, 상기 구분에 따라서 블록 레이아웃 매니저(1-3)와의 연동이 결정된다. 또한, 데이터 입출력 명령은 블록 레이아웃 매니저와의 연동이 필수적이다. 또한, SCSI 명령의 처리가 완료되면 처리된 결과를 다시 CDB 형태로 캡슐화하여 iSCSI 타겟 코어로 전달한다. Meanwhile, the iSCSI interface function encapsulates the CDB to generate a PDU in order to exchange SCSI commands and parameters encapsulated in the form of Ethernet-based TCP / IP, and transmits the promised It provides only the role of delivering according to the procedure. Therefore, in order to support the iSCSI interface to the distributed file system, a file-based solution, a module that processes SCSI CDB is essential. The SCSI middleware 1-2 decodes the CDB as a module configured according to this purpose and processes the corresponding command in accordance with the standard of the corresponding SCSI command. The SCSI command can largely be classified into a data input / output command and a non-input / output command, and the interlocking with the block layout manager 1-3 is determined according to the above-mentioned classification. The data input / output instruction is interlocked with the block layout manager. When the processing of the SCSI command is completed, the processed result is encapsulated in the CDB format and transferred to the iSCSI target core.

또한, 블록 레이아웃 매니저(1-3)는 다수의 물리적 디스크 공간에 분산된 데이터 블록 정보를 관리하는 블록이다. 분산 파일 시스템 상의 저장공간은 데이터 서버 형태로 물리적으로 분할되어 데이터 조각(Chuck 단위)으로 저장된다. 데이터 조각의 세트는 분산 파일 시스템 상에서 하나의 “파일”과 매핑이 된다. 분산 파일 시스템의 메타데이터 서버에서 관리하는 파일에 대한 메타정보는 파일 이름, 디렉토리 구조, 파일을 구성하고 있는 데이터 조각 목록 및 데이터 서버상의 위치정보를 포함한다. 확장형 iSCSI 스토리지 시스템의 iSCSI 볼륨(LUN)은 분산 파일 시스템의 저장공간에 지정된 임의의 파일 하나에 대응된다. 따라서 해당 파일과 iSCSI 타겟을 연결(LUN 매핑)하기 위해서는 iSCSI 게이트웨이 별로 자신이 서비스하는 iSCSI 타겟과 연결된 iSCSI 볼륨의 메타 정보를 관리하는 블록 레이아웃 매니저(1-3)가 필수적이다. 블록 레이아웃 매니저는 iSCSI 볼륨을 구성하고 있는 파일 조각(Chunk)의 위치, 저장단위, 개수를 필요에 따라 분산 파일 시스템의 메타데이터 서버(M)를 통해 제공받아 내부 저장소에서 관리한다. 상기 정보와 SCSI 미들웨어 측에서 전달받은 블록 입출력의 파라미터인 블록 주소 및 입출력 사이즈 정보를 매핑하여 블록 데이터 입출력을 수행하는 역할을 담당한다.
The block layout manager 1-3 is a block for managing data block information distributed in a plurality of physical disk spaces. The storage space on the distributed file system is physically divided into data servers and stored in chunks of data. The set of data fragments is mapped to a single "file" on the distributed file system. The meta information of the file managed by the metadata server of the distributed file system includes a file name, a directory structure, a list of data fragments constituting the file, and location information on the data server. The iSCSI volume (LUN) of the scalable iSCSI storage system corresponds to one file specified in the storage space of the distributed file system. Therefore, in order to link the file and the iSCSI target (LUN mapping), the block layout manager 1-3 for managing the meta information of the iSCSI volume connected to the iSCSI target that the iSCSI gateway itself is servicing is essential. The block layout manager manages the location, the storage unit, and the number of the file chunks constituting the iSCSI volume through the metadata server M of the distributed file system according to need and manages them in the internal storage. And performs block data input / output by mapping the information and the block address and input / output size information, which are parameters of the block input / output received from the SCSI middleware side.

또한, 본 발명의 바람직한 실시예에 따르면 iSCSI 컨트롤 서버(2)는 iSCSI 게이트웨이(1)의 제어 및 모니터링을 수행한다. 구체적으로, iSCSI 컨트롤 서버(2)는 분산 파일 시스템의 저장공간을 이용하여 iSCSI 볼륨을 구성하고 다수의 iSCSI 게이트웨이(1-1)를 제어하는 블록이다. Also, according to a preferred embodiment of the present invention, the iSCSI control server 2 performs control and monitoring of the iSCSI gateway 1. Specifically, the iSCSI control server 2 is a block that configures an iSCSI volume using the storage space of the distributed file system and controls a plurality of iSCSI gateways 1-1.

본 발명의 바람직한 실시예에 따르면 iSCSI 컨트롤 서버(2)는 iSCSI 볼륨 매니저(Volume Maneger; 2-1)와 iSCSI 세션 매니저(Session Maneger; 2-1)로 구성된다. According to a preferred embodiment of the present invention, the iSCSI control server 2 comprises an iSCSI volume manager 2-1 and an iSCSI session manager 2-1.

먼저, iSCSI 볼륨 매니저(2-1)는 UCS-FS의 저장공간을 이용하여 iSCSI 볼륨을 구성하고, 다수의 iSCSI 타겟 코어(1-1)를 제어한다. iSCSI 볼륨 매니저(2-1)는 UCS-FS에서 제공받은 인터페이스를 통해 iSCSI 볼륨에 해당하는 파일을 UCS-FS 상에 생성하고, iSCSI 타겟 코어(1-1)에서 제공받은 인터페이스를 통해 iSCSI 타겟의 관리 제어, 네트워크 포털 관리 제어, 타겟 포털 그룹 관리 제어, LUN 맵핑 제어, iSCSI 인증 관리 제어를 수행한다.First, the iSCSI volume manager 2-1 configures an iSCSI volume using the storage space of the UCS-FS and controls a plurality of iSCSI target cores 1-1. The iSCSI volume manager 2-1 generates a file corresponding to the iSCSI volume on the UCS-FS through the interface provided by the UCS-FS and transfers the iSCSI target via the interface provided by the iSCSI target core 1-1 Management control, network portal management control, target portal group management control, LUN mapping control, and iSCSI authentication management control.

iSCSI 세션 매니저(2-2)는 다수의 iSCSI 타겟 코어에서 개별로 동작하는 기본 세션 기능을 통합적으로 관리 및 모니터링한다. iSCSI 세션 매니저(2-2)는 표준 iSNS 서버(3)와 연동하여 각각의 iSCSI 게이트웨이의 iSCSI 타겟의 연결 정보를 갱신한다.
The iSCSI session manager 2-2 integrally manages and monitors basic session functions operating individually in a plurality of iSCSI target cores. The iSCSI session manager 2-2 updates the connection information of the iSCSI target of each iSCSI gateway by interworking with the standard iSNS server 3.

또한, iSNS 서버(3)는 현재 활성화된 iSCIS 노드와 관련된 포털, 엔터티 등 정보를 저장하는 저장소로 기능한다. 여기서 노드는 초기자(Initiator), 타겟 또는 관리 노드일 수 있다. 또한, iSNS 서버(3)는 초기자와 대상을 등록하고, 상기 초기자는 iSNS 서버(3)에서 사용가능한 대상목록을 쿼리(Query)한다. Also, the iSNS server 3 functions as a repository for storing information such as portals and entities related to the currently activated iSCSI node. Where the node may be an initiator, a target, or a managed node. Also, the iSNS server 3 registers an initiator and an object, and the initiator queries a list of available objects in the iSNS server 3.

또한, iSNS 서버(3)는 현재 네트워크에서 사용가능한 iSCSI 장치 및 관련 정보의 동적 데이터베이스로 기능하며, 네트워크의 iSCSI 초기자에 iSCSI 검색 기능을 제공한다. 또한, iSNS 서버(3)는 검색 도메인 서비스를 더 제공할 수 있다. 즉, 관리자가 검색 도메인이라고 하는 하나 이상의 그룹에 iSCSI 노드 및 포탈을 할당할 수 있도록 한다. 또한, 검색 도메인은 iSCSI 초기자가 적어도 하나 이상의 검색 도메인을 공유하는 해당 iSCSI 대상만 검색할 수 있는 영역 지정 기능을 제공한다.
In addition, the iSNS server 3 functions as a dynamic database of iSCSI devices and related information available in the current network, and provides an iSCSI search function to the iSCSI initiator of the network. In addition, the iSNS server 3 can further provide a search domain service. That is, an administrator can assign an iSCSI node and a portal to one or more groups called search domains. In addition, the search domain provides an area specifying function that enables the iSCSI initiator to search only the corresponding iSCSI target sharing at least one search domain.

블록 block IOIO To 지원하기위한To support iSCSIiSCSI 볼륨 형성 절차 Volume formation procedure

블록 IO를 지원하기위한 iSCSI 볼륨 형성 절차를 도 2를 참고로 이하에서 상세하게 설명한다. The iSCSI volume formation procedure for supporting the block IO will be described in detail below with reference to FIG.

먼저, iSCSI 관리 서버(2)는 메타데이터 서버(M)에게 iSCSI 볼륨 생성을 요청한다.(iSCSI 볼륨 이름/크기) First, the iSCSI management server 2 requests the metadata server M to create an iSCSI volume. (ISCSI volume name / size)

다음으로, 메타데이터 서버(M)는 생성할 iSCSI 볼륨의 ID를 배정하고 네트워크상에 분산되어 있는 데이터 서버(D)에 저장될 청크(Chunk)를 크기만큼 배정(청크 ID, 청크 위치, 청크 존재여부)한다. Next, the metadata server M allocates the ID of the iSCSI volume to be created and assigns a chunk to be stored in the data server D distributed on the network to the size (chunk ID, chunk position, Or not).

다음으로, 메타데이터 서버(M)는 iSCSI 볼륨 ID 정보를 iSCSI 관리 서버(2)에 반환하면, 반환된 iSCSI 볼륨 ID 정보는 해당 iSCSI 볼륨과 연관된 블록 레이아웃 매니저(1-3)에 전달됨으로서 블록 IO를 지원하기 위한 iSCSI 볼륨 형성 절차는 완료된다.
Next, when the metadata server M returns the iSCSI volume ID information to the iSCSI management server 2, the returned iSCSI volume ID information is transmitted to the block layout manager 1-3 associated with the iSCSI volume, The iSCSI volume creation procedure to support < RTI ID = 0.0 >

블록 block IOIO : 데이터 읽기 처리과정  : Data reading process

블록 IO에서 데이터 읽기를 처리하는 절차를 도 3을 참고로 이하에서 설명한다.The procedure for processing data reading in the block IO will be described below with reference to Fig.

먼저, 어플리케이션 서버(0)는 iSCSI 표준 방식으로 iSCSI 게이트웨이(1)에 SCSI 블록 데이터 읽기를 요청한다. First, the application server 0 requests the iSCSI gateway 1 to read SCSI block data in the iSCSI standard system.

그러면, iSCSI 타겟 코어(1-1)는 iSCSI PDU를 분석한 후 분해하여 iSCSI 미들웨어(1-2)에게 SCSI CDB를 전달한다.Then, the iSCSI target core 1-1 analyzes the iSCSI PDU, decomposes it, and transfers the SCSI CDB to the iSCSI middleware 1-2.

이어서, iSCSI 미들웨어(1-2)는 SCSI 명령을 분석하여 데이터 읽기(Read)할 블록의 LBA(Logical Block Address) 및 읽을 데이터의 크기 정보를 블록 레이아웃 매니저(1-3)에 전달한다. Then, the iSCSI middleware 1-2 analyzes the SCSI command and transfers the logical block address (LBA) of the block to be read and the size information of the data to be read to the block layout manager 1-3.

이어서, 블록 레이아웃 매니저(1-3)는 LBA 주소을 이용하여 해당 iSCSI 볼륨을 구성하는 청크 ID 및 오프셋(Offset)을 산출하고 읽을 데이터의 크기를 메타데이터 서버(M)에 전달한다.Then, the block layout manager 1-3 calculates the chunk ID and offset constituting the iSCSI volume using the LBA address, and transmits the size of the data to be read to the metadata server M. [

이어서, 메타데이터 서버(M)에게 전달된 청크 ID, 오프셋, 읽을 데이터의 크기 정보를 기반으로 네트워크에 분산된 데이터 서버(D)영역의 관련된 모든 청크 파일 위치 리스트를 ID 순서대로 정렬하여 블록 레이아웃 매니저(1-3)에게 전달한다.Then, based on the chunk ID, the offset, and the size information of the data to be read, which are transmitted to the metadata server M, all the related chunk file location lists of the data server (D) (1-3).

이어서, 블록 레이아웃 매니저(1-3)는 청크 파일 위치 리스트를 기반으로 첫번째 청크 파일의 오프셋부터 마지막 청크 파일까지 읽을 데이터의 크기만큼 데이터를 데이터 읽기하여 블록 레이아웃 매니저(1-3)에 위치한 버퍼에 데이터를 기록한다.Then, the block layout manager 1-3 reads the data from the offset of the first chunk file to the last chunk file based on the chunk file location list and reads the data by the size of the data to be stored in the buffer located in the block layout manager 1-3 Record the data.

이어서, 블록 레이아웃 매니저(1-3)는 버퍼의 메모리상의 위치를 iSCSI 미들웨어(1-2)에 전달하고, iSCSI 미들웨어(1-2)는 해당 버퍼 내용을 포함하는 SCSI CDB를 생성한다.Then, the block layout manager 1-3 transfers the location of the buffer on the memory to the iSCSI middleware 1-2, and the iSCSI middleware 1-2 generates the SCSI CDB containing the contents of the buffer.

이어서, 생성된 SCSI CDB는 iSCSI 타겟 코어(1-1)에게 전달되고, iSCSI 타겟 코어(1-1)는 SCSI CDB를 포함하는 iSCSI PDU를 생성한 후, 생성된 iSCSI PDU를 iSCSI 표준 방식으로 어플리케이션 서버(0)에 전달한다.
Then, the generated SCSI CDB is delivered to the iSCSI target core 1-1, the iSCSI target core 1-1 generates an iSCSI PDU including the SCSI CDB, and then transmits the generated iSCSI PDU to the application To the server (0).

블록 block IOIO : 데이터 쓰기( : Write data ( WriteWrite ) 처리과정 ) Processing

블록 IO에서 데이터 데이터 쓰기(Data Write)를 처리하는 절차를 도 4를 참고로 이하에서 설명한다.A procedure for processing data write in the block IO will be described below with reference to FIG.

먼저, 어플리케이션 서버(0)는 iSCSI 표준 방식으로 iSCSI 게이트웨이(1)에 SCSI 블록 데이터 쓰기를 요청한다. First, the application server 0 requests the iSCSI gateway 1 to write SCSI block data in the iSCSI standard manner.

그러면, iSCSI 타겟 코어(1-1)는 iSCSI PDU를 분석한 후 분해하여 iSCSI 미들웨어(1-2)에게 SCSI CDB를 전달한다.Then, the iSCSI target core 1-1 analyzes the iSCSI PDU, decomposes it, and transfers the SCSI CDB to the iSCSI middleware 1-2.

이어서, iSCSI 미들웨어(1-2)는 SCSI 명령을 분석하여 데이터 쓰기할 Block의 LBA(Logical Block Address) 및 데이터 쓰기의 크기 정보를 블록 레이아웃 매니저(1-3)에 전달한다. Then, the iSCSI middleware 1-2 analyzes the SCSI command and transfers the logical block address (LBA) of the block to be written and the size information of the data writing to the block layout manager 1-3.

이어서, 블록 레이아웃 매니저(1-3)는 LBA 주소을 이용하여 해당 iSCSI 볼륨을 구성하는 청크 ID 및 오프셋을 산출하고 데이터 쓰기의 크기를 메타데이터 서버(M)에 전달한다.Then, the block layout manager 1-3 calculates the chunk ID and offset constituting the corresponding iSCSI volume by using the LBA address, and transfers the size of the data write to the metadata server M. [

이어서, 메타데이터 서버(M)에 전달된 청크 ID, 오프셋, 데이터 쓰기의 크기 정보를 기반으로 네트워크에 분산된 데이터 서버(D)영역의 관련된 모든 청크 파일의 존재 여부를 파악하고, 청크 파일이 없는 경우 배정된 위치에 청크를 생성한 뒤, 해당 청크 위치 리스트를 ID 순서대로 정렬하여 블록 레이아웃 매니저(1-3)에게 전달한다.Then, based on the chunk ID, offset, and size of data write information transmitted to the metadata server M, it is determined whether all relevant chunk files in the data server (D) area distributed on the network exist. If there is no chunk file A chunk is generated at the assigned position, and the chunk position list is sorted in the ID order and transmitted to the block layout manager 1-3.

이어서, 블록 레이아웃 매니저(1-3)는 청크 파일 위치 리스트를 기반으로 첫번째 청크 파일의 오프셋부터 마지막 청크 파일까지 데이터 쓰기의 크기만큼 블록 레이아웃 매니저(1-3)에 위치한 버퍼에 데이터를 기록한다.Then, the block layout manager 1-3 writes data to the buffer located in the block layout manager 1-3 by the amount of data writing from the offset of the first chunk file to the last chunk file based on the chunk file location list.

이어서, 블록 레이아웃 매니저(1-3)는 데이터 쓰기(write)가 완료된 정보를 iSCSI 미들웨어(1-2)에 전달하고, iSCSI 미들웨어(1-2)는 데이터 쓰기(write)가 완료된 정보를 포함하는 SCSI CDB를 생성한다.Subsequently, the block layout manager 1-3 transmits the information on which data writing has been completed to the iSCSI middleware 1-2, and the iSCSI middleware 1-2 includes information on the completion of data writing Create a SCSI CDB.

이어서, 생성된 SCSI CDB는 iSCSI 타겟 코어(1-1)에게 전달되고, iSCSI 타겟 코어(1-1)는 SCSI CDB를 포함하는 iSCSI PDU를 생성한 후, 생성된 iSCSI PDU를 iSCSI 표준 방식으로 어플리케이션 서버(0)에 전달한다.
Then, the generated SCSI CDB is delivered to the iSCSI target core 1-1, the iSCSI target core 1-1 generates an iSCSI PDU including the SCSI CDB, and then transmits the generated iSCSI PDU to the application To the server (0).

표준 Standard iSNSiSNS 서버(3)에 해당  Applies to server (3) iSCSIiSCSI 타겟의Target IQNIQN 정보 및 포탈 정보가 기록되는 절차 Procedure for recording information and portal information

iSCSI 타겟의 IQN 정보 및 포탈 정보가 기록되는 절차를 도 5를 참고로 설명한다.The procedure for recording the IQN information and the portal information of the iSCSI target will be described with reference to FIG.

우선, iSCSI 볼륨 매니저(2-1)는 메타 데이터 서버(M)를 통해 iSCSI 볼륨을 파일 기반으로 생성한다. 이어서, iSCSI 볼륨 매니저(2-1)는 생성한 iSCSI 볼륨에 대해 iSCSI 컨트롤 서버(2)에 위치한 DB에 iSCSI 볼륨 이름 정보 및 크기 정보를 저장한다.First, the iSCSI volume manager 2-1 creates an iSCSI volume on a file basis via the metadata server M. Then, the iSCSI volume manager 2-1 stores iSCSI volume name information and size information in the DB located in the iSCSI control server 2 with respect to the created iSCSI volume.

iSCSI 볼륨 매너저(2-1)는 다수의 iSCSI 게이트웨이 타겟 코어(1-1)를 통해 iSCSI 타겟 생성을 위한 제어를 할 수 있다. iSCSI 볼륨 매니저(2-1)는 사용자 유저인터페이스(UI; User Interface)를 통해 iSCSI 게이트웨이 ID, IQN 정보, TPG(Target Portal Group; 타겟 프로토콜 그룹), LUN, 포탈(Portal) 및 ACL 정보 등을 입력 받아서 해당 iSCSI 게이트웨이(1)에 iSCSI 타겟을 생성한다. iSCSI 타겟이 생성되면 iSCSI 불륨 매니저(2-1)는 iSCSI 컨트롤서버(2)에 위치한 DB에 iSCSI 게이트웨이 ID, IQN 정보, TPG, LUN, 포탈 및 ACL 정보 등을 기록한다.The iSCSI volume manager 2-1 can control for iSCSI target creation through a plurality of iSCSI gateway target cores 1-1. The iSCSI volume manager 2-1 inputs iSCSI gateway ID, IQN information, TPG (Target Portal Group), LUN, Portal, and ACL information through a user interface (UI) And creates an iSCSI target in the iSCSI gateway 1. When an iSCSI target is created, the iSCSI volume manager (2-1) records the iSCSI gateway ID, IQN information, TPG, LUN, portal, and ACL information in the DB located in the iSCSI control server (2).

이어서, iSCSI 볼륨 매니저(2-1)는 앞서 생성된 iSCSI 타겟의 LUN에 iSCSI 볼륨을 매핑(연결)하고, iSCSI 컨트롤 서버(2)의 DB에 iSCSI 볼륨 사용 정보를 기록한다. 상기 과정이 완료되면 iSCSI 볼륨 매니저(2-1)는 iSCSI 세션 매니저(2-2)에 이를 통보하고, iSCSI 세션 매니저(2-2)는 표준 iSNS 서버(3)에 해당 iSCSI 타겟의 IQN 정보 및 포탈 정보를 기록한다.
Then, the iSCSI volume manager 2-1 maps the iSCSI volume to the LUN of the iSCSI target created previously, and records the iSCSI volume usage information in the DB of the iSCSI control server 2. When the above process is completed, the iSCSI volume manager 2-1 notifies the iSCSI session manager 2-2 of this, and the iSCSI session manager 2-2 transmits the IQN information of the iSCSI target to the standard iSNS server 3, Record the portal information.

네트워크 분산 파일 시스템 기반 Network Distributed File System based iSCSIiSCSI 스토리지storage 시스템에서 부하를 분산하는 절차 Procedure for distributing load in system

다음으로, iSCSI 게이트웨이의 부하를 분산하는 절차를 도 6을 참고로 설명한다.Next, a procedure for distributing the load of the iSCSI gateway will be described with reference to FIG.

어플리케이션 서버(0)는 iSCSI 초기자를 통해 iSNS 서버(3)에 접속하여 iSCSI 타겟을 탐색하여 IQN 정보 및 포탈 정보를 기반으로 해당 iSCSI 타겟에 로그인한다. 상기 과정은 다수의 iSCSI 게이트웨이 및 어플리케이션 서버(0)에서 반복적으로 수행될 수 있다.The application server (0) accesses the iSNS server (3) through the iSCSI initiator, searches for the iSCSI target, and logs in the iSCSI target based on the IQN information and the portal information. The above process can be repeatedly performed in a plurality of iSCSI gateways and application servers (0).

블록 레이아웃 매니저(1-3)는 특정 iSCSI 초기자가 특정 iSCSI 게이트웨이(1)에 속한 특정 iSCSI 타겟의 iSCSI 블록 읽기(Read)와 쓰기(Write) 요청을 처리할 때 읽기 및 쓰기 유형 정보, 데이터 크기 정보 및 LUN 정보를 기록한다. The block layout manager 1-3 determines whether the specific iSCSI initiator is capable of reading and writing type information, data size information (i. E., Data size information) when processing iSCSI block read and write requests of a specific iSCSI target belonging to a specific iSCSI gateway And LUN information.

또한, 블록 레이아웃 매니저(1-3)는 "보고 주기"까지 읽기 및 쓰기 유형 및 LUN 별 데이터 크기 정보를 누적한다. 이어서, "보고 주기"에 블록 레이아웃 매니저(1-3)는 iSCSI 세션 매니저(2-2)에게 읽기 및 쓰기 유형 정보, 데이터 크기 정보 및 LUN 정보를 전달하고, 전달이 성공되면 블록 레이아웃 매니저(1-3)는 저장된 정보를 초기화한다. In addition, the block layout manager 1-3 accumulates the read and write type and data size information per LUN up to the "reporting period ". Then, in the "reporting cycle ", the block layout manager 1-3 delivers the read and write type information, the data size information and the LUN information to the iSCSI session manager 2-2. If the transfer is successful, the block layout manager 1 -3) initializes the stored information.

또한, 상기 정보를 전달받은 iSCSI 세션 매니저(2-2)는 iSCSI 컨트롤 서버(2)의 DB에 읽기 및 쓰기 유형 정보, 데이터 크기 정보 및 LUN 정보를 이용해 읽기 및 쓰기 유형 및 LUN 별 데이터 크기 정보를 누적한다. 또한, 누적된 결과는 설정된 "재평가 주기" 마다 "재평가 값"으로 나눈다.In addition, the iSCSI session manager 2-2 having received the information transmits read and write type and data size information per LUN to the DB of the iSCSI control server 2 using read and write type information, data size information and LUN information Accumulate. Also, the cumulative result is divided by the "revaluation value" for each "reevaluation period" set.

또한, iSCSI 세션 매니저(2-2)는 누적된 정보를 iSCSI 게이트웨이 별로 집계한다. 예컨데, iSCSI 세션 매니저(2-2)는 iSCSI 게이트웨이에 속한 iSCSI 타겟의 LUN 들의 읽기 및 쓰기 별 데이터 크기 정보의 개별 총합으로 집계할 수 있다.In addition, the iSCSI session manager 2-2 aggregates the accumulated information for each iSCSI gateway. For example, the iSCSI session manager 2 - 2 can aggregate the sum of the data size information for each of the LUNs of the iSCSI target belonging to the iSCSI gateway.

또한, iSCSI 세션 매니저(2-2)는 iSCSI 게이트웨이 별로 집계된 정보에서 읽기 및 쓰기 별 데이터 크기 정보에 임의로 설정된 "읽기 가중치" 및 "쓰기 가중치"를 곱해서 합산한 수치를 기반으로 iSCSI 게이트웨이 순위 인덱스를 갱신한다. 이 때, "1"은 가장 부하가 높은 iSCSI 게이트웨이를 나타내며 1씩 증가하면서 상대적으로 부하가 낮은 iSCSI 게이트웨이를 나타낸다.In addition, the iSCSI session manager 2-2 calculates the iSCSI gateway rank index based on the sum of the read weight and the write weight multiplied by arbitrarily set data size information for read and write in the information aggregated for each iSCSI gateway Update. In this case, "1" represents the iSCSI gateway with the highest load and represents iSCSI gateway with relatively low load increasing by one.

또한, iSCSI 세션 매니저(2-2)는 각 iSCSI 게이트웨이에 iSCSI 초기자에 의해 로그인되지 않은 iSCSI 타겟을 감시한다. 비활성화된 iSCSI 타겟이 감지되면 해당 iSCSI 타겟의 iSCSI 게이트웨이 순위 인덱스를 확인한다. iSCSI 게이트웨이 순위 인덱스가 관리자에 의해 설정된 "리밸런싱 인덱스 기준값" 보다 낮을 경우에 감지된 iSCSI 타겟이 부하 분산 대상으로 선정된다. 또한, iSCSI 게이트웨이에 iSCSI 타겟이 하나라도 존재하지 않을 경우에도 iSCSI 게이트웨이 순위 인덱스에는 포함된다.
In addition, the iSCSI session manager 2-2 monitors each iSCSI gateway for iSCSI targets not logged in by the iSCSI initiator. If a deactivated iSCSI target is detected, check the iSCSI gateway rank index for that iSCSI target. If the iSCSI gateway rank index is lower than the "rebalancing index reference value" set by the administrator, the detected iSCSI target is selected as the load balancing target. Also, if there is no iSCSI target in the iSCSI gateway, it is included in the iSCSI gateway ranking index.

예컨데, 부하 분석 대상으로 선정된 iSCSI 타겟은 다음 조건 순서에 따라 관리될 수 있다.For example, an iSCSI target selected as a load analysis target can be managed according to the following conditional order.

조건 1 : 해당 iSCSI 타겟이 해당 iSCSI 게이트웨이에 유일할 경우 -> 부하 분석을 종료Condition 1: If the iSCSI target is unique to the iSCSI gateway -> End load analysis

조건 2 : 로그아웃(logout)된 iSCSI 타겟의 게이트웨이가 인덱스 기준값 이하인 경우 -> 부하분석 종료Condition 2: When the gateway of the logout iSCSI target is below the index reference value -> Load analysis ends

조건 3 : 해당 iSCSI 타겟을 iSCSI 게이트웨이 순위 인덱스가 가장 높은 iSCSI 게이트웨이, 즉 가장 부하가 적은 게이트웨이(대상 iSCSI Gateway)에 가상으로 해당 iSCSI 타겟을 소속시키고 임시 iSCSI 게이트웨이 순위 인덱스를 갱신 -> “대상 iSCSI 게이트웨이”의 iSCSI 게이트웨이 순위 인덱스 값이 "리밸런싱 인덱스 기준값" 보다 클 경우에는 iSCSI 타겟을 “대상 iSCSI 게이트웨이”로 이동할 것을 명령Condition 3: The corresponding iSCSI target belongs to the iSCSI gateway with the highest iSCSI gateway rank index, that is, the least loaded gateway (target iSCSI gateway), and the temporary iSCSI gateway rank index is renewed. -> "Target iSCSI gateway Quot; is greater than the "rebalancing index reference value ", the command to move the iSCSI target to the " target iSCSI gateway "

조건 4 : 조건 2에서 “대상 iSCSI 게이트웨이”의 iSCSI 게이트웨이 순위 인덱스 값이 "리밸런싱 인덱스 기준값"보다 작은 경우 부하 분석을 종료
Condition 4: If the iSCSI gateway rank index value of the "target iSCSI gateway" in condition 2 is smaller than the "rebalancing index reference value", load analysis ends

또한, 상기 조건 2의 경우에 iSCSI 세션 매니저(2-2)는 iSCSI 볼륨 매니저(2-1)를 통해 DB에 저장된 해당 iSCSI 타겟의 정보를 이용해 “대상 iSCSI 게이트웨이”에 iSCSI 타겟을 복제하고, iSNS 서버(3)의 포탈 정보를 갱신한다. 또한, iSNS 서버(3)의 포탈 정보를 갱신이 완료되면 기존 iSCSI 게이트웨이에서 iSCSI 타겟을 삭제한다.
In the case of the above condition 2, the iSCSI session manager 2-2 replicates the iSCSI target to the " target iSCSI gateway " using the information of the corresponding iSCSI target stored in the DB through the iSCSI volume manager 2-1, The portal information of the server 3 is updated. When the update of the portal information of the iSNS server 3 is completed, the iSCSI target deletes the iSCSI target from the existing iSCSI gateway.

이상으로 본 발명의 바람직한 실시예에 따른 네트워크 분산 파일 시스템 기반 iSCSI 스토리지 시스템에서 부하를 분산하는 방법을 상세하게 설명하였다. 하지만, 본 발명이 속한 기술분야에서 통상의 지식을 가진 자는 상기 구성에 대한 다양한 수정 및 변형이 가능하다는 것을 이해할 것이다. 따라서, 본 발명의 범위는 오직 뒤에서 설명할 특허청구범위에 의해서만 한정된다.The method for distributing the load in the network distributed file system based iSCSI storage system according to the preferred embodiment of the present invention has been described in detail. However, it will be understood by those skilled in the art that various modifications and variations can be made in the present invention. Accordingly, the scope of the present invention is limited only by the claims that follow.

Claims (15)

메타데이터 서버(M), 데이터 서버(D) 및 어플리케이션 서버(0)를 포함하여 구동되는 네트워크 분산 파일 시스템 기반 iSCSI 스토리지 시스템의 부하 분산 방법으로서,
상기 iSCSI 스토리지 시스템은 상기 메타데이터 서버(M) 및 데이터 서버(D)를 블록 입출력 저장공간으로 활용하여 SCSI(Small Computers System Interface) 명령을 iSCSI(internet Small Computers System Interface) 인터페이스 기반으로 처리하기 위하여 복수의 iSCSI 게이트웨이(Gateway), iSCSI 컨트롤 서버(Control Server) 및 iSNS 서버를 포함하는 iSCSI 스토리지 시스템을 더 포함하고,
상기 iSCSI 게이트웨이는 네트워크 기반의 스토리지 외부에서 요청하는 블록 데이터 입출력의 표준 인터페이스로 기능하는 SCSI 타겟 코어(Target Core)와, 분산 파일 시스템에 iSCSI 인터페이스를 지원하기 위한 SCSI 미들웨어와, 다수의 물리적 디스크 공간에 분산된 데이터 블록 정보를 관리하는 블록 레이아웃 매니저(Block Layout Manager)를 포함하고, 상기 컨트롤 서버는 분산 파일 시스템의 저장공간을 이용하여 iSCSI 볼륨을 구성하고 다수의 iSCSI 게이트웨이를 제어하는 iSCSI 볼륨 매니저와 복수의 iSCSI 타겟 코어의 세션 기능을 관리하는 iSCSI 세션 매니저를 포함하는 시스템에 의하여 구동되며,
상기 블록 레이아웃 매니저는 특정 iSCSI 초기자가 특정 iSCSI 게이트웨이에 속한 특정 iSCSI 타겟의 iSCSI 블록 읽기(Read)와 쓰기(Write) 요청을 처리할 때 읽기 및 쓰기 유형 정보, 데이터 크기 정보 및 LUN 정보 중 적어도 하나를 기록하는 제 1 단계;
상기 블록 레이아웃 매니저는 상기 iSCSI 세션 매니저에 읽기 및 쓰기 유형 정보, 데이터 크기 정보 및 LUN 정보 중 적어도 하나의 정보를 전달하는 제 2 단계;
상기 iSCSI 세션 매니저는 상기 정보를 iSCSI 게이트웨이 별로 집계하는 제 3 단계;
상기 iSCSI 세션 매니저는 상기 iSCSI 게이트웨이 별로 집계된 정보에서 iSCSI 게이트웨이 순위 인덱스를 갱신하는 제 4 단계;
상기 iSCSI 세션 매니저는 상기 iSCSI 게이트웨이 별로 집계된 정보로부터 iSCSI 타겟의 iSCSI 게이트웨이를 변경하는 제 5 단계를 포함하는 것을 특징으로 하는 네트워크 분산 파일 시스템 기반 iSCSI 스토리지 시스템의 부하 분산 방법.
A method for load balancing a network distributed file system based iSCSI storage system driven by a metadata server (M), a data server (D), and an application server (0)
The iSCSI storage system utilizes the metadata server M and the data server D as a block I / O storage space to process SCSI (Small Computers System Interface) commands based on iSCSI (Internet Small Computer System Interface) Further comprising an iSCSI storage system including an iSCSI gateway, an iSCSI control server, and an iSNS server,
The iSCSI gateway includes a SCSI target core serving as a standard interface for block data input / output requested outside the network-based storage, SCSI middleware for supporting the iSCSI interface in the distributed file system, And a block layout manager (Block Layout Manager) for managing distributed data block information, wherein the control server comprises an iSCSI volume manager for configuring an iSCSI volume using a storage space of a distributed file system and controlling a plurality of iSCSI gateways, Lt; RTI ID = 0.0 > iSCSI < / RTI > session manager,
The block layout manager may include at least one of read and write type information, data size information, and LUN information when a specific iSCSI initiator processes iSCSI block read and write requests of a specific iSCSI target belonging to a specific iSCSI gateway A first step of recording;
A second step of transferring at least one of read and write type information, data size information and LUN information to the iSCSI session manager;
A third step of the iSCSI session manager aggregating the information for each iSCSI gateway;
The iSCSI session manager updating an iSCSI gateway rank index from the information aggregated for each iSCSI gateway;
Wherein the iSCSI session manager includes a fifth step of changing an iSCSI gateway of an iSCSI target from the information aggregated for each iSCSI gateway.
청구항 1에 있어서, 상기 방법은 상기 제 1 단계에 앞서서 iSCSI 컨트롤 서버가 iSNS 서버에 특정 iSCSI 타겟의 IQN 정보 및 포탈 정보를 기록하는 사전 단계를 더 포함하는 것을 특징으로 하는 네트워크 분산 파일 시스템 기반 iSCSI 스토리지 시스템의 부하 분산 방법.2. The method of claim 1, wherein the iSCSI control server further comprises a pre-step of recording IQN information and portal information of a specific iSCSI target to the iSNS server prior to the first step. A method of load balancing the system. 청구항 2에 있어서, 상기 사전 단계는,
상기 iSCSI 볼륨 매니저는 메타 데이터 서버(M)를 통해 iSCSI 볼륨을 파일 기반으로 생성하는 단계, 상기 iSCSI 볼륨 매니저는 생성한 iSCSI 볼륨에 대해 iSCSI 컨트롤 서버에 위치한 DB에 iSCSI 볼륨 이름 정보 및 크기 정보를 저장하는 단계, 상기 iSCSI 볼륨 매너저는 iSCSI 게이트웨이 ID, IQN 정보, TPG(Target Portal Group; 타겟 프로토콜 그룹), LUN, 포탈(Portal) 및 ACL 정보 중 적어도 하나의 정보로부터 특정 iSCSI 게이트웨이에 iSCSI 타겟을 생성하는 단계, 상기 iSCSI 불륨 매니저는 iSCSI 컨트롤서버에 위치한 DB에 iSCSI 게이트웨이 ID, IQN 정보, TPG, LUN, 포탈 및 ACL 정보 중 적어도 하나의 정보를 기록하는 단계, 상기 iSCSI 볼륨 매니저는 상기 iSCSI 타겟의 LUN에 iSCSI 볼륨을 매핑(연결)하고, iSCSI 컨트롤 서버의 DB에 iSCSI 볼륨 사용 정보를 기록하는 단계, 및 iSCSI 볼륨 매니저는 iSCSI 세션 매니저에 상기 iSCSI 볼륨 사용 정보를 통보하는 단계를 더 포함하는 것을 특징으로 하는 네트워크 분산 파일 시스템 기반 iSCSI 스토리지 시스템의 부하 분산 방법.
The method according to claim 2,
The iSCSI volume manager creates an iSCSI volume on a file basis through a metadata server M, and the iSCSI volume manager stores iSCSI volume name information and size information in a DB located in the iSCSI control server for the generated iSCSI volume , The iSCSI volume manager generates an iSCSI target from a specific iSCSI gateway from at least one of iSCSI gateway ID, IQN information, TPG (Target Portal Group), LUN, Portal and ACL information Wherein the iSCSI volume manager records at least one of iSCSI gateway ID, IQN information, TPG, LUN, portal and ACL information to a DB located in an iSCSI control server, mapping (connecting) the iSCSI volume, recording the iSCSI volume usage information to the DB of the iSCSI control server, and iSCSI volume manager performing the iSCSI session Load balancing method for network distributed file system based iSCSI storage system according to claim 1, further comprising the step of notification of the iSCSI volume information using the manager.
청구항 1 내지 청구항 3 중 어느 한 항에 있어서, 상기 제 2 단계에서 상기 정보의 전달은 미리 선택된 보고 주기 별로 반복적으로 이루어지는 것을 특징으로 하는 네트워크 분산 파일 시스템 기반 iSCSI 스토리지 시스템의 부하 분산 방법.The method according to any one of claims 1 to 3, wherein in the second step, the transfer of the information is repeatedly performed for each pre-selected reporting period. 청구항 1 내지 청구항 3 중 어느 한 항에 있어서, 상기 제 2 단계에서 상기 정보의 전달이 성공되면 상기 블록 레이아웃 매니저는 저장된 정보를 초기화하는 단계를 더 포함하는 것을 특징으로 하는 네트워크 분산 파일 시스템 기반 iSCSI 스토리지 시스템의 부하 분산 방법.The method as claimed in any one of claims 1 to 3, wherein, in the second step, if the transfer of the information is successful, the block layout manager initializes the stored information. A method of load balancing the system. 청구항 1 내지 청구항 3 중 어느 한 항에 있어서, 상기 제 2 단계에서 상기 블록 레이아웃 매니저는 특정 보고 주기까지 읽기 및 쓰기 유형 정보, 데이터 크기 정보 및 LUN 정보 중 적어도 하나의 정보를 누적하는 단계를 더 포함하는 것을 특징으로 하는 네트워크 분산 파일 시스템 기반 iSCSI 스토리지 시스템의 부하 분산 방법.The method as claimed in any one of claims 1 to 3, wherein, in the second step, the block layout manager further includes accumulating at least one of read and write type information, data size information, and LUN information until a specific reporting period And a load balancing method of a network distributed file system based iSCSI storage system. 청구항 1 내지 청구항 3 중 어느 한 항에 있어서, 상기 제 4 단계에서 상기 iSCSI 세션 매니저는 읽기 및 쓰기 별 데이터 크기 정보에 임의로 설정된 "읽기 가중치" 및 "쓰기 가중치"를 곱해서 합산한 수치를 기반으로 iSCSI 게이트웨이 순위 인덱스를 갱신하는 것을 특징으로 하는 네트워크 분산 파일 시스템 기반 iSCSI 스토리지 시스템의 부하 분산 방법.The method as claimed in any one of claims 1 to 3, wherein, in the fourth step, the iSCSI session manager multiplies data size information for each read and write by "read weight" and "write weight" And updating the gateway rank index. 청구항 1 내지 청구항 3 중 어느 한 항에 있어서, 상기 iSCSI 세션 매니저는 각 iSCSI 게이트웨이에 iSCSI 초기자에 의해 로그인되지 않은 iSCSI 타겟을 감시하는 제 6단계를 더 포함하는 것을 특징으로 하는 네트워크 분산 파일 시스템 기반 iSCSI 스토리지 시스템의 부하 분산 방법.The method of any one of claims 1 to 3, wherein the iSCSI session manager further comprises a sixth step of monitoring an iSCSI target not logged in by an iSCSI initiator to each iSCSI gateway How to load balance iSCSI storage systems. 청구항 8에 있어서, 상기 iSCSI 세션 매니저는 비활성화된 iSCSI 타겟이 감지되면 해당 iSCSI 타겟의 iSCSI 게이트웨이 순위 인덱스를 확인하는 단계, 및 iSCSI 게이트웨이 순위 인덱스가 관리자에 의해 설정된 "리밸런싱 인덱스 기준값" 보다 낮을 경우에 감지된 iSCSI 타겟이 부하 분산 대상으로 선정하는 단계를 더 포함하는 것을 특징으로 하는 네트워크 분산 파일 시스템 기반 iSCSI 스토리지 시스템의 부하 분산 방법.9. The method of claim 8, wherein the iSCSI session manager is configured to: determine an iSCSI gateway rank index of a corresponding iSCSI target if a deactivated iSCSI target is detected; and if the iSCSI gateway rank index is lower than a "rebalancing index benchmark & And selecting the detected iSCSI target as a load balancing target. ≪ Desc / Clms Page number 20 > 청구항 1 내지 청구항 3 중 어느 한 항에 있어서, iSCSI 세션 매니저는 iSCSI 볼륨 매니저를 통해 DB에 저장된 해당 iSCSI 타겟의 정보를 이용해 대상 iSCSI 게이트웨이에 iSCSI 타겟을 복제하고, iSNS 서버의 포탈 정보를 갱신하는 단계를 더 포함하는 것을 특징으로 하는 네트워크 분산 파일 시스템 기반 iSCSI 스토리지 시스템의 부하 분산 방법.The method as claimed in any one of claims 1 to 3, wherein the iSCSI session manager replicates the iSCSI target to the target iSCSI gateway using the information of the corresponding iSCSI target stored in the DB through the iSCSI volume manager and updates the portal information of the iSNS server The method comprising the steps of: (a) determining whether the storage system is an iSCSI storage system; 청구항 1 내지 청구항 3 중 어느 한 항에 있어서, 상기 방법은 해당 iSCSI 타겟이 해당 iSCSI 게이트웨이에 유일하거나, 로그아웃(logout)된 iSCSI 타겟의 게이트웨이가 인덱스 기준값 이하인 경우 부하 분석을 종료하는 것을 특징으로 하는 네트워크 분산 파일 시스템 기반 iSCSI 스토리지 시스템의 부하 분산 방법.The method of any one of claims 1 to 3, wherein the method ends load analysis when the iSCSI target is unique to the iSCSI gateway or the gateway of the iSCSI target whose logout is less than the index reference value A method for load balancing an iSCSI storage system based on a network distributed file system. 청구항 1 내지 청구항 3 중 어느 한 항에 있어서, 상기 방법은 해당 iSCSI 타겟을 iSCSI 게이트웨이 순위 인덱스가 가장 높은 iSCSI 게이트웨이, 즉 가장 부하가 적은 게이트웨이(대상 iSCSI Gateway)에 가상으로 해당 iSCSI 타겟을 소속시키고 임시 iSCSI 게이트웨이 순위 인덱스를 갱신하고, 대상 iSCSI 게이트웨이의 iSCSI 게이트웨이 순위 인덱스 값이 리밸런싱 인덱스 기준값 보다 클 경우에는 iSCSI 타겟을 대상 iSCSI 게이트웨이로 이동할 것을 명령하는 것을 특징으로 하는 네트워크 분산 파일 시스템 기반 iSCSI 스토리지 시스템의 부하 분산 방법.The method as claimed in any one of claims 1 to 3, wherein the method comprises: iSCSI target having a highest iSCSI gateway rank index belonging to the iSCSI gateway (i. E., The target iSCSI gateway) and instructs the iSCSI gateway to move the iSCSI target to the target iSCSI gateway when the iSCSI gateway index value of the target iSCSI gateway is larger than the rebalancing index reference value. Load balancing method. 청구항 1 내지 청구항 3 중 어느 한 항에 있어서, 상기 방법은 대상 iSCSI 게이트웨이의 iSCSI 게이트웨이 순위 인덱스 값이 리밸런싱 인덱스 기준값 보다 작은 경우 부하 분석을 종료하는 것을 특징으로 하는 네트워크 분산 파일 시스템 기반 iSCSI 스토리지 시스템의 부하 분산 방법.The method as claimed in any one of claims 1 to 3, wherein the load analysis is ended when the iSCSI gateway index value of the target iSCSI gateway is smaller than the rebalancing index reference value. Load balancing method. 청구항 1 내지 청구항 3 중 어느 한 항에 있어서, 상기 방법은 iSCSI 세션 매니저가 iSCSI 볼륨 매니저를 통해 DB에 저장된 해당 iSCSI 타겟의 정보를 이용해 대상 iSCSI 게이트웨이에 iSCSI 타겟을 복제하고, iSNS 서버의 포탈 정보를 갱신하는 단계 및 기존 iSCSI 게이트웨이에서 iSCSI 타겟을 삭제하는 단계를 더 포함하는 것을 특징으로 하는 네트워크 분산 파일 시스템 기반 iSCSI 스토리지 시스템의 부하 분산 방법.The method as claimed in any one of claims 1 to 3, wherein the iSCSI session manager replicates the iSCSI target to the target iSCSI gateway using the information of the corresponding iSCSI target stored in the DB through the iSCSI volume manager, And deleting the iSCSI target from the existing iSCSI gateway. ≪ Desc / Clms Page number 20 > 삭제delete
KR1020130145285A 2013-11-27 2013-11-27 Method and System for load balancing of iSCSI storage system used network distributed file system and method KR101531564B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130145285A KR101531564B1 (en) 2013-11-27 2013-11-27 Method and System for load balancing of iSCSI storage system used network distributed file system and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130145285A KR101531564B1 (en) 2013-11-27 2013-11-27 Method and System for load balancing of iSCSI storage system used network distributed file system and method

Publications (2)

Publication Number Publication Date
KR20150061316A KR20150061316A (en) 2015-06-04
KR101531564B1 true KR101531564B1 (en) 2015-06-26

Family

ID=53499330

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130145285A KR101531564B1 (en) 2013-11-27 2013-11-27 Method and System for load balancing of iSCSI storage system used network distributed file system and method

Country Status (1)

Country Link
KR (1) KR101531564B1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107888517B (en) * 2016-09-30 2020-08-14 华为技术有限公司 Method and equipment for domain planning of host
CN113489784A (en) * 2021-07-05 2021-10-08 深圳市杉岩数据技术有限公司 Distributed storage asymmetric logic unit access multipath implementation method and system
CN114500577A (en) * 2021-12-27 2022-05-13 天翼云科技有限公司 Data access system and data access method
CN114265702B (en) * 2022-03-02 2022-05-31 苏州浪潮智能科技有限公司 iSCSI service load balancing method, device, equipment and medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003308243A (en) * 2002-04-17 2003-10-31 Digion Inc Storage network system
KR100723879B1 (en) * 2005-12-08 2007-05-31 한국전자통신연구원 Hardware acceleration apparatus for iscsi target system using toe and method for handling read/write command using the apparatus
KR20080005009A (en) * 2006-07-07 2008-01-10 한국전자통신연구원 Data acceleration apparatus for iscsi and iscsi storage system using the same
KR20100069566A (en) * 2008-12-15 2010-06-24 엘에스아이 코포레이션 Scaling of small computer system interface input output (scsi i/o) referrals

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003308243A (en) * 2002-04-17 2003-10-31 Digion Inc Storage network system
KR100723879B1 (en) * 2005-12-08 2007-05-31 한국전자통신연구원 Hardware acceleration apparatus for iscsi target system using toe and method for handling read/write command using the apparatus
KR20080005009A (en) * 2006-07-07 2008-01-10 한국전자통신연구원 Data acceleration apparatus for iscsi and iscsi storage system using the same
KR20100069566A (en) * 2008-12-15 2010-06-24 엘에스아이 코포레이션 Scaling of small computer system interface input output (scsi i/o) referrals

Also Published As

Publication number Publication date
KR20150061316A (en) 2015-06-04

Similar Documents

Publication Publication Date Title
JP6479020B2 (en) Hierarchical chunking of objects in a distributed storage system
US20200019516A1 (en) Primary Data Storage System with Staged Deduplication
US8504797B2 (en) Method and apparatus for managing thin provisioning volume by using file storage system
US9342529B2 (en) Directory-level referral method for parallel NFS with multiple metadata servers
US8793373B2 (en) Network system and method for operating the same
US10210167B1 (en) Multi-level page caching for distributed object store
WO2014183708A1 (en) Method and system for realizing block storage of distributed file system
US11036393B2 (en) Migrating data between volumes using virtual copy operation
Yamato Cloud storage application area of HDD–SSD hybrid storage, distributed storage, and HDD storage
US8135918B1 (en) Data de-duplication for iSCSI
US8671445B1 (en) Method and system for transferring replicated information from source storage to destination storage
US10503693B1 (en) Method and system for parallel file operation in distributed data storage system with mixed types of storage media
JP2014529814A (en) Data maintenance methods
CN104050248A (en) File storage system and storage method
KR101531564B1 (en) Method and System for load balancing of iSCSI storage system used network distributed file system and method
US11431798B2 (en) Data storage system
US11914894B2 (en) Using scheduling tags in host compute commands to manage host compute task execution by a storage device in a storage system
US20150106468A1 (en) Storage system and data access method
US20050193021A1 (en) Method and apparatus for unified storage of data for storage area network systems and network attached storage systems
US10970250B2 (en) System, data management method, and file server
US10248659B2 (en) Consistent hashing configurations supporting multi-site replication
KR101589122B1 (en) Method and System for recovery of iSCSI storage system used network distributed file system
KR101470857B1 (en) Network distributed file system and method using iSCSI storage system
US9626377B1 (en) Cluster file system with metadata server for controlling movement of data between storage tiers
KR101694299B1 (en) Method and metadata server for managing storage device of cloud storage

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee