KR102200934B1 - 스토리지 시스템 및 그것의 동작 방법 - Google Patents
스토리지 시스템 및 그것의 동작 방법 Download PDFInfo
- Publication number
- KR102200934B1 KR102200934B1 KR1020170136040A KR20170136040A KR102200934B1 KR 102200934 B1 KR102200934 B1 KR 102200934B1 KR 1020170136040 A KR1020170136040 A KR 1020170136040A KR 20170136040 A KR20170136040 A KR 20170136040A KR 102200934 B1 KR102200934 B1 KR 102200934B1
- Authority
- KR
- South Korea
- Prior art keywords
- discovery
- storage device
- server
- pod
- storage devices
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols 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]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0653—Monitoring storage devices or systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
-
- H04L61/2015—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
- H04L61/5014—Internet protocol [IP] addresses using dynamic host configuration protocol [DHCP] or bootstrap protocol [BOOTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
본 발명의 하나의 실시 예에 따른 스토리지 시스템은 각각이 동적 호스트 구성 프로토콜(DHCP) 클라이언트(client)를 동작시키도록 구성되는 복수의 스토리지 디바이스들, 그리고 호스트 컴퓨터로 발견 로그 페이지(discovery log page)를 제공하도록 구성되는 발견 서버를 포함하고, 상기 복수의 스토리지 디바이스들 각각에서 동작하는 발견 로그 업데이터(DLU; discovery log updater)는 대응하는 스토리지 디바이스의 발견 로그 엔트리(discovery log entry)를 상기 발견 서버에 제공하고, 상기 발견 로그 페이지는 하나 이상의 발견 로그 엔트리들을 포함하는 상기 복수의 스토리지 디바이스들의 발견 정보(discovery information)를 포함하고, 상기 하나 이상의 발견 로그 엔트리들 각각은 상기 호스트 컴퓨터와 상기 대응하는 스토리지 디바이스 사이의 통신을 구축하기 위해 할당된 대응하는 스토리지 디바이스의 주소를 포함하고, 상기 호스트 컴퓨터는 상기 발견 로그 페이지에 포함된 타겟 스토리지 디바이스(target storage device)의 상기 발견 로그 엔트리를 이용하여 상기 타겟 스토리지 디바이스와 연결을 구축하고 입출력 또는 컴퓨트(compute) 작업부하를 상기 타겟 스토리지 디바이스로 제공한다.
Description
본 발명은 분산 스토리지 디바이스(distributed storage device)들에 관한 것으로, 좀 더 상세하게는, 하이퍼스케일 데이터센터(hyperscale datacenter) 환경에서 분산 스토리지 디바이스들의 자동 발견을 제공하는 스토리지 시스템 및 그것의 동작 방법에 관한 것이다.
데이터센터에 있는 각각의 랙(rack)은 컴퓨트(compute) 디바이스들과 스토리지(storage) 디바이스들을 위해 슬레드(sled)들 그리고/또는 트레이(tray)들의 조합을 포함한다. 하이퍼스케일 데이터센터는 여러 개의 최적화된 성능의 데이터센터들(PODs; performance optimized datacenters)을 포함할 수 있고, 각각의 POD는 복수의 랙들과 수많은 컴퓨트(compute) 디바이스들 그리고/또는 스토리지 디바이스들을 포함할 수 있다.
불휘발성 메모리 익스프레스(NVMe; Non-volatile memory express)는 호스트(host) 소프트웨어가 PCIe(peripheral component interconnect express) 버스(bus)를 통해 불휘발성 메모리 서브시스템(예를 들어, 솔리드 스테이트 드라이브(SSD; solid-state drive))과 통신을 하기 위한 레지스터 레벨 인터페이스(register-level interface)를 정의한다. NVMeoF(NVMe over fabrics)(또는 줄여서 NVMf)는 이더넷(Ethernet), 파이버 채널(Fibre Channel), 인피니밴드(InfiniBand), 전송 제어 프로토콜(TCP) 네트워크, 그리고 다른 네트워크 패브릭들(fabrics)과 같은 넓은 범위의 스토리지 네트워킹 패브릭들에서 NVMe 블록(block) 스토리지 프로토콜을 지원하는 일반적인 아키텍쳐(architecture)를 정의한다.
NVMeoF 기반의 스토리지 시스템에서, NVMeoF와 호환 가능한 SSD 또는 이더넷 SSD로 지칭되는 각각의 스토리지 디바이스는 서브시스템 NQN(NVMe Qualified Name), IP(Internet Protocol) 주소, 포트 ID, 그리고/또는 제어기 ID에 의해 식별된다. 각각의 POD 매니저는 작업부하들을 할당하고 스케쥴링하기 위해 패브릭들(예를 들어, 이더넷)에 있는 스토리지 디바이스들의 상태 및 이용 가능성을 알 필요가 있다. 스토리지 디바이스들중 일부는 유지를 위해 작동이 안될 수 있고, 작업부하들은 이러한 스토리지 디바이스들에 맡겨지지 않을 수 있다. 또한, 하이퍼스케일 데이터센터 환경에서 패브릭들에 분산된 수많은 스토리지 디바이스로부터의 발견 정보의 수집, 유지, 그리고 업데이트는 단순한 작업이 아니다.
본 발명은 상술된 기술적 과제를 해결하기 위한 것으로써, 본 발명은 하이퍼스케일 데이터센터 환경에서의 이더넷 스토리지의 자동 발견을 제공하기 위한 스토리지 시스템 및 그것의 동작 방법을 제공할 수 있다.
본 발명의 하나의 실시 예에 따른 스토리지 시스템은 각각이 동적 호스트 구성 프로토콜(DHCP) 클라이언트(client)를 동작시키도록 구성되는 복수의 스토리지 디바이스들, 그리고 호스트 컴퓨터로 발견 로그 페이지(discovery log page)를 제공하도록 구성되는 발견 서버를 포함하고, 상기 복수의 스토리지 디바이스들 각각에서 동작하는 발견 로그 업데이터(DLU; discovery log updater)는 대응하는 스토리지 디바이스의 발견 로그 엔트리(discovery log entry)를 상기 발견 서버에 제공하고, 상기 발견 로그 페이지는 하나 이상의 발견 로그 엔트리들을 포함하는 상기 복수의 스토리지 디바이스들의 발견 정보(discovery information)를 포함하고, 상기 하나 이상의 발견 로그 엔트리들 각각은 상기 호스트 컴퓨터와 상기 대응하는 스토리지 디바이스 사이의 통신을 구축하기 위해 할당된 대응하는 스토리지 디바이스의 주소를 포함하고, 상기 호스트 컴퓨터는 상기 발견 로그 페이지에 포함된 타겟 스토리지 디바이스(target storage device)의 상기 발견 로그 엔트리를 이용하여 상기 타겟 스토리지 디바이스와 연결을 구축하고 입출력 또는 컴퓨트(compute) 작업부하를 상기 타겟 스토리지 디바이스로 제공한다.
본 발명의 다른 실시 예에 따른 스토리지 시스템의 동작 방법은 스토리지 디바이스에 있는 동적 호스트 구성 프로토콜(DHCP) 클라이언트를 동작시키는 단계, 상기 스토리지 디바이스의 발견 로그 엔트리를 발견 서버에 제공하는 단계, 상기 발견 서버로부터 호스트 컴퓨터로 발견 로그 페이지를 제공하는 단계, 상기 발견 로그 페이지는 하나 이상의 발견 로그 엔트리들을 포함하는 복수의 스토리지 디바이스들의 발견 정보를 포함하고, 상기 하나 이상의 발견 로그 엔트리들 각각은 상기 호스트 컴퓨터와 대응하는 스토리지 디바이스 사이의 통신을 구축하기 위해 상기 대응하는 스토리지 디바이스의 할당된 주소를 포함하고, 상기 발견 로그 페이지에 포함된 타겟 스토리지 디바이스의 상기 발견 로그 엔트리를 이용하여 상기 호스트 컴퓨터와 상기 타겟 스토리지 디바이스 사이의 연결을 구축하는 단계; 그리고 상기 호스트 컴퓨터로부터 상기 타겟 스토리지 디바이스로 입출력 또는 컴퓨트 작업부하들을 제공하는 단계를 포함한다.
이벤트들의 구현 및 조합의 다양한 새로운 세부사항들을 포함하는 상기 특징들 및 다른 선호되는 특징들은 첨부된 도면을 참조하여 더 상세하게 설명될 것이고 청구항들에 기술될 것이다. 본 명세서에서 설명된 특정 시스템들 및 방법들은 오직 설명을 위한 방식에 의해 나타나며, 본 발명이 이에 제한되는 것은 아니다. 당업자에 의해 자명하듯이, 본 명세서에서 설명된 원리들 및 특징들은 본 발명의 사상에서 벗어나지 않고 다양하고 많은 실시 예들에 적용될 수 있다.
본 발명의 스토리지 시스템 및 그것의 동작 방법은 하이퍼스케일 데이터센터 환경에서 수많은 스토리지 디바이스들을 수용할 수 있는 스케일러블한 솔루션을 제공할 수 있다.
도 1은 본 발명의 하나의 실시 예에 따른 분산 스토리지 디바이스 시스템 예시의 블록도이다.
도 2는 본 발명의 하나의 실시 예에 따른 발견 로그 페이지(discovery log page) 예시의 데이터 구조를 보여준다.
도 3은 본 발명의 하나의 실시 예에 따른 발견 로그 페이지에 포함된 로그 엔트리(log entry) 예시의 데이터 구조를 보여준다.
도 4는 본 발명의 하나의 실시 예에 따른 발견 로그 정보를 덧붙이기 위한 예시 흐름도이다.
도 5는 본 발명의 하나의 실시 예에 따른 호스트 컴퓨터와 타겟 스토리지 디바이스 사이에 통신을 수행하기 위한 예시 흐름도이다.
도 6은 본 발명의 하나의 실시 예에 다른 자동 발견의 예시 프로세스를 나타낸다.
도 2는 본 발명의 하나의 실시 예에 따른 발견 로그 페이지(discovery log page) 예시의 데이터 구조를 보여준다.
도 3은 본 발명의 하나의 실시 예에 따른 발견 로그 페이지에 포함된 로그 엔트리(log entry) 예시의 데이터 구조를 보여준다.
도 4는 본 발명의 하나의 실시 예에 따른 발견 로그 정보를 덧붙이기 위한 예시 흐름도이다.
도 5는 본 발명의 하나의 실시 예에 따른 호스트 컴퓨터와 타겟 스토리지 디바이스 사이에 통신을 수행하기 위한 예시 흐름도이다.
도 6은 본 발명의 하나의 실시 예에 다른 자동 발견의 예시 프로세스를 나타낸다.
본 명세서에서 나타난 각각의 특징들 및 개시들은 하이퍼스케일 데이터센터 환경에서 이더넷 스토리지의 자동 발견을 제공하는 스토리지 시스템 및 그것의 동작 방법을 제공하기 위하여 독립적으로 또는 다른 특징들 및 개시들과 함께 활용될 수 있다. 이와 같은 수많은 추가 특징들 및 개시들을 활용하는 대표적 예시들은, 독립적으로 그리고 결합하여, 첨부된 도면들을 참조하여 더 상세하게 설명된다. 이러한 상세한 설명은 단지 본 명세서에 개시된 예시들을 실행하기 위한 세부적인 내용을 당업자에게 개시하기 위한 것이고 청구 범위를 제한하는 것은 아니다. 따라서, 상세한 설명에서 개시된 특징들의 조합들은 넓은 의미에서 개시들을 실행하기 위해 필요한 것은 아니며, 대신에 특별히 본 명세서에서 개시된 대표적인 예시들을 설명하기 위해 개시된다.
이하에서는, 오직 설명하기 위한 목적으로, 본 발명의 완전한 이해를 제공하기 위한 구체적인 명명법이 기술된다. 그러나, 본 발명의 개시들을 실행하기 위해 당업자에게 이러한 구체적인 세부사항들이 필요한 것이 아님은 자명할 것이다.
본 명세서에서 상세한 설명의 몇몇 부분들은 알고리즘 및 컴퓨터 메모리 안에서의 데이터 비트들에 대한 동작들의 상징적 표현들에 관하여 나타낸다. 이러한 알고리즘의 설명들과 표현들은 다른 분야의 통상의 기술자들에게 연구의 요지를 효과적으로 전달하기 위해 데이터 프로세싱 분야에 있는 통상의 기술자들에 의해 사용된다. 여기서 알고리즘은 일반적으로 원하는 결과를 이끄는 단계들의 일관성 있는 순서로 이해된다. 단계들은 물리량의 물리적 조작들을 필요로 한다. 일반적으로, 반드시 필요한 것은 아니지만, 이러한 물리량들은 저장되고, 전달되고, 결합되고, 비교되는 등의 조작될 수 있는 전기 또는 자기 신호들의 형태를 갖는다. 이것은 때때로 이러한 신호들을 비트들, 값들, 요소들, 심볼(symbol)들, 글씨들, 용어들, 숫자들 등으로써 지칭하기 위한 일반적인 용법이라는 이유에서 편리하다.
그러나, 이러한 모든 용어들과 유사한 용어들은 적절한 물리량들과 연관되고 단지 이러한 물리량에 적용되는 편리한 라벨(label)들인 것을 유념해야 한다. 이하의 내용과 명백하게 다른 내용이 구체적으로 기술되지 않는다면, 명세서 전반에 걸쳐, "프로세싱", "컴퓨팅", "계산하기", "결정하기", "표시하기" 등과 같은 용어들을 활용하는 부분들은 컴퓨터 시스템 또는 유사 전자 컴퓨팅 장치의 프로세스들과 조치를 가리키는 것으로 이해된다. 컴퓨터 시스템 또는 유사 전자 컴퓨팅 장치는 컴퓨터 시스템의 레지스터(register)들과 메모리들에서 물리(전기)량으로 나타나는 데이터를 컴퓨터 시스템 메모리들 또는 레지스터들 또는 다른 정보 기억, 전송 또는 디스플레이 장치들에서 물리량으로 유사하게 나타나는 다른 데이터로 조작하거나 변형한다.
또한, 대표적인 예시들의 다양한 특징들과 종속항들은 본 발명의 추가적인 유용한 실시 예들을 제공하기 위해 구체적이고 명확하게 열거되지 않는 방법으로 결합될 수 있다. 또한, 청구된 발명의 사상을 제한하려는 목적뿐만 아니라, 최초 개시의 목적을 위해 모든 값의 범위들 또는 개체 그룹들의 표시들은 가능한 모든 중간 값 또는 중간 개체를 나타낸다. 또한, 도면들에 도시된 구성들의 면적들과 모양들은 본 발명을 어떻게 구현하는지를 이해하기 위해 도움을 줄 수 있도록 디자인될 수 있지만, 예시들에 도시된 면적들과 모양들에 한정되는 것은 아니다.
본 발명은 복수의 데이터 스토리지 디바이스들을 포함하는 분산 데이터 스토리지 시스템을 설명한다. 본 발명의 분산 데이터 스토리지 시스템은 복수의 데이터 스토리지 디바이스들의 동적 발견 정보를 제공, 업데이트, 그리고 유지하기 위한 동적 호스트 구성 프로토콜(DHCP; dynamic host configuration protocol) 서비스를 이용한다. 분산 데이터 스토리지 시스템의 서브시스템들 사이에서 통신을 위해 지원되는 전송 프로토콜의 예시는 NVMeoF 프로토콜이고, 패브릭은 이더넷이다. 서브시스템들은 하나 이상의 컴퓨트 노드들(예를 들어, 원격의 호스트 컴퓨터들 또는 계산하는 노드들)과 복수의 스토리지 디바이스들(예를 들어, 이더넷 SSD들)을 포함한다.
발견 제어기에 의해 제공되는 발견 로그 페이지(discovery log page)는 발견 로그 엔트리들(discovery log entries)을 포함할 수 있다. 발견 로그 페이지에 포함된 각각의 발견 로그 엔트리는 호스트 컴퓨터가 NVMe 전송 프로토콜을 통해 서브시스템으로 연결하기 위해 필요한 정보를 명시한다. 예를 들어, 발견 로그 엔트리는 서브시스템의 네임스페이스(namespace) 또는 다른 발견 서비스에 대한 의뢰(referral)를 드러내는 서브시스템을 명시한다. NVMeoF 사양에 따르면, 최대 의뢰 깊이는 8 레벨들 또는 그 이하일 수 있다.
도 1은 본 발명의 하나의 실시 예에 따른 분산 스토리지 디바이스 시스템 예시의 블록도이다. 분산 스토리지 시스템(100)은 호스트 컴퓨터(110), 동적 호스트 구성 프로토콜(DHCP) 서버(130), 발견 서버(150), 스토리지 디바이스(160), 형성된 네트워크를 통해 호스트 컴퓨터(110), DHCP 서버(130), 발견 서버(150), 그리고 스토리지 디바이스(160) 사이의 연결을 제공하는 패브릭(120)을 포함한다. 패브릭(120)의 예는 이더넷이다.
호스트 컴퓨터(110)는 분산 스토리지 시스템(100)의 수많은 호스트 컴퓨터들 중 하나를 나타낼 수 있고, 스토리지 디바이스(160)는 분산 스토리지 시스템(100)의 수많은 스토리지 디바이스들 중 하나를 나타낼 수 있다. 본 발명의 하나의 실시 예에 따르면, 호스트 컴퓨터(110)는 스토리지 디바이스들에 작업부하를 주거나 단순히 스토리지 디바이스(160)를 포함하는 분산 스토리지 시스템(100)의 스토리지 디바이스들에 저장된 데이터에 대한 읽기/쓰기 접근을 수행할 수 있는 분산 스토리지 시스템(100)의 컴퓨트 노드를 가리킨다.
스토리지 디바이스(160)는 스토리지 디바이스 제어기(161), 포트(162), DHCP 클라이언트(163), 솔리드스테이트드라이버(SSD)와 같은 데이터 스토리지(164), 그리고 발견 로그 갱신기(DLU)(165)를 포함한다. 본 발명의 하나의 실시 예에서, DLU(165)는 패브릭 전송 프로토콜 및 RESTful API 또는 GraphQL 요청을 사용하는 포트를 사용하여 발견 서버(150)의 발견 로그 엔트리들(152)에 스토리지 디바이스(160)의 발견 로그 엔트리를 업데이트 하기 위한 스토리지 디바이스(160)에서 동작하는 서비스이다. 예를 들어, DLU(165)는 발견 서버(150)의 발견 로그 엔트리들(152)에서 스토리지 디바이스(160)의 발견 로그 엔트리를 업데이트 하기 위해 TCP/IP 또는 UDP/IP와 TCP/UDP 포트를 사용할 수 있다. DHCP 서버(130)는 요청하는 DHCP 클라이언트에 동적 또는 영구 임대 IP 주소를 제공하는 분산 스토리지 시스템(100)의 서브시스템이다. 예를 들어, 스토리지 디바이스(160)의 DHCP 클라이언트(163)는 DHCP 서버(130)로 요청(126)을 보내고, DHCP 서버(130)는 요청(126)에 응답하여 DHCP 클라이언트(163)에 IP 주소(동적 IP 주소 또는 영구 IP 주소)를 할당한다.
발견 서버(150)는 발견 서버(150)로부터 발견 로그 정보를 획득하도록 구성되는 요청하는 호스트 컴퓨터에 발견 서비스를 제공한다. 발견 서버(150)는 본 명세서에서 개시된 내용과 특별히 관련되지 않은 NVMeoF 발견 서버 사양에서 설명된 대로 다른 구성 요소들뿐만 아니라 발견 제어기(151) 및 발견 로그 엔트리들(152)을 포함한다. 발견 제어기(151)의 IP 주소 또는 전송 주소는 호스트 컴퓨터(110)를 포함하는 분산 스토리지 시스템(100)의 하나 이상의 호스트 컴퓨터들에 노출된다. 또한, 호스트들은 발견 서비스에 대한 연결 명령에서 잘 알려진 발견 서비스 NQN(예를 들어, nqn.2014-08.org.nvmexpress.dicovery)를 사용할 수 있다.
호스트 컴퓨터(110)는 분산 스토리지 시스템(100) 내에서 이용 가능한 하나 이상의 스토리지 디바이스들에 연결하기위해 필요한 정보를 찾기 위해 발견 서버(150)의 발견 서비스를 이용할 수 있다. 호스트 컴퓨터(110)는 몇몇 방법으로 초기 발견 정보를 획득할 수 있다. 예를 들어, 발견 서버(150)의 IP 주소가 없는 새롭게 추가된 호스트 컴퓨터는 로컬 호스트 구성 파일(local host configuration file) 또는 호스트 컴퓨터의 운영 시스템(OS)의 하이퍼바이저(hypervisor), 또는 호스트 컴퓨터에 알려진 다른 서브시스템으로부터 초기 발견 정보를 획득할 수 있다. 호스트 컴퓨터(110)는 발견 서비스에 대한 연결 명령에 있는 발견 서비스 NQN(예를 들어, nqn.2014-08.org.nvmexpress.dicovery) 주소를 사용할 수 있다. 발견 서비스로 연결하기 위해 필요한 NVMe 전송 정보를 획득하기 위해 호스트 컴퓨터(110)가 사용하는 발견 방법은 사용되는 패브릭 프로토콜에 기초한다. 초기 발견 서비스 정보는 발견 서버(150)의 IP 주소 또는 발견 서버(150)에 대한 정보를 가지는 다른 서브시스템을 포함한다.
발견 서버(150)의 아이덴티티(indentity)가 알려진다면(예를 들어, 발견 서버(150)의 IP 주소), 호스트 컴퓨터(110)는 필요에 따라 발견 정보를 획득하기 위해 발견 서버(150)로 발견 로그 요청(121)(예를 들어, NVMeoF 사양에 따른 로그 페이지 획득 요청)을 보낸다. 이에 응답하여, 발견 서버(150)는 하나 이상의 발견 로그 엔트리들(152)을 포함하는 발견 로그 페이지(122)를 제공한다. 발견 로그 페이지(122)에 포함된 각각의 발견 로그 엔트리는 호스트 컴퓨터(110)가 대응하는 하나 이상의 스토리지 디바이스(들)(160)로 연결하기 위해 필요한 정보를 명시한다. 예를 들어, 각 엔트리는 대응하는 스토리지 디바이스(들)(160)의 하나 이상의 식별자들 및 스토리지 디바이스(들)(160)로 연결하기 위해 지원되는 전송 프로토콜 정보를 포함한다. 발견 로그 엔트리들(152)은 복수의 전송 프로토콜들 및 주소 타입들을 지원할 수 있다.
본 발명의 하나의 실시 예에 따르면, 발견 서버(150)는 호스트 컴퓨터(110)로 가장 최근에 업데이트된 발견 로그 엔트리들(152)을 자발적으로 전송할 수 있다. 예를 들어, 발견 서버(150)는 호스트 컴퓨터들의 리스트를 보관하고, 발견 서버는 한 가지 경우에 POD/POD 매니저를 담당할 수 있고 하나 이상의 발견 로그 엔트리들이 업데이트되는 대로 리스트에 있는 호스트 컴퓨터들로 업데이트된 발견 로그 페이지(122)를 전송할 수 있다(또는, 미리 정해진 간격(예를 들어, 매일, 매주)으로 전송). 이러한 경우, 발견 로그 페이지(122)는 오직 업데이트된 발견 로그 엔트리들을 포함하는 저장된 발견 로그 엔트리들(152)의 부분집합을 포함할 수 있다.
발견 로그 엔트리 및 발견 로그 페이지(122)에서 식별된 스토리지 디바이스(160)에 대응하는 전송 타입에 기초하여, 호스트 컴퓨터(110)는 타겟 스토리지 디바이스(160)의 포트 주소(123)를 식별할 수 있고 표시된 지원 전송 타입 및 전송 프로토콜을 사용하는 포트 주소(123)를 이용하여 타겟 스토리지 디바이스(160)와의 통신 경로를 구축할 수 있다. 호스트와 타겟 스토리지 디바이스 사이의 연결을 초기화 하기 위한 모든 필요 정보는 발견 로그 페이지(122)에서 전달된다. 스토리지 디바이스(160)의 스토리지 디바이스 제어기(161) 및 호스트 컴퓨터(110)는 구축된 포트(162)를 사용하여 서로 통신할 수 있다.
스토리지 디바이스(160)에서 동작하는 DHCP 클라이언트(163)는 DHCP 서버(130)로 요청을 보내고, DHCP 서버(130)는 요청하는 DHCP 클라이언트(163)로 IP 주소(또는 대응하는 패브릭에서의 IP 주소에 대응하는 유사 주소)를 할당한다. DLU(165)는 각 타겟 스토리지 디바이스들에서 동작하거나 타겟 스토리지 디바이스들의 그룹에 대해 작동한다. 예를 들어, 섀시(chassis)/랙에 있는 스토리지 디바이스들(160) 전부 또는 일부에 대해, 하나 또는 몇몇의 DHCP 클라이언트들(163)이 사용될 수 있다. 유사하게, 하나 또는 몇몇의 DLU들(165)은 하나의 스토리지 디바이스(160) 또는 섀시/랙에 있는 스토리지 디바이스들(160)의 그룹에 대한 로그들을 업데이트할 수 있다. DHCP 및 DLU 서비스들은 하나 또는 몇몇의 스토리지 디바이스들(160), 또는 일반적인 목적의 중앙 처리 장치(CPU), 또는 섀시/랙에 있는 베이스보드 관리 제어기(BMC; baseboard management controller)에서 동작할 수 있다. DHCP 클라이언트(163) 또는 DLU(165)는 스토리지 디바이스 제어기(161)의 할당된 IP 주소를 포함하는 발견 로그 엔트리(124)를 발견 서버(150)에 전송할 수 있다. 본 발명의 하나의 실시 예에 다르면, DHCP 서버(130) 및 발견 서버(150)는 같은 서버에 배치된다. 본 발명의 몇몇 실시 예에서는, DHCP 서버(130)는 발견 서버(150)와 다른 분산 스토리지 시스템(100) 외부의 다른 시스템이다.
발견 서버(150)는 RESTful API 또는 GraphQL 요청을 사용하는 타겟 스토리지 디바이스들의 하나 이상의 DLU들(165)로부터 수신된 하나 이상의 발견 로그 엔트리들(152)을 포함하는 발견 로그 정보를 수집하고 업데이트한다. 발견 서버(150)는 NVMeoF 로그 획득 페이지(Get Log Page) 요청에 대한 응답으로써 요청하는 호스트 컴퓨터(110)에 발견 로그 페이지를 제공한다. DHCP 클라이언트에 의해 할당된 IP 주소를 사용하는 타겟 스토리지 디바이스들의 각각 또는 그룹에서 동작하는 DLU에 의한 발견 정보의 자동 업데이트는 본 발명의 분산 스토리지 시스템에 속하는 타겟 스토리지 디바이스로 연결하기 위해 필요한 가장 최근에 업데이트된 발견 정보를 가지고 요청하는 호스트 컴퓨터에 끊김 없는 발견 서비스를 제공할 수 있다.
새로운 스토리지 디바이스들은 추가될 수 있고 몇몇의 스토리지 디바이스들은 새로운 스토리지 디바이스들의 추가, 기존 스토리지 디바이스들의 교체 또는 수명완료로 인하여 데이터센터 환경에서 일상적인 운영상 프로세스의 한 부분으로서 멈출 수 있다. 임대 중인 스토리지 디바이스들(160)의 각각의 DHCP 클라이언트(163)는 자신의 현재 정보를 업데이트할 수 있으므로, DHCP 서버(130)는 최신식 발견 로그 정보를 유지할 수 있다. 각각의 스토리지 디바이스들(160)에서 동작하는 얇은 DHCP 클라이언트(163)에 의한 발견 로그 정보의 자동 업데이트 기법을 사용하여, 본 발명의 분산 스토리지 시스템(100)은 하이퍼스케일 데이터센터 환경에서 수많은 스토리지 디바이스들을 수용할 수 있는 스케일러블한(scalable) 솔루션을 제공할 수 있다.
도 2는 본 발명의 하나의 실시 예에 따른 발견 로그 페이지(discovery log page) 예시의 데이터 구조를 보여준다. 도 2에 도시된 발견 로그 페이지(200)는 제너레이션 카운터(generation counter), 레코드(record)들의 개수, 레코드 포맷(format), 하나 이상의 발견 엔트리들(300)을 포함하는, 그러나 이에 제한되지 않는발견 정보와 관련된 다양한 파라미터(parameter)들을 포함한다. 도 3은 본 발명의 하나의 실시 예에 따른 도 2의 발견 로그 페이지(200)에 포함된 로그 엔트리 예시의 데이터 구조를 보여준다. 로그 페이지 엔트리(300)는 전송 타입(예를 들어, 원격 직접 기억 접근 장치(RDMA, remote direct memory access), 파이버 채널, TCP 네트워크), 주소 패밀리(예를 들어, IPv4, IPv6, IB, FC), 포트 ID, 서브시스템 타입, 전송 요구사항, 제어기 ID, 관리자의 최대 SQ 사이즈(admin max SQ size), 전송 서비스 식별자, NVM 서브시스템 NQN, 전송 주소(스토리지 디바이스의 IP 주소), 그리고 전송 특정 주소 부분타입을 포함하는, 그러나 이에 제한되지 않는 특정 로그 엔트리와 관련된 다양한 파라미터들을 포함할 수 있다. 도 2에 도시된 발견 로그 페이지(200)는 하나 이상의 로그 엔트리들(300)을 포함할 수 있다.
호스트 컴퓨터는 하나 이상의 발견 로그 페이지들을 수신할 수 있다. 이러한 경우, 호스트 컴퓨터는 발견 로그 페이지들의 변경 히스토리(revision history)를 확인하고, 발견 로그 정보에 변경이 있는지 여부를 판별한다. 본 발명의 하나의 실시 예에 따르면, 호스트 컴퓨터는 하나 이상의 발견 서버들로부터 복수의 발견 로그 페이지들을 수신할 수 있다. 호스트 컴퓨터는 특정 순서(예를 들어, 증가하는 로그 페이지 오프셋 값들을 가지는)로 수신된 발견 로그 페이지들을 읽을 수 있고 제너레이션 카운터를 셀 수 있다. 제너레이션 카운터는 0h 값에서 시작하는 발견 정보의 버전(version)을 나타낸다. 발견 로그에서의 각각의 변경에 대해 제너레이션 카운터는 하나씩 증가된다. 최대 카운트가 초과되면, 제너레이션 카운터는 0h의 초기 값으로 돌아간다. 제너레이션 카운터가 이전의 읽기 로그 정보와 매치되지 않으면, 호스트 컴퓨터는 이전의 읽기 로그 페이지를 버리고 로그 정보를 업데이트 한다. 로그 페이지 내용들이 로그 페이지를 읽는 동안 변경된다면, 발견 제어기는 발견 재시작을 나타내는 상태를 반환할 수 있다. 발견 제어기에 의해 나타난 대로 발견 재시작에 따르면, 호스트 컴퓨터는 현재의 발견 프로세스를 중지하고 새로운 발견 프로세스를 재시작한다.
발견 서버로부터 가장 최근에 업데이트된 발견 로그 엔트리들을 검색한 후, 호스트 컴퓨터는 대응하는 로그 엔트리에 포함된 타겟 스토리지 디바이스의 IP 주소를 사용하고 타겟 스토리지 디바이스와 통신을 수행하기 위해 큐 페어들(queue paris)을 초기화함으로써 전송 레벨 연결을 준비한다. 그렇게 하면서, 호스트 컴퓨터는 타겟 스토리지 디바이스와 전송 레벨 연결을 구축하기 위해 제어기 큐들을 생성하는 연결 명령을 내린다. 연결 명령은 포트 ID, 큐들의 타입(예를 들어, 관리 큐들(admin queues) 또는 입출력 큐들), 제출 큐들 및 완료 큐들의 사이즈, 큐 속성들, 호스트 NQN, NVM 서브시스템 NQN, 그리고 호스트 식별자를 포함하는, 그러나 이에 제한되지 않는 다양한 파라미터들을 명시할 수 있다. 이에 응답하여, 타겟 스토리지 디바이스는 연결이 성공적으로 구축되었는지 여부를 나타내는 연결 응답을 호스트 컴퓨터에 전송한다. 연결 응답은 호스트 컴퓨터와 통신을 위해 할당된 스토리지 디바이스 제어기 ID를 포함할 수 있다.
하이퍼스케일 데이터센터 환경에서, 호스트 컴퓨터와 타겟 스토리지 디바이스 사이에 적절한 연결을 구축하기 위해 필요로 되는 정보는 전송 프로토콜(예를 들어, 도 1의 패브릭(120))에 의해 지원되는 패브릭을 통해 교환될 수 있다. 패브릭(120)은 호스트 컴퓨터(110)와 발견 서버(150) 사이, 호스트 컴퓨터(110)와 스토리지 디바이스(160) 사이, 그리고 DHCP 서버(130)와 스토리지 디바이스(160) 사이에서 다를 수 있고 호스트 컴퓨터(110), DHCP 서버(130), 발견 서버(150), 그리고 스토리지 디바이스(160) 사이에서 같을 필요가 없다. 예를 들어, 본 발명의 분산 스토리지 시스템은 기업 내 네트워크(enterprise network), 데이터센터, 그리고/또는 인터넷 에 걸쳐 분포된 수많은 호스트 컴퓨터들 및 스토리지 디바이스들을 포함할 수 있다. 본 발명의 분산 스토리지 시스템의 다른 서브시스템들이 제1 타입 패브릭과 다른 제2 타입 패브릭을 통해 연결될 수 있는 반면에 본 발명의 분산 스토리지 시스템의 몇몇 서브시스템들은 제1 타입 패브릭을 통해 연결될 수 있다. 예를 들어, 발견 서버는 공용 네트워크(예를 들어, 인터넷)에 있을 수 있고, 호스트 컴퓨터 및 타겟 스토리지 디바이스는 전용 네트워크를 통해 연결될 수 있다.
본 발명의 DHCP 서비스를 기초로 한 발견 서비스는 호스트 컴퓨터들 및 스토리지 디바이스들의 확장과 규모의 수로서 사용될 수 있다. 본 발명의 하나의 실시 예에 따르면, 데이터센터의 각각의 랙은 자동적으로 업데이트하고 랙에 대한 특유의 스토리지 디바이스들의 발견 정보를 유지할 수 있는 랙 레벨(rack-level) 발견 서버를 운영할 수 있다. POD는 복수의 랙들을 포함할 수 있고, 각각의 랙 레벨 발견 서버는 자동적으로 랙 레벨 발견 정보를 POD 매니저에서 동작하는 POD 레벨 발견 서버로 업데이트할 수 있다. POD 레벨 발견 서버는 POD 매니저가 POD 레벨 발견 정보에 기초하여 작업부하들을 스케쥴링 하도록 한다.
본 발명의 하나의 실시 예에 따르면, 본 발명의 분산 스토리지 시스템은 복수의 POD 매니저들을 포함할 수 있고, 각각의 POD를 위해 하나의 POD 매니저가 존재한다. 작업부하들은 POD 매니저들 사이에서 교환될 수 있는 시스템 레벨 발견 정보에 기초하여 복수의 POD 매니저들 사이에 분산될 수 있다. 본 발명의 다른 실시 예에서는, POD 매니저는 DHCP 서버와 통신할 수 있고 작업부하 분산을 수행하기 위해 다른 POD 매니저들과 협력할 수 있다. 예를 들어, 백업 데이터는 타겟 스토리지 디바이스가 작동하지 않는 시간 동안 원격의 스토리지 디바이스로부터 이용 가능할 수 있다. 이러한 경우, POD 매니저는 시스템 레벨 발견 정보를 이용하여 백업 스토리지 디바이스로 작업부하들을 할당할 수 있다. NVMeoF 기반의 스토리지 시스템의 경우, POD 매니저는 하나 이상의 발견 서버들로 연결할 수 있고 로그 획득 명령을 이용하여 이용 가능한 스토리지 디바이스들의 업데이트된 발견 정보를 검색할 수 있다. 일단 발견 정보를 이용하여 통신 경로가 구축된다면, 타겟 스토리지 디바이스는 호스트 컴퓨터로부터 수신된 입출력 요청들을 제공할 수 있다. 본 발명의 발견 서비스는 수동 업데이트를 필요로 하지 않으므로, 본 발명의 발견 서비스는 수많은 랙들과 POD들을 포함할 수 있는 하이퍼스케일 데이터센터에 대해 스케일러블(scalable)하고 랙들은 그 안에 수많은 컴퓨트 디바이스들 그리고/또는 스토리지 디바이스들을 포함한다.
도 4는 본 발명의 하나의 실시 예에 따른 발견 로그 정보를 채우기 위한 예시 흐름도이다. 스토리지 디바이스는 부팅을 하자마자 DHCP 클라이언트를 동작시키고, 401 단계에서, IP 주소를 임대하기 위해 DHCP 서버에 요청을 전송한다. 402 단계에서, DHCP 서버는 DHCP 클라이언트에 의한 요청에 응답하여 동적 또는 영구 IP 주소를 스토리지 디바이스의 스토리지 디바이스 제어기에 할당한다. 403 단계에서, 스토리지 디바이스에서 동작하는 DLU는 RESTful API 또는 GraphQL 요청을 사용하여 IP 주소 및 스토리지 디바이스 제어기의 포트 주소를 포함하는 발견 로그 엔트리를 발견 서버에 전송한다. 404 단계에서, 발견 서버는 복수의 스토리지 디바이스들의 하나 이상의 발견 로그 엔트리들을 포함하는 발견 로그 페이지를 채운다. 405 단계에서, 발견 서버는 호스트 컴퓨터로 발견 로그 페이지를 전송한다.
도 5는 본 발명의 하나의 실시 예에 따른 호스트 컴퓨터와 타겟 스토리지 디바이스 사이에 통신을 구축하기 위한 예시 흐름도이다. 501 단계에서, 호스트 컴퓨터는 발견 서버로 발견 정보에 대한 요청을 전송한다. 발견 서버는 복수의 스토리지 디바이스들의 DLU들로부터 수신된 하나 이상의 발견 로그 엔트리들을 저장한다. 502 단계에서, 호스트 컴퓨터는 발견 서버로부터 하나 이상의 발견 로그 엔트리들을 포함하는 발견 로그 페이지를 수신한다. 발견 로그 페이지에서 수신된 하나 이상의 발견 로그 페이지 엔트리들을 이용하여, 503 단계에서, 호스트 컴퓨터는 타겟 스토리지 디바이스와 연결을 구축하고, 504 단계에서, 타겟 스토리지 디바이스로 작업부하를 할당한다.
도 6은 본 발명의 하나의 실시 예에 다른 자동 발견의 예시 프로세스를 나타낸다. 601 단계에서, 스토리지 디바이스(660)의 DHCP 클라이언트는 IP 주소를 획득하기 위해 DHCP 서버(630)로 요청을 전송하고, 602 단계에서, DHCP 서버(630)는 IP 주소를 할당하여 스토리지 디바이스(660)의 DHCP 클라이언트에 IP 주소를 전송한다. 603 단계에서, 스토리지 디바이스(660)의 DLU(또는 DHCP 서버(630))는 RESTful API 또는 GraphQL 요청을 사용하여 자동적으로 스토리지 디바이스(660)의 발견 로그 엔트리를 발견 서버(650)에 전송한다. 발견 서버(650)는 복수의 스토리지 디바이스들의 각각의 DLU로부터 하나 이상의 발견 로그 엔트리들을 수집하고 하나 이상의 발견 로그 엔트리들을 포함하는 발견 로그 페이지를 준비한다. 611 단계에서, 호스트 컴퓨터(610)는 발견 서버(650)에 로그 페이지 획득 명령을 전송하고, 응답으로, 612 단계에서, 발견 서버(650)는 호스트 컴퓨터(610)로 발견 로그 페이지를 전송한다. 발견 로그 페이지에 포함된 정보를 이용하여, 613 단계에서, 호스트 컴퓨터(610)는 스토리지 디바이스(660)와 연결을 구축한다.
본 발명의 하나의 실시 예에 따른 스토리지 시스템은 각각이 동적 호스트 구성 프로토콜(DHCP) 클라이언트를 동작시키도록 구성되는 복수의 스토리지 디바이스들, 그리고 호스트 컴퓨터로 발견 로그 페이지를 제공하도록 구성되는 발견 서버를 포함한다. 복수의 스토리지 디바이스들 각각에서 동작하는 발견 로그 업데이터는 대응하는 스토리지 디바이스의 발견 로그 엔트리를 발견 서버에 제공한다. 발견 로그 페이지는 하나 이상의 발견 로그 엔트리들을 포함하는 복수의 스토리지 디바이스들의 발견 정보를 포함하고, 하나 이상의 발견 로그 엔트리들 각각은 호스트 컴퓨터와 대응하는 스토리지 디바이스 사이의 통신을 구축하기 위해 할당된 대응하는 스토리지 디바이스 주소를 포함한다. 호스트 컴퓨터는 발견 로그 페이지에 포함된 타겟 스토리지 디바이스의 발견 로그 엔트리를 이용하여 타겟 스토리지 디바이스와 연결을 구축하고 입출력 또는 컴퓨트 작업부하를 타겟 스토리지 디바이스로 제공한다.
DHCP 서버는 복수의 스토리지 디바이스들 각각에 대한 주소를 할당할 수 있고, 복수의 스토리지 디바이스들의 각각의 발견 로그 업데이터는 할당된 주소를 포함하는 각각의 발견 로그 엔트리를 발견 서버에 자동적으로 전송하기 위해 할당된 주소를 이용할 수 있다.
발견 로그 엔트리는 스토리지 디바이스 제어기의 포트 주소를 더 포함할 수 있다.
포트 주소는 NVMeoF 사양에 따라 할당될 수 있다.
발견 서버는 RESTful 응용 프로그램 인터페이스(API) 또는 GraphQL 요청을 사용하여 호스트 컴퓨터로 발견 로그 페이지를 전송할 수 있다.
복수의 스토리지 디바이스들 중 적어도 하나는 NVMeoF(non-volatile memory express over fabrics) 디바이스일 수 있고, 호스트 컴퓨터는 발견 로그 페이지를 수신하기 위해 발견 서버로 로그 획득 명령을 전송할 수 있다.
발견 서버 및 DHCP 서버는 스토리지 시스템의 같은 서버에서 배치될 수 있다.
복수의 스토리지 디바이스들은 랙에 부착될 수 있고, 랙에 있는 발견 서버는 랙에 대한 특유의 랙 레벨 발견 정보를 수집할 수 있다.
복수의 스토리지 디바이스들은 POD에 있는 복수의 랙들 사이에 분산되어 있을 수 있고, POD를 담당하는 발견 서버는 POD에 대한 특유의 POD 레벨 발견 정보를 수집할 수 있다.
POD의 POD 매니저는 POD 레벨 발견 정보에 기초하여 복수의 스토리지 디바이스들 사이에 작업부하를 할당할 수 있다.
POD 매니저는 스토리지 시스템의 다른 POD 매니저와 POD 레벨 발견 정보를 교환할 수 있다.
본 발명의 다른 실시 예에 따른 스토리지 시스템의 동작 방법은 스토리지 디바이스에 있는 동적 호스트 구성 프로토콜(DHCP) 클라이언트를 동작시키는 단계, 스토리지 디바이스의 발견 로그 엔트리를 발견 서버에 제공하는 단계, 발견 서버로부터 호스트 컴퓨터로 발견 로그 페이지를 제공하는 단계, 발견 로그 페이지는 하나 이상의 발견 로그 엔트리들을 포함하는 복수의 스토리지 디바이스들의 발견 정보를 포함하고, 하나 이상의 발견 로그 엔트리들 각각은 호스트 컴퓨터와 대응하는 스토리지 디바이스 사이의 통신을 구축하기 위해 할당된 대응하는 스토리지 디바이스의 주소를 포함하고, 발견 로그 페이지에 포함된 타겟 스토리지 디바이스의 발견 로그 엔트리를 이용하여 호스트 컴퓨터와 타겟 스토리지 디바이스 사이의 연결을 구축하는 단계, 그리고 호스트 컴퓨터로부터 타겟 스토리지 디바이스로 입출력 또는 컴퓨트 작업부하들을 제공하는 단계를 포함한다.
DHCP 서버는 복수의 스토리지 디바이스들 각각에 대한 주소를 할당할 수 있고, 복수의 스토리지 디바이스들의 발견 로그 업데이터 각각은 할당된 주소를 포함하는 각각의 발견 로그 엔트리를 발견 서버에 자동적으로 전송하기 위해 할당된 주소를 이용할 수 있다.
발견 로그 엔트리는 스토리지 디바이스 제어기의 포트 주소를 더 포함할 수 있다.
포트 주소는 NVMeoF 사양에 따라 할당될 수 있다.
발견 서버는 RESTful 응용 프로그램 인터페이스(API) 또는 GraphQL 요청을 사용하여 호스트 컴퓨터로 발견 로그 페이지를 전송할 수 있다.
복수의 스토리지 디바이스들 중 적어도 하나는 NVMeoF(non-volatile memory express over fabrics) 디바이스일 수 있고, 호스트 컴퓨터는 발견 로그 페이지를 수신하기 위해 발견 서버로 로그 획득 명령을 전송할 수 있다.
발견 서버 및 DHCP 서버는 스토리지 시스템의 같은 서버에 배치될 수 있다.
복수의 스토리지 디바이스들은 랙에 부착될 수 있고, 랙에 있는 발견 서버는 랙에 대한 특유의 랙 레벨 발견 정보를 수집할 수 있다.
복수의 스토리지 디바이스들은 POD에 있는 복수의 랙들 사이에 분산되어 있을 수 있고, POD를 담당하는 발견 서버는 POD에 대한 특유의 POD 레벨 발견 정보를 수집할 수 있다.
POD의 POD 매니저는 POD 레벨 발견 정보에 기초하여 복수의 스토리지 디바이스들 사이에 작업부하를 할당할 수 있다.
POD 매니저는 스토리지 시스템의 다른 POD 매니저와 POD 레벨 발견 정보를 교환할 수 있다.
본 명세서에서 하이퍼스케일 데이터센터 환경에서의 이더넷 스토리지의 자동 발견을 제공하기 위한 스토리지 시스템 및 그것의 동작 방법을 구현하는 다양한 실시 예들을 나타내기 위해 상기 실시 예들이 설명되었다. 본 명세서에서 개시된 실시 예들로부터의 다양한 변형 및 일탈이 당업자에게 자명할 것이다. 본 발명의 범위 내에서 의도된 발명의 사상은 첨부된 청구항들에서 기술된다.
Claims (22)
- 복수의 스토리지 디바이스들, 상기 복수의 스토리지 디바이스들 중 적어도 하나의 스토리지 디바이스는 동적 호스트 구성 프로토콜(DHCP) 클라이언트(client)를 동작시키도록 구성되고; 그리고
호스트 컴퓨터로 발견 로그 페이지(discovery log page)를 제공하도록 구성되는 발견 서버를 포함하되,
상기 복수의 스토리지 디바이스들 중 상기 적어도 하나의 스토리지 디바이스는 대응하는 스토리지 디바이스의 발견 로그 엔트리(discovery log entry)를 상기 발견 서버에 상기 DHCP 클라이언트의 요청에 따라 획득되는 상기 대응하는 스토리지 디바이스의 인터넷 프로토콜(IP) 주소의 업데이트에 기반하여 제공하는 발견 로그 업데이터(DLU; discovery log updater)를 동작시키고 ,
상기 발견 로그 페이지는 하나 이상의 발견 로그 엔트리들을 포함하는 상기 복수의 스토리지 디바이스들의 발견 정보(discovery information)를 포함하고,
상기 호스트 컴퓨터는 상기 복수의 스토리지 디바이스들 중 타겟 스토리지 디바이스(target storage device)의 상기 발견 로그 페이지에 포함된 상기 발견 로그 엔트리를 참조하여 상기 타겟 스토리지 디바이스의 IP 주소를 이용하여 상기 타겟 스토리지 디바이스와 연결을 구축하고, 그리고 입출력 또는 컴퓨트(compute) 작업부하들을 상기 타겟 스토리지 디바이스로 제공하는 스토리지 시스템. - 제 1 항에 있어서,
DHCP 서버는 상기 복수의 스토리지 디바이스들 중 상기 적어도 하나의 스토리지 디바이스에 대한 상기 IP 주소를 할당하고, 상기 복수의 스토리지 디바이스들 중 상기 적어도 하나의 스토리지 디바이스의 상기 발견 로그 업데이터는 상기 할당된 IP 주소를 포함하는 각각의 발견 로그 엔트리를 상기 발견 서버에 자동적으로 전송하기 위해 상기 할당된 IP 주소를 이용하는 스토리지 시스템. - 제 2 항에 있어서,
상기 발견 서버 및 상시 DHCP서버는 동일한 서버에 배치된 스토리지 시스템. - 제 2 항에 있어서,
상기 발견 로그 엔트리는 스토리지 디바이스 제어기의 포트 주소를 더 포함하는 스토리지 시스템 - 제 4 항에 있어서,
상기 포트 주소는 NVMeoF 사양에 따라 할당되는 스토리지 시스템. - 제 1 항에 있어서,
상기 발견 서버는 RESTful 응용 프로그램 인터페이스(API) 또는 GraphQL 요청을 사용하여 상기 호스트 컴퓨터로 상기 발견 로그 페이지를 전송하는 스토리지 시스템. - 제 1 항에 있어서,
상기 복수의 스토리지 디바이스들 중 적어도 하나는 NVMeoF(non-volatile memory express over fabrics) 디바이스이고, 상기 호스트 컴퓨터는 상기 발견 로그 페이지를 수신하기 위해 상기 발견 서버로 로그 획득 명령을 전송하는 스토리지 시스템. - 제 1 항에 있어서,
상기 복수의 스토리지 디바이스들은 랙(rack)에 부착되고, 상기 랙에 있는 상기 발견 서버는 상기 랙에 대한 특유의 랙 레벨(rack-level) 발견 정보를 수집하는 스토리지 시스템. - 제 8 항에 있어서,
상기 복수의 스토리지 디바이스들은 POD(performance optimized datacenter)에 있는 복수의 랙들 사이에 분산되고, 상기 POD를 담당하는 상기 발견 서버는 상기 POD에 대한 특유의 POD 레벨(POD-level) 발견 정보를 수집하는 스토리지 시스템. - 제 9 항에 있어서,
상기 POD의 POD 매니저는 상기 POD 레벨 발견 정보에 기초하여 상기 복수의 스토리지 디바이스들 사이에 작업부하를 할당하는 스토리지 시스템. - 제 10 항에 있어서,
상기 POD 매니저는 상기 스토리지 시스템의 다른 POD 매니저와 상기 POD 레벨 발견 정보를 교환하는 스토리지 시스템. - 스토리지 시스템의 동작 방법에 있어서,
스토리지 디바이스에 있는 동적 호스트 구성 프로토콜(DHCP) 클라이언트를 동작시키는 단계;
DHCP 클라이언트의 요청에 의해 획득된 상기 스토리지 디바이스의 인터넷 프로토콜 (IP) 주소의 업데이트에 기초하여 상기 스토리지 디바이스의 발견 로그 엔트리를 발견 서버에 자동으로 제공하는 단계;
상기 발견 서버로부터 호스트 컴퓨터로 발견 로그 페이지를 제공하되,상기 발견 로그 페이지는 하나 이상의 발견 로그 엔트리들을 포함하는 복수의 스토리지 디바이스들의 발견 정보를 포함하는 단계;
상기 발견 로그 페이지에 포함된 타겟 스토리지 디바이스의 상기 발견 로그 엔트리를 이용하여 상기 호스트 컴퓨터와 상기 타겟 스토리지 디바이스 사이의 연결을 구축하는 단계; 그리고
상기 호스트 컴퓨터로부터 상기 타겟 스토리지 디바이스로 입출력 또는 컴퓨트 작업부하들을 제공하는 단계를 포함하는 동작 방법. - 제 12 항에 있어서,
DHCP 서버는 상기 복수의 스토리지 디바이스들 중 적어도 하나의 스토리지 디바이스에 대한 네트워크 주소를 할당하고, 상기 복수의 스토리지 디바이스들의 중 상기 적어도 하나의 스토리지 디바이스의 발견 로그 업데이터는 상기 할당된 네트워크 주소를 포함하는 각각의 발견 로그 엔트리를 상기 발견 서버에 자동적으로 전송하기 위해 상기 할당된 네트워크 주소를 이용하는 동작 방법. - 제 13 항에 있어서,
상기 발견 서버 및 상기 DHCP 서버는 상기 스토리지 시스템의 같은 서버에서 배치되는 동작 방법. - 제 13 항에 있어서,
상기 발견 로그 엔트리는 스토리지 디바이스 제어기의 포트 주소를 더 포함하는 동작 방법. - 제 15 항에 있어서,
상기 포트 주소는 NVMeoF 사양에 따라 할당되는 동작 방법. - 제 12 항에 있어서,
상기 발견 서버는 RESTful 응용 프로그램 인터페이스(API) 또는 GraphQL 요청을 사용하여 상기 호스트 컴퓨터로 상기 발견 로그 페이지를 전송하는 동작 방법. - 제 12 항에 있어서,
상기 복수의 스토리지 디바이스들 중 적어도 하나는 NVMeoF(non-volatile memory express over fabrics) 디바이스이고, 상기 호스트 컴퓨터는 상기 발견 로그 페이지를 수신하기 위해 상기 발견 서버로 로그 획득 명령을 전송하는 동작 방법. - 제 12 항에 있어서,
상기 복수의 스토리지 디바이스들은 랙에 부착되고, 상기 랙에 있는 상기 발견 서버는 상기 랙에 대한 특유의 랙 레벨 발견 정보를 수집하는 동작 방법. - 제 19 항에 있어서,
상기 복수의 스토리지 디바이스들은 POD에 있는 복수의 랙들 사이에 분산되고, 상기 POD를 담당하는 상기 발견 서버는 상기 POD에 대한 특유의 POD 레벨 발견 정보를 수집하고,
상기 POD의 POD 매니저는 상기 복수의 스토리지 디바이스들 간의 작업부하들을 상기 POD 레벨 발견 정보에 기초하여 스케쥴링하고, 그리고
상기 POD 매니저는 상기 POD 레벨 발견 정보를 상기 스토리지 시스템의 다른 POD 매니저와 교환하는 동작 방법. - 삭제
- 삭제
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762472379P | 2017-03-16 | 2017-03-16 | |
US62/472,379 | 2017-03-16 | ||
US15/615,508 US10771340B2 (en) | 2017-03-16 | 2017-06-06 | Automatic ethernet storage discovery in hyperscale datacenter environment |
US15/615,508 | 2017-06-06 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20180106822A KR20180106822A (ko) | 2018-10-01 |
KR102200934B1 true KR102200934B1 (ko) | 2021-01-11 |
Family
ID=63519692
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170136040A KR102200934B1 (ko) | 2017-03-16 | 2017-10-19 | 스토리지 시스템 및 그것의 동작 방법 |
Country Status (5)
Country | Link |
---|---|
US (1) | US10771340B2 (ko) |
JP (1) | JP6974218B2 (ko) |
KR (1) | KR102200934B1 (ko) |
CN (1) | CN108632338B (ko) |
TW (1) | TWI729256B (ko) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109840232B (zh) * | 2017-11-28 | 2022-05-13 | 华为技术有限公司 | 存储设备及存储设备的元件管理方法 |
US11307980B2 (en) * | 2018-04-20 | 2022-04-19 | Seagate Technology Llc | Distributed data storage system with passthrough operations |
US11109202B2 (en) * | 2018-11-28 | 2021-08-31 | Verizon Patent And Licensing Inc. | Method and system for intelligent routing for mobile edge computing |
US11144488B2 (en) * | 2019-02-04 | 2021-10-12 | American Megatrends International, Llc | Techniques of sending alerts from storage services running on server san target |
US11113001B2 (en) * | 2019-08-30 | 2021-09-07 | Hewlett Packard Enterprise Development Lp | Fabric driven non-volatile memory express subsystem zoning |
US11237997B2 (en) | 2020-03-16 | 2022-02-01 | Dell Products L.P. | Target driven zoning for ethernet in non-volatile memory express over-fabrics (NVMe-oF) environments |
US11163716B2 (en) * | 2020-03-16 | 2021-11-02 | Dell Products L.P. | Discovery controller registration of non-volatile memory express (NVMe) elements in an NVMe-over-fabrics (NVMe-oF) system |
US11301398B2 (en) | 2020-03-16 | 2022-04-12 | Dell Products L.P. | Symbolic names for non-volatile memory express (NVMe™) elements in an NVMe™-over-fabrics (NVMe-oF™) system |
US11489723B2 (en) | 2020-03-16 | 2022-11-01 | Dell Products L.P. | Multicast domain name system (mDNS)-based pull registration |
US11489921B2 (en) | 2020-03-16 | 2022-11-01 | Dell Products L.P. | Kickstart discovery controller connection command |
US11240308B2 (en) * | 2020-03-16 | 2022-02-01 | Dell Products L.P. | Implicit discovery controller registration of non-volatile memory express (NVMe) elements in an NVME-over-fabrics (NVMe-oF) system |
US11675499B2 (en) * | 2020-06-19 | 2023-06-13 | Western Digital Technologies, Inc. | Synchronous discovery logs in a fabric storage system |
US11314447B2 (en) * | 2020-07-21 | 2022-04-26 | EMC IP Holding Company, LLC | System and method for sustaining single NVMe subsystem by a federated storage array for NVMe-oF connectivity |
US11818031B2 (en) * | 2021-03-04 | 2023-11-14 | Dell Products L.P. | Automated internet protocol (IP) route update service for ethernet layer 3 (L3) IP storage area networks (SANs) |
US11805171B2 (en) | 2021-03-04 | 2023-10-31 | Dell Products L.P. | Automated ethernet layer 3 (L3) connectivity between non-volatile memory express over fabric (NVMe-oF) hosts and NVM-oF subsystems using bind |
US11520518B2 (en) | 2021-03-06 | 2022-12-06 | Dell Products L.P. | Non-volatile memory express over fabric (NVMe-oF) zone subsets for packet-by-packet enforcement |
US11463521B2 (en) | 2021-03-06 | 2022-10-04 | Dell Products L.P. | Dynamic connectivity management through zone groups |
US11907530B2 (en) | 2022-03-25 | 2024-02-20 | Dell Products L.P. | Scalable quality of service (QoS) for a nonvolatile memory express™ environment |
US20240020056A1 (en) * | 2022-07-12 | 2024-01-18 | Dell Products L.P. | Systems and methods for send log page commands for pull model devices |
US12026402B2 (en) * | 2022-07-13 | 2024-07-02 | Dell Products L.P. | Discovery log entry identifiers (DLEIDs) for devices in non-volatile memory express™-over fabrics (NVMe-oF™) environments |
WO2024128971A1 (en) * | 2022-12-12 | 2024-06-20 | Panasonic Intellectual Property Corporation Of America | Communication apparatus and communication method for service discovery for local area network |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007532067A (ja) | 2004-03-31 | 2007-11-08 | クゥアルコム・インコーポレイテッド | 無線ネットワーク内のサーバ情報を得るための方法および装置 |
JP2008186359A (ja) | 2007-01-31 | 2008-08-14 | Fujitsu Ltd | サービス管理装置、サービス管理方法、およびサービス管理プログラム |
JP2012129622A (ja) | 2010-12-13 | 2012-07-05 | Nippon Telegr & Teleph Corp <Ntt> | 履歴管理方法、履歴管理装置及び履歴管理システム |
US20140195634A1 (en) | 2013-01-10 | 2014-07-10 | Broadcom Corporation | System and Method for Multiservice Input/Output |
US20160072761A1 (en) | 2014-09-08 | 2016-03-10 | Quanta Computer Inc. | Automatic generation of server network topology |
US20160127492A1 (en) | 2014-11-04 | 2016-05-05 | Pavilion Data Systems, Inc. | Non-volatile memory express over ethernet |
Family Cites Families (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6253240B1 (en) * | 1997-10-31 | 2001-06-26 | International Business Machines Corporation | Method for producing a coherent view of storage network by a storage network manager using data storage device configuration obtained from data storage devices |
US20010044879A1 (en) * | 2000-02-18 | 2001-11-22 | Moulton Gregory Hagan | System and method for distributed management of data storage |
US20020196744A1 (en) * | 2001-06-26 | 2002-12-26 | O'connor Michael A. | Path discovery and mapping in a storage area network |
US7958199B2 (en) * | 2001-11-02 | 2011-06-07 | Oracle America, Inc. | Switching systems and methods for storage management in digital networks |
US8909976B2 (en) * | 2002-08-12 | 2014-12-09 | Sheng Tai (Ted) Tsao | Method and apparatus for web based storage on demand |
US7379990B2 (en) * | 2002-08-12 | 2008-05-27 | Tsao Sheng Ted Tai | Distributed virtual SAN |
US8019849B1 (en) * | 2002-09-13 | 2011-09-13 | Symantec Operating Corporation | Server-side storage area network management interface |
US7243144B2 (en) * | 2002-09-26 | 2007-07-10 | Hitachi, Ltd. | Integrated topology management method for storage and IP networks |
JP4202709B2 (ja) * | 2002-10-07 | 2008-12-24 | 株式会社日立製作所 | ストレージ装置を有するネットワークにおける、ボリューム及び障害管理方法 |
US8005918B2 (en) * | 2002-11-12 | 2011-08-23 | Rateze Remote Mgmt. L.L.C. | Data storage devices having IP capable partitions |
US7649880B2 (en) * | 2002-11-12 | 2010-01-19 | Mark Adams | Systems and methods for deriving storage area commands |
JP4503413B2 (ja) * | 2004-10-06 | 2010-07-14 | 株式会社日立製作所 | ネットワークシステムにおける外部端末からの記憶装置の利用 |
JP4566874B2 (ja) * | 2005-10-04 | 2010-10-20 | 株式会社日立製作所 | Ipネットワークにおけるストレージアクセス管理機能及びシステム |
US8166166B2 (en) * | 2005-12-15 | 2012-04-24 | International Business Machines Corporation | Apparatus system and method for distributing configuration parameter |
US8825806B2 (en) * | 2006-07-26 | 2014-09-02 | International Business Machines Corporation | Selection and configuration of storage-area network storage device and computing device |
JP4949804B2 (ja) * | 2006-11-07 | 2012-06-13 | 株式会社日立製作所 | 統合管理計算機と記憶装置管理方法および計算機システム |
US7908252B1 (en) * | 2008-03-19 | 2011-03-15 | Crossroads Systems, Inc. | System and method for verifying paths to a database |
US8868676B2 (en) * | 2010-10-11 | 2014-10-21 | International Business Machines Corporation | Methods and systems for verifying server-storage device connectivity |
US9141410B2 (en) * | 2011-03-08 | 2015-09-22 | Rackspace Us, Inc. | Pluggable allocation in a cloud computing system |
US8751456B2 (en) | 2011-04-04 | 2014-06-10 | Symantec Corporation | Application wide name space for enterprise object store file system |
JP5584186B2 (ja) * | 2011-10-28 | 2014-09-03 | 株式会社ソニー・コンピュータエンタテインメント | ストレージシステムおよびストレージ装置 |
US9229520B2 (en) * | 2012-11-30 | 2016-01-05 | Seagate Technology Llc | Managing gateway access |
US9229854B1 (en) | 2013-01-28 | 2016-01-05 | Radian Memory Systems, LLC | Multi-array operation support and related devices, systems and software |
US20140289377A1 (en) * | 2013-03-22 | 2014-09-25 | Netapp Inc. | Configuring network storage system over a network |
US10063638B2 (en) | 2013-06-26 | 2018-08-28 | Cnex Labs, Inc. | NVM express controller for remote access of memory and I/O over ethernet-type networks |
US10372685B2 (en) * | 2014-03-31 | 2019-08-06 | Amazon Technologies, Inc. | Scalable file storage service |
WO2015162660A1 (ja) | 2014-04-21 | 2015-10-29 | 株式会社日立製作所 | 計算機システム |
US9384093B1 (en) | 2014-05-28 | 2016-07-05 | Microsemi Storage Solutions (U.S.), Inc. | Raid enabled NVME device |
US20170102874A1 (en) * | 2014-06-20 | 2017-04-13 | Hitachi, Ltd. | Computer system |
US9686143B2 (en) * | 2014-09-24 | 2017-06-20 | Intel Corporation | Mechanism for management controllers to learn the control plane hierarchy in a data center environment |
US9712619B2 (en) | 2014-11-04 | 2017-07-18 | Pavilion Data Systems, Inc. | Virtual non-volatile memory express drive |
WO2016139749A1 (ja) * | 2015-03-03 | 2016-09-09 | 株式会社日立製作所 | 計算機システム、及び、記憶制御方法 |
EP3082319B1 (en) * | 2015-04-16 | 2018-09-26 | Alcatel Lucent | Personalized access to storage device through a network |
US10079730B2 (en) * | 2015-09-30 | 2018-09-18 | Amazon Technologies, Inc. | Network based resource configuration discovery service |
US10764393B2 (en) * | 2016-04-21 | 2020-09-01 | Hewlett Packard Enterprise Development Lp | Determining a persistent network identity of a networked device |
US20180024964A1 (en) * | 2016-07-19 | 2018-01-25 | Pure Storage, Inc. | Disaggregated compute resources and storage resources in a storage system |
US11461258B2 (en) * | 2016-09-14 | 2022-10-04 | Samsung Electronics Co., Ltd. | Self-configuring baseboard management controller (BMC) |
US10613974B2 (en) * | 2016-10-04 | 2020-04-07 | Pure Storage, Inc. | Peer-to-peer non-volatile random-access memory |
US10007459B2 (en) * | 2016-10-20 | 2018-06-26 | Pure Storage, Inc. | Performance tuning in a storage system that includes one or more storage devices |
US10230544B1 (en) * | 2016-11-23 | 2019-03-12 | Pure Storage, Inc. | Efficient data forwarding in a networked device |
US10542089B2 (en) * | 2017-03-10 | 2020-01-21 | Toshiba Memory Corporation | Large scale implementation of a plurality of open channel solid state drives |
-
2017
- 2017-06-06 US US15/615,508 patent/US10771340B2/en active Active
- 2017-10-19 KR KR1020170136040A patent/KR102200934B1/ko active IP Right Grant
-
2018
- 2018-01-10 TW TW107100839A patent/TWI729256B/zh active
- 2018-02-26 CN CN201810161543.XA patent/CN108632338B/zh active Active
- 2018-03-05 JP JP2018038356A patent/JP6974218B2/ja active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007532067A (ja) | 2004-03-31 | 2007-11-08 | クゥアルコム・インコーポレイテッド | 無線ネットワーク内のサーバ情報を得るための方法および装置 |
JP2008186359A (ja) | 2007-01-31 | 2008-08-14 | Fujitsu Ltd | サービス管理装置、サービス管理方法、およびサービス管理プログラム |
JP2012129622A (ja) | 2010-12-13 | 2012-07-05 | Nippon Telegr & Teleph Corp <Ntt> | 履歴管理方法、履歴管理装置及び履歴管理システム |
US20140195634A1 (en) | 2013-01-10 | 2014-07-10 | Broadcom Corporation | System and Method for Multiservice Input/Output |
US20160072761A1 (en) | 2014-09-08 | 2016-03-10 | Quanta Computer Inc. | Automatic generation of server network topology |
US20160127492A1 (en) | 2014-11-04 | 2016-05-05 | Pavilion Data Systems, Inc. | Non-volatile memory express over ethernet |
Also Published As
Publication number | Publication date |
---|---|
US20180270119A1 (en) | 2018-09-20 |
TWI729256B (zh) | 2021-06-01 |
TW201843980A (zh) | 2018-12-16 |
JP6974218B2 (ja) | 2021-12-01 |
JP2018156645A (ja) | 2018-10-04 |
CN108632338B (zh) | 2022-05-24 |
KR20180106822A (ko) | 2018-10-01 |
CN108632338A (zh) | 2018-10-09 |
US10771340B2 (en) | 2020-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102200934B1 (ko) | 스토리지 시스템 및 그것의 동작 방법 | |
US20210143999A1 (en) | Methods and apparatus to manage credentials in hyper-converged infrastructures | |
US11842052B2 (en) | Method and apparatus for fine tuning and optimizing NVMe-oF SSDs | |
US8838850B2 (en) | Cluster control protocol | |
US7451071B2 (en) | Data model for automated server configuration | |
US7620981B2 (en) | Virtual devices and virtual bus tunnels, modules and methods | |
US9122652B2 (en) | Cascading failover of blade servers in a data center | |
US20170010874A1 (en) | Provisioning storage devices in a data center | |
CN105993161B (zh) | 用于解析地址的元件、方法、***和计算机可读存储设备 | |
US7903677B2 (en) | Information platform and configuration method of multiple information processing systems thereof | |
US11550616B2 (en) | Virtual IP support for bare metal cloud infrastructures | |
JP2009075718A (ja) | 仮想i/oパスの管理方法、情報処理システム及びプログラム | |
US8819200B2 (en) | Automated cluster node configuration | |
US20190089483A1 (en) | Techniques of deep discovery of a composed node through management network | |
US20230214203A1 (en) | Increased resource usage efficiency in providing updates to distributed computing devices | |
US10353585B2 (en) | Methods for managing array LUNs in a storage network with a multi-path configuration and devices thereof | |
WO2017046830A1 (en) | Method and system for managing instances in computer system including virtualized computing environment | |
US9548940B2 (en) | Master election among resource managers | |
US10417093B2 (en) | Methods for providing global spare data storage device management and devices thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
A302 | Request for accelerated examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |