KR20220019924A - 다중 쿠버네티스 클러스터 구축 방법 및 그 장치 - Google Patents

다중 쿠버네티스 클러스터 구축 방법 및 그 장치 Download PDF

Info

Publication number
KR20220019924A
KR20220019924A KR1020200100217A KR20200100217A KR20220019924A KR 20220019924 A KR20220019924 A KR 20220019924A KR 1020200100217 A KR1020200100217 A KR 1020200100217A KR 20200100217 A KR20200100217 A KR 20200100217A KR 20220019924 A KR20220019924 A KR 20220019924A
Authority
KR
South Korea
Prior art keywords
kubernetes
cluster
kubernetes cluster
virtual node
node system
Prior art date
Application number
KR1020200100217A
Other languages
English (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 KR1020200100217A priority Critical patent/KR20220019924A/ko
Publication of KR20220019924A publication Critical patent/KR20220019924A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/301Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is a virtual computing platform, e.g. logically partitioned systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • G06F11/327Alarm or error message display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/63Image based installation; Cloning; Build to order
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances

Abstract

다중 쿠버네티스 클러스터 구축 방법 및 그 장치가 개시된다. 다중 쿠버네티스 클러스터 구축 방법은, 배포 프로파일을 입력받는 단계; 스토리지에서 상기 배포 프로파일에 상응하는 커스텀 리눅스 이미지를 획득하는 단계; 및 상기 획득된 커스텀 리눅스 이미지를 가상 노드 시스템에 삽입하여 쿠버네티스 클러스터를 구축하는 단계를 포함하되, 상기 가상 노드 시스템은 오픈스택 기반 시스템으로 가상 머신이 동작중이되, 상기 커스텀 리눅스 이미지는 상기 가상 머신상에 삽입되어 실행될 수 있다.

Description

다중 쿠버네티스 클러스터 구축 방법 및 그 장치{Method and apparatus for building multiple Kubernetes clusters}
본 발명은 다중 쿠버네티스 클러스터 배포, 확장 방법 및 그 장치에 관한 것이다.
Openstack은 퍼블릭 및 프라이빗 클라우드를 위한 클라우드 컴퓨팅 플랫폼을 구축하고, 관리하기 위한 소프트웨어 툴 모음이다. 대부분이 IaaS(Infrastructure as a Service)로 구출된다.
종래의 Openstack은 모든 자원과 구성 요소가 중앙집중식 인증방식으로 REST API를 통해 제어 및 프로비저닝됨에 따라 확장 가능하지 않거나 특정 사용자 지정 리눅스 이미지에서만 작동하는 등의 문제점이 있었다.
한국등록특허공보 10-1970864(2019.04.15.)
본 발명은 다중 쿠버네티스 클러스터 구축 방법 및 그 장치를 제공하기 위한 것이다.
또한, 본 발명은 다양한 옵션을 통해 다중 쿠버네티스 클러스터를 배포 및 확장할 수 있는 방법 및 그 장치를 제공하기 위한 것이다.
본 발명의 일 측면에 따르면, 다중 쿠버네티스 클러스터 구축 방법이 제공된다.
본 발명의 일 실시예에 따르면, 배포 프로파일을 입력받는 단계; 스토리지에서 상기 배포 프로파일에 상응하는 커스텀 리눅스 이미지를 획득하는 단계; 및 상기 획득된 커스텀 리눅스 이미지를 가상 노드 시스템에 삽입하여 쿠버네티스 클러스터를 구축하는 단계를 포함하되, 상기 가상 노드 시스템은 오픈스택 기반 시스템으로 가상 머신이 동작중이되, 상기 커스텀 리눅스 이미지는 상기 가상 머신상에 삽입되어 실행되는 것을 특징으로 하는 다중 쿠버네티스 클러스터 구축 방법이 제공될 수 있다.
상기 커스텀 리눅스 이미지는 쿠버네티스 클러스터 노드의 실행에 필요한 정보를 포함할 수 있다.
상기 노드는 쿠버네티스 클러스터의 일부인 단일 컴퓨터 인스턴스이다.
상기 가상 노드 시스템으로 프로메테우스 기반 Exporter의 엔드포인트로 HTTP GET 요청을 전송한 후 상기 가상 노드 시스템의 매트릭을 수집(pull)한 후 해석하여 경고 또는 알림을 외부 알림 시스템으로 전달하는 단계를 더 포함할 수 있다.
상기 쿠버네티스 클러스터 확장이 필요한 경우, 데이터베이스로부터 확장 프로파일을 획득하는 단계; 및 상기 스토리지에서 상기 확장 프로파일에 상응하는 확장용 커스텀 리눅스 이미지를 추출하여 상기 가상 노드 시스템에 삽입하는 단계를 더 포함할 수 있다.
본 발명의 다른 측면에 따르면, 노드 기반으로 다중 쿠베르네티스 클러스터를 자동으로 배포 및 확장할 수 있는 장치가 제공된다.
본 발명의 일 실시예에 따르면, 배포 프로파일을 입력받는 인터페이스부; 복수의 커스텀 리눅스 이미지를 저장하는 스토리지; 및 상기 스토리지에서 상기 배포 프로파일에 상응하는 커스텀 리눅스 이미지를 획득하는 하고, 상기 획득된 커스텀 리눅스 이미지를 가상 노드 시스템에 삽입하여 쿠버네티스 클러스터를 구축하는 클러스터 빌딩부를 포함하되, 상기 가상 노드 시스템은 오픈스택 기반 시스템으로 가상 머신이 동작중이되, 상기 커스텀 리눅스 이미지는 상기 가상 머신상에 삽입되어 실행되는 것을 특징으로 하는 다중 쿠버네티스 클러스터 구축 장치가 제공될 수 있다.
프로메테우스 서버가 상기 가상 노드 시스템과 연동되되, 상기 프로메테우스 서버는 Exporter의 엔드포인트로 HTTP GET 요청을 상기 가상 노드 시스템으로 전송함으로써 상기 가상 노드 시스템의 매트릭을 수집(pull)하여 해석한 후 경고 또는 알림을 외부 알림 시스템으로 전달할 수 있다.
상기 인터페이스부와 상기 클러스터 빌딩부 또는 상기 프로메테우스 서버 사이에 위치되는 API 엔진부를 포함하되, 상기 API 엔진부는 상기 다중 쿠버네티스 클러스터 구축 장치와 외부 소프트웨어 사이의 액세스 또는 상기 경고 또는 알림 수신을 제공할 수 있다.
상기 API 엔진부를 통해 확장 프로파일이 수신되면, 상기 클러스터 빌딩부는 데이터베이스에서 확장 커스텀 리눅스 이미지를 상기 스토리지에서 추출한 후 상기 가상 노드 시스템의 가상 머신에 삽입하여 상기 쿠버네티스 클러스터를 확장할 수 있다.
본 발명의 일 실시예에 따른 다중 쿠버네티스 클러스터 구축 방법 및 그 장치를 제공함으로써, 노드 기반으로 다중 쿠버네티스 클러스터를 자동으로 배포 및 확장할 수 있는 이점이 있다.
도 1은 본 발명의 일 실시예에 따른 시스템을 도시한 도면.
도 2는 본 발명의 일 실시예에 따른 쿠버네티스 아키텍처를 도시한 도면.
도 3은 본 발명의 일 실시예에 따른 프로메테우스 아키텍처를 도시한 도면.
도 4는 본 발명의 일 실시예에 따른 다중 쿠버네티스 클러스터 구축 장치의 내부 구성을 도시한 도면.
도 5는 본 발명의 일 실시예에 따른 다중 쿠버네티스 클러스터 구축 방법을 나타낸 순서도.
본 명세서에서 사용되는 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "구성된다" 또는 "포함한다" 등의 용어는 명세서상에 기재된 여러 구성 요소들, 또는 여러 단계들을 반드시 모두 포함하는 것으로 해석되지 않아야 하며, 그 중 일부 구성 요소들 또는 일부 단계들은 포함되지 않을 수도 있고, 또는 추가적인 구성 요소 또는 단계들을 더 포함할 수 있는 것으로 해석되어야 한다. 또한, 명세서에 기재된 "...부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
이하, 첨부된 도면들을 참조하여 본 발명의 실시예를 상세히 설명한다.
도 1은 본 발명의 일 실시예에 따른 시스템을 도시한 도면이고, 도 2는 본 발명의 일 실시예에 따른 쿠버네티스 아키텍처를 도시한 도면이며, 도 3은 본 발명의 일 실시예에 따른 프로메테우스 아키텍처를 도시한 도면이고, 도 4는 본 발명의 일 실시예에 따른 다중 쿠버네티스 클러스터 구축 장치의 내부 구성을 도시한 도면이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 시스템(100)은 프로메테우스 서버(Prometheus server)(110) 및 다중 쿠버네티스 클러스터 구축 장치(120)를 포함하여 구성된다. 본 발명의 일 실시예에 따르면 시스템은 오픈스택(openStack)상에 설치된 가상 머신(VM)을 이용하여 쿠버네티스 클러스터를 구축하고, 관리하기 위한 것이다. 별도의 설명이 없더라도 오픈스택 기반 가상 머신 상에 쿠버네티스 클러스터가 구축/관리되는 것으로 이해되어야 할 것이다.
또한, 쿠버네티스는 컨테이너 중심의 환경을 제공하며, 사용자 워크로드를 대신하여 컴퓨팅, 네트워킹 및 스토리지 인프라를 조정할 수 있다. 쿠버네티스는 노드에서 실행할 컨테이너를 포드(Pods)에 배치하여 작업량을 처리할 수 있다. 노드는 쿠버네티스 클러스터의 일부인 단일 컴퓨팅 인스턴스(가상머신)이다. 인스턴스에는 도 2에서 보여지는 바와 같이, 마스터 노드와 작업자 노드라는 두가지 유형이 있다.
마스터 노드는 쿠버네티스 API 서버를 호스팅하고 컨테이너가 언제, 어떻게, 어디서 실행되는지를 제어한다. 작업자 노드는 컨테이너가 실제로 실행되고 데이터를 처리하는 컴퓨팅 인스턴스이다. 쿠버네티스의 팟은 쿠버네티스가 컴퓨팅 인스턴스에서 컨테이너를 실행하는 방법이다. 즉, 팟에는 컨테이너와 컨테이너가 어떻게 실행되고, 네트워킹되며, 저장되어야 하는지에 대한 사양이 포함되어 있다. 팟은 단일 컨테이너일 수도 있으며 함께 실행되는 다수의 컨테이너일 수도 있다. 일반적으로 난일 컨테이너를 실행한다면 팟은 실행 컨테이너로 간주될 수 있다. 또한, etcd는 머신의 분산 클러스터 전체에 걸쳐 데이터를 저장 및 공유할 수 있게 해주는 분산 키 값 스토어이다. 쿠버네티스는 etcd를 사용하여 클러스터에 대한 데이터를 저장하고 쿠버르네티스 컨트롤 플레인 전체에서 이를 공유한다.
도 2를 참조하면, 노드에는 Kubelet, 컨테이너 런타임, kube-proxy가 포함된다. 따라서, 본 발명의 일 실시예에서는 커스텀 리눅스 이미지 k8s 구성 요소를 생성한 후 이를 스토리지에 각각 저장한 후 쿠버네티스 클러스터용 노드를 배포할 수 있다.
이에 대해서는, 이하의 설명에 의해 보다 명확하게 이해될 것이다.
프로메테우스 서버(110)는 클러스터를 모니터링하기 위한 수단이다.
프로메테우스(Prometheus)는 확장 가능한 오픈 소스 모니터링 시스템이다. 즉, 프로메테우스는 모든 데이터를 시계열 데이터베이스 저장한다.
도 3에는 프로메테우스 아키텍처가 도시되어 있다. 도 3을 참조하여 프로메테우스에 대해 간략하게 설명하기로 한다.
프로메테우스 서버(110)는 Exporter를 통해 타겟 시스템의 매트릭을 수집할 수 있다. 즉, Exporter는 타겟 시스템의 매트릭을 수집한 후 HTTP 통신을 통해 매트릭 데이터를 /metrics라는 HTTP 엔드 포인트를 제공할 수 있다. 이에 따라 프로메테우스 서버(110)는 Exporter의 엔드포인트로 HTTP GET 요청을 전송하고, 이를 통해 타겟 시스템의 매트릭을 수집(pull)할 수 있다. 또한, 프로메테우스 서버(110)는 AlertManager를 포함한다. AlertManager는 경고(알람)를 위한 구성 요소이다. 즉, AlertManager는 프로메테우스 서버(110)로부터 매트릭을 수신한 후 매트릭을 그룹화하고 해석한 후 선택한 알람을 선택된 알람 시스템으로 알림을 전달하는 역할을 수행한다.
다중 쿠버네티스 클러스터 구축 장치(120)는 쿠버네티스 클러스터용 노드를 배포 및 확장하기 위한 수단이다.
도 4에는 다중 쿠버네티스 클러스터 구축 장치(120)의 세부 구성이 도시되어 있다.
도 4를 참조하여 다중 쿠버네티스 클러스터 구축 장치(120)의 상세 기능에 대해 설명하기로 한다.
도 4를 참조하면, 다중 쿠버네티스 클러스터 구축 장치(120)는 인터페이스부(410), API 엔진부(420), 클러스터 빌딩부(430) 및 스토리지(440)를 포함하여 구성된다.
인터페이스부(410)는 사용자로부터 배포 프로파일을 입력받기 위한 수단이다.
즉, 사용자는 인터페이스부(410)를 통해 API를 호출하여 배포 프로파일을 입력하고 실행할 수 있다. 예를 들어, 배포 프로파일은 YAML 기반으로 작성될 수 있다.
API 엔진부(420)는 프로메테우스 서버(110)와 연동되어 경고(알림) 등을 수신하고, 클러스터 빌딩부(430)와 데이터베이스에 대한 보안 판독(read)/기록(write) 액세스를 제공하기 위한 수단이다.
예를 들어, 사용자는 인터페이스부(410)를 통해 API 엔진부(420)를 통해 배포 프로파일을 입력하여 실행하면 클러스터 빌딩부(430)는 스토리지(440)로부터 배포 프로파일에 상응하는 커스텀 리눅스 이미지를 획득한 후 이를 가상 노드 시스템상의 가상 머신에 삽입(put)할 수 있다.
클러스터 빌딩부(430)는 사용자로부터 입력된 배포 프로파일을 기반으로 스토리지(440)에서 특정 커스텀 리눅스 이미지를 추출하고, 이를 오픈스택상의 가상 머신에 삽입함으로써 쿠버네티스 클러스터를 구축할 수 있다.
커스텀 리눅스 이미지는 컨테이너 실행에 필요한 파일 및 설정값 등을 저장하고 있다. 이러한 커스텀 리눅스 이미지는 다양한 버전으로 생성될 수 있다. 따라서, 사용자에 의해 입력된 배포 프로파일을 기반으로 적합한 커스텀 리눅스 이미지가 스토리지(440)로부터 추출된 후 가상 노드 시스템상에서 구축 또는 확장될 수 있다. 가상 노드 시스템은 이미 전술한 바와 같이 오픈스택 기반 클러스터 시스템으로 하나의 컴퓨터 인스턴스로 구축될 수도 있으며 다수의 컴퓨터 인스턴스로 구축될 수도 있다. 즉 가상 노드 시스템상의 각 노드는 쿠버네티스 클러스터의 일부인 단일 컴퓨터 인스턴스일 수 있다. 본 발명의 일 실시예에서는 가상 노드 시스템이 다수의 컴퓨터 인스턴스로 구성되는 것을 가정하여 이를 중심으로 설명하기로 한다.
또한 클러스터 빌딩부(430)는 쿠버네티스 클러스터의 확장이 필요한 경우, 확장 프로파일을 기반으로 스토리지(440)에서 확장용 커스텀 리눅스 이미지를 추출하여 이를 가상 노드 시스템상의 가상 머신에 삽입하여 쿠버네티스 클러스터를 확장할 수도 있다.
보다 상세하게, 클러스터 빌딩부(430)와 인터페이스부(410) 사이에 API 엔진부(420)가 위치된다. 따라서, 사용자는 인터페이스부(410)를 통해 API 엔진부(420)를 통해 당해 다중 쿠버네티스 클러스터 구축 장치(120)에 액세스하게 되며, 이를 통해 배포 또는 확장 프로파일을 입력하여 실행 또는/및 저장할 수 있다.
즉, API 엔진부(420)를 통해 배포 프로파일 또는 확장 프로파일이 입력된 후 데이터베이스(Redis database)에 저장될 수 있다. 여기서, 데이터베이스는 가상 노드 시스템의 모든 클러스터를 배포하고 확장하기 위한 클러스터링 정보를 저장하고 있다. 데이터베이스는 키-값을 기반으로 실시간 작동하며 데이터베이스 클러스터를 구축할 수 있다.
클러스터 빌딩부(430)는 배포 또는 확장 프로파일에 상응하는 커스텀 리눅스 이미지를 스토리지(440)에서 추출한 후 가상 노드 시스템의 가상 머신에 삽입하여 쿠버네티스 클러스터를 구축 또는 확장할 수 있다.
스토리지(440)는 복수의 커스텀 리눅스 이미지를 저장한다. 물론 스토리지(440)에는 각 커스텀 리눅스 이미지의 확장 버전이 추가적으로 저장될 수도 있음은 당연하다.
도 5는 본 발명의 일 실시예에 따른 다중 쿠버네티스 클러스터 구축 방법을 나타낸 순서도이다.
단계 510에서 다중 쿠버네티스 클러스터 구축 장치(120)는 배포 프로파일을 입력받는다. 이미 전술한 바와 같이, 인터페이스부(410)를 통해 API 엔진부(420)와 연동되어 배포 프로파일을 입력하고 실행할 수 있다.
단계 515에서 다중 쿠버네티스 클러스터 구축 장치(120)는 스토리지에서 배포 프로파일에 상응하는 커스텀 리눅스 이미지를 획득한다. 스토리지(440)에는 복수의 커스텀 리눅스 이미지가 저장되어 있다. 다라서, 다중 쿠버네티스 클러스터 구축 장치(120)는 배포 프로파일을 기반으로 스토리지(440)에서 특정 커스텀 리눅스 이미지를 획득할 수 있다.
단계 520에서 다중 쿠버네티스 클러스터 구축 장치(120)는 특정 커스텀 리눅스 이미지를 가상 노드 시스템의 가상 머신에 삽입하여 쿠버네티스 클러스터를 구축한다. 쿠버네티스 클러스터는 복수의 노드로 구성되며, 각 노드는 쿠버네티스 클러스터의 일부인 단일 컴퓨터 인스턴스일 수 있다.
단계 525에서 다중 쿠버네티스 클러스터 구축 장치(120)는 쿠버네티스 클러스터의 확장 필요 여부를 판단한다.
만일 확장이 필요한 경우, 단계 530에서 다중 쿠버네티스 클러스터 구축 장치(120)는 확장 프로파일을 데이터베이스에서 추출하고, 추출된 확장 프로파일에 기반한 확장용 커스텀 리눅스 이미지를 스토리지(440)에서 추출한다.
단계 535에서 다중 쿠버네티스 클러스터 구축 장치(120)는 추출된 확장용 커스텀 리눅스 이미지를 가상 노드 시스템의 가상 머신에 삽입하여 실행함으로써 쿠버네티스 클러스터를 확장할 수 있다.
또한, 도 5에는 상세히 도시되어 있지 않으나, 프로메테우스 서버(110)가 가상 노드 시스템, 다중 쿠버네티스 클러스터 구축 장치(120)과 연동될 수 있다. 이에 따라, 프로메테우스 서버(110)는 Exporter의 엔드포인트로 HTTP GET 요청을 전송한 후 상기 가상 노드 시스템의 매트릭을 수집(pull)한 후 해석하여 경고 또는 알림을 API 엔진부(420)를 통해 외부 알림 시스템으로 전달할 수 있다.
본 발명의 실시 예에 따른 장치 및 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야 통상의 기술자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media) 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이제까지 본 발명에 대하여 그 실시 예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시 예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
100: 시스템
110: 프로메테우스 서버
120: 다중 쿠버네티스 클러스터 구축 장치
410: 인터페이스부
420: API 엔진부
430: 클러스터 빌딩부
440: 스토리지

Claims (12)

  1. 배포 프로파일을 입력받는 단계;
    스토리지에서 상기 배포 프로파일에 상응하는 커스텀 리눅스 이미지를 획득하는 단계; 및
    상기 획득된 커스텀 리눅스 이미지를 가상 노드 시스템에 삽입하여 쿠버네티스 클러스터를 구축하는 단계를 포함하되,
    상기 가상 노드 시스템은 오픈스택 기반 시스템으로 가상 머신이 동작중이되, 상기 커스텀 리눅스 이미지는 상기 가상 머신상에 삽입되어 실행되는 것을 특징으로 하는 다중 쿠버네티스 클러스터 구축 방법.
  2. 제1 항에 있어서,
    상기 커스텀 리눅스 이미지는 쿠버네티스 클러스터 노드의 실행에 필요한 정보를 포함하는 것을 특징으로 하는 다중 쿠버네티스 클러스터 구축 방법.
  3. 제2 항에 있어서,
    상기 노드는 쿠버네티스 클러스터의 일부인 단일 컴퓨터 인스턴스인 것을 특징으로 하는 다중 쿠버네티스 클러스터 구축 방법.
  4. 제1 항에 있어서,
    상기 가상 노드 시스템으로 프로메테우스 기반 Exporter의 엔드포인트로 HTTP GET 요청을 전송한 후 상기 가상 노드 시스템의 매트릭을 수집(pull)한 후 해석하여 경고 또는 알림을 외부 알림 시스템으로 전달하는 단계를 더 포함하는 다중 쿠버네티스 클러스터 구축 방법.
  5. 제1 항에 있어서,
    상기 쿠버네티스 클러스터 확장이 필요한 경우, 데이터베이스로부터 확장 프로파일을 획득하는 단계; 및
    상기 스토리지에서 상기 확장 프로파일에 상응하는 확장용 커스텀 리눅스 이미지를 추출하여 상기 가상 노드 시스템에 삽입하는 단계를 더 포함하는 다중 쿠버네티스 클러스터 구축 방법.
  6. 제1 항 내지 제5 항 중 어느 하나의 항에 따른 방법을 수행하기 위한 프로그램 코드를 기록한 컴퓨터로 판독 가능한 기록매체 제품.
  7. 배포 프로파일을 입력받는 인터페이스부;
    복수의 커스텀 리눅스 이미지를 저장하는 스토리지; 및
    상기 스토리지에서 상기 배포 프로파일에 상응하는 커스텀 리눅스 이미지를 획득하는 하고, 상기 획득된 커스텀 리눅스 이미지를 가상 노드 시스템에 삽입하여 쿠버네티스 클러스터를 구축하는 클러스터 빌딩부를 포함하되,
    상기 가상 노드 시스템은 오픈스택 기반 시스템으로 가상 머신이 동작중이되, 상기 커스텀 리눅스 이미지는 상기 가상 머신상에 삽입되어 실행되는 것을 특징으로 하는 다중 쿠버네티스 클러스터 구축 장치.
  8. 제7 항에 있어서,
    상기 커스텀 리눅스 이미지는 쿠버네티스 클러스터 노드의 실행에 필요한 정보를 포함하는 것을 특징으로 하는 다중 쿠버네티스 클러스터 구축 장치.
  9. 제8 항에 있어서,
    상기 노드는 쿠버네티스 클러스터의 일부인 단일 컴퓨터 인스턴스인 것을 특징으로 하는 다중 쿠버네티스 클러스터 구축 장치.
  10. 제7 항에 있어서,
    프로메테우스 서버가 상기 가상 노드 시스템과 연동되되,
    상기 프로메테우스 서버는 Exporter의 엔드포인트로 HTTP GET 요청을 상기 가상 노드 시스템으로 전송함으로써 상기 가상 노드 시스템의 매트릭을 수집(pull)하여 해석한 후 경고 또는 알림을 외부 알림 시스템으로 전달하는 것을 특징으로 하는 다중 쿠버네티스 클러스터 구축 장치.
  11. 제10 항에 있어서,
    상기 인터페이스부와 상기 클러스터 빌딩부 또는 상기 프로메테우스 서버 사이에 위치되는 API 엔진부를 포함하되,
    상기 API 엔진부는 상기 다중 쿠버네티스 클러스터 구축 장치와 외부 소프트웨어 사이의 액세스 또는 상기 경고 또는 알림 수신을 제공하는 것을 특징으로 하는 다중 쿠버네티스 클러스터 구축 장치.
  12. 제11 항에 있어서,
    상기 API 엔진부를 통해 확장 프로파일이 수신되면, 상기 클러스터 빌딩부는 데이터베이스에서 확장 커스텀 리눅스 이미지를 상기 스토리지에서 추출한 후 상기 가상 노드 시스템의 가상 머신에 삽입하여 상기 쿠버네티스 클러스터를 확장하는 것을 특징으로 하는 다중 쿠버네티스 클러스터 구축 장치.

KR1020200100217A 2020-08-11 2020-08-11 다중 쿠버네티스 클러스터 구축 방법 및 그 장치 KR20220019924A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200100217A KR20220019924A (ko) 2020-08-11 2020-08-11 다중 쿠버네티스 클러스터 구축 방법 및 그 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200100217A KR20220019924A (ko) 2020-08-11 2020-08-11 다중 쿠버네티스 클러스터 구축 방법 및 그 장치

Publications (1)

Publication Number Publication Date
KR20220019924A true KR20220019924A (ko) 2022-02-18

Family

ID=80495142

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200100217A KR20220019924A (ko) 2020-08-11 2020-08-11 다중 쿠버네티스 클러스터 구축 방법 및 그 장치

Country Status (1)

Country Link
KR (1) KR20220019924A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102571781B1 (ko) 2022-12-14 2023-08-29 스트라토 주식회사 클러스터 노드 추천 시스템 및 그 제어방법
KR102571782B1 (ko) 2022-12-16 2023-08-29 스트라토 주식회사 리소스 관리 풀을 이용한 가상 머신 재배치를 위한 장치 및 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101970864B1 (ko) 2016-11-25 2019-04-19 인하대학교 산학협력단 총 플래시 어레이 기반 오픈스택 클라우드 블록 스토리지에서의 패리티 데이터 중복제거 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101970864B1 (ko) 2016-11-25 2019-04-19 인하대학교 산학협력단 총 플래시 어레이 기반 오픈스택 클라우드 블록 스토리지에서의 패리티 데이터 중복제거 방법

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102571781B1 (ko) 2022-12-14 2023-08-29 스트라토 주식회사 클러스터 노드 추천 시스템 및 그 제어방법
US11922225B1 (en) 2022-12-14 2024-03-05 Strato Co., Ltd. Cluster node recommendation system
KR102571782B1 (ko) 2022-12-16 2023-08-29 스트라토 주식회사 리소스 관리 풀을 이용한 가상 머신 재배치를 위한 장치 및 방법

Similar Documents

Publication Publication Date Title
US11593252B2 (en) Agentless distributed monitoring of microservices through a virtual switch
US10931599B2 (en) Automated failure recovery of subsystems in a management system
US10505830B2 (en) Container monitoring configuration deployment
US10498857B2 (en) System interaction monitoring and component scaling
CN110752947B (zh) 一种k8s集群部署方法及装置,一种部署平台
US10511485B2 (en) Dynamic virtual network topology discovery engine
US11146620B2 (en) Systems and methods for instantiating services on top of services
US9529613B2 (en) Methods and apparatus to reclaim resources in virtual computing environments
US20160154665A1 (en) Virtual machine deployment method, virtual machine deployment program, and virtual machine deployment system
US11327856B2 (en) Robot application management device, system, method and program
US20150186129A1 (en) Method and system for deploying a program module
CN106886434B (zh) 一种分布式应用安装方法与装置
JP5976946B2 (ja) 仮想マシンテストシステム、仮想マシンテスト方法
WO2015057188A1 (en) Package dependency maps for distributed computing
KR20220019924A (ko) 다중 쿠버네티스 클러스터 구축 방법 및 그 장치
KR20150108230A (ko) 클러스터 시스템 구축 방법 및 장치
US20090070425A1 (en) Data processing system, method of updating a configuration file and computer program product
CN112631759A (zh) 数据处理方法、装置和系统
US20230161643A1 (en) Lifecycle management for workloads on heterogeneous infrastructure
CN112311886B (zh) 多集群部署方法、装置及管理节点
US11095501B2 (en) Provisioning and activating hardware resources
US20160092260A1 (en) Determination method and determination device
EP3387533B1 (en) Disaster recovery of cloud resources
US20130159973A1 (en) Activation logic generation for a software appliance
US20230185561A1 (en) Virtual appliance functionality transformations

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E601 Decision to refuse application