KR20230059569A - 가상자원운용장치 및 가상자원운용장치의 동작 방법 - Google Patents

가상자원운용장치 및 가상자원운용장치의 동작 방법 Download PDF

Info

Publication number
KR20230059569A
KR20230059569A KR1020210143880A KR20210143880A KR20230059569A KR 20230059569 A KR20230059569 A KR 20230059569A KR 1020210143880 A KR1020210143880 A KR 1020210143880A KR 20210143880 A KR20210143880 A KR 20210143880A KR 20230059569 A KR20230059569 A KR 20230059569A
Authority
KR
South Korea
Prior art keywords
kubernetes
workload
cluster
virtual
resource management
Prior art date
Application number
KR1020210143880A
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 KR1020210143880A priority Critical patent/KR20230059569A/ko
Publication of KR20230059569A publication Critical patent/KR20230059569A/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
    • 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/4401Bootstrapping
    • 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/45537Provision of facilities of other operating environments, e.g. WINE
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • 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
    • 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/4557Distribution of virtual machine instances; Migration and load balancing
    • 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/45587Isolation or security of virtual machine instances
    • 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/45595Network integration; Enabling network access in virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 발명은 모바일엣지컴퓨팅(MEC, Mobile-Edge Computing) 기반의 관리형 쿠버네티스(managed Kubernetes) 서비스 구현 시 언더 클라우드(Under cloud)에 배치되는 가상 인프라의 형태를 오버 클라우드(Over cloud)와 일원화시켜 관리하기 위한 가상자원운용장치 및 가상자원운용장치의 동작 방법에 관한 것이다.

Description

가상자원운용장치 및 가상자원운용장치의 동작 방법{MANAGEMENT APPARATUS FOR VIRTUAL RESOURCE, AND CONTROL METHOD THEREOF}
본 발명은, 모바일엣지컴퓨팅(MEC, Mobile-Edge Computing) 기반의 관리형 쿠버네티스(managed Kubernetes) 서비스 구현 시 언더 클라우드(Under cloud)에 배치되는 가상 인프라의 형태를 오버 클라우드(Over cloud)와 일원화시켜 관리하기 위한 방안에 관한 것이다.
서버리스 컴퓨팅은 어플리케이션을 제외한 모든 요소를 클라우드 제공자가 서비스 형태로서, 어플리케이션을 제외하고 물리적 인프라, 가상 머신, 컨테이너 그리고 통합적으로 관리하는 영역을 클라우드 제공자가 서비스하며, 사용자는 어플리케이션을 관리할 수 있다.
이 중 컨테이너는 가상 머신에 비해 훨씬 가벼운 가상화 기술로서, 어플리케이션 실행을 위한 모든 연관 요소(관련 라이브러리, 구성 파일 등)를 하나의 패키지로 구성하는 것을 지원함에 따라, 컨테이너의 생성 및 배포 시간을 단축시킬 수 있을 뿐만 아니라 재 기동 또한 빠르다는 장점을 가진다.
한편, 클라우드 환경에서 제공되는 대부분의 서비스는 컨테이너화된 어플리케이션을 자동으로 배포, 스케일링 및 관리해주는 오픈소스 시스템인 쿠버네티스(Kubernetes)의 기반의 서비스 아키텍쳐로 구성되어 있다.
때문에, 기존 클라우드 환경에서 제공되던 다양한 IT 서비스 및 기술을 모바일 네트워크의 엣지에서 제공하고자 하는 개념인 모바일엣지컴퓨팅(MEC, Mobile-Edge Computing) 환경에서도 이러한 쿠버네티스의 지원이 필수적이다.
이와 관련하여, 기존의 관리형 쿠버네티스(managed Kubernetes) 서비스는, 베어 메탈(BM, Bare Metal) 내 설치된 하이퍼바이저(Hypervisor)를 통해 가상 머신(VM, Virtual Machine)을 생성하고, 쿠버네티스 클러스터를 해당 가상 머신에 설치하는 방식으로 제공되고 있다.
그러나, 기존의 관리형 쿠버네티스 서비스에서는, 언더 클라우드(Under cloud)의 경우 가상 인프라 구축을 위한 베어 메탈로 구성되는 반면, 오버 클라우드(Over cloud)에는 쿠버네티스 클러스터가 컨테이너로 구성되는 관계로, 다양한 종류의 자원을 하나의 관리 패널에서 모니터링 및 제어하기에 어려움이 따른다.
본 발명은 상기한 사정을 감안하여 창출된 것으로서, 본 발명에서 도달하고자 하는 목적은 모바일엣지컴퓨팅(MEC, Mobile-Edge Computing) 기반의 관리형 쿠버네티스(managed Kubernetes) 서비스 구현 시 언더 클라우드(Under cloud)에 배치되는 가상 인프라의 형태를 오버 클라우드(Over cloud)와 일원화시켜 관리하는데 있다.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 가상자원운용장치는, 컨테이너화된 하이퍼바이저를 이용하여 워크로드 쿠버네티스에 대한 가상 머신을 생성하는 가상인프라제공부; 및 상기 가상 머신 내에 마스터 노드 및 상기 마스터 노드와 매칭되는 워커 노드를 포함한 형태로 상기 워크로드 쿠버네티스의 클러스터를 구축하는 클러스터제공부를 포함하는 것을 특징으로 한다.
구체적으로, 상기 가상자원운용장치는, 상기 마스터 노드에 대해서 워커 노드를 접속(Join)시켜 상기 워크로드 쿠버네티스를 서비스 가능한 상태로 활성화시키는 부트스트랩제공부를 더 포함할 수 있다.
구체적으로, 상기 가상인프라제공부는, 상기 컨테이너화된 하이퍼바이저를 파드(POD) 형태로 구성하고, 상기 하이퍼바이저를 이용하여 상기 가상 머신을 상기 파드 내에 생성할 수 있다.
구체적으로, 상기 클러스터는, 상기 워크로드 쿠버네티스에 대해 기 정의된 스펙에 따라 2 이상의 마스터 노드를 포함하며, 상기 클러스터제공부는, 2 이상의 마스터 노드에 대한 부하분산기, 및 상기 워크로드 쿠버네티스에 대한 방화벽을 추가로 생성하여 상기 클러스터 앞 단에 각각 배치시킬 수 있다.
구체적으로, 상기 가상자원운용장치는, 상기 부하분산기로 전송되는 하트비트(heart beat) 메시지를 이용하여 상기 워크로드 쿠버네티스에 대한 가용 상태 여부를 주기적으로 확인하는 클러스터상태확인부를 더 포함할 수 있다.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 가상자원운용장치의 동작 방법은, 컨테이너화된 하이퍼바이저를 이용하여 워크로드 쿠버네티스에 대한 가상 머신을 생성하는 가상인프라제공단계; 및 상기 가상 머신 내에 마스터 노드 및 상기 마스터 노드와 매칭되는 워커 노드를 포함한 형태로 상기 워크로드 쿠버네티스의 클러스터를 구축하는 클러스터제공단계를 포함하는 것을 특징으로 한다.
구체적으로, 상기 방법은, 상기 마스터 노드에 대해서 상기 워커 노드를 접속(Join)시켜 상기 워크로드 쿠버네티스를 서비스 가능한 상태로 활성화시키는 부트스트랩제공단계를 더 포함할 수 있다.
구체적으로, 상기 가상인프라제공단계는, 상기 컨테이너화된 하이퍼바이저를 파드(POD) 형태로 구성하고, 상기 하이퍼바이저를 이용하여 상기 가상 머신을 상기 파드 내에 생성할 수 있다.
구체적으로, 상기 클러스터는, 상기 워크로드 쿠버네티스에 대해 기 정의된 스펙에 따라 2 이상의 마스터 노드를 포함하며, 상기 클러스터제공단계는, 2 이상의 마스터 노드에 대한 부하분산기, 및 상기 워크로드 쿠버네티스에 대한 방화벽을 추가로 생성하여 상기 클러스터 앞 단에 각각 배치시킬 수 있다.
구체적으로, 상기 방법은, 상기 부하분산기로 전송되는 하트비트(heart beat) 메시지를 이용하여 상기 워크로드 쿠버네티스에 대한 가용 상태 여부를 주기적으로 확인하는 클러스터상태확인단계를 더 포함할 수 있다.
이에, 본 발명의 가상자원운용장치 및 가상자원운용장치의 동작 방법에 의하면, 모바일엣지컴퓨팅(MEC, Mobile-Edge Computing) 기반의 관리형 쿠버네티스(managed Kubernetes) 서비스 구현 시 언더 클라우드(Under cloud)의 가상 인프라를 오버 클라우드(Over cloud)의 워크로드 쿠버네티스와 마찬가지로 컨테이너 형태로 일원화시켜 관리함으로써, 쿠버네티스의 폐루프 제어(closed loop control) 활용한 E2E(End To End) 관리를 가능하게 한다.
도 1은 본 발명의 일 실시예에 따른 모바일엣지컴퓨팅 기반의 관리형 쿠버네티스 서비스 환경을 설명하기 위한 예시도.
도 2는 본 발명의 일 실시예에 따른 가상자원운용장치의 개략적인 구성도.
도 3은 본 발명의 일 실시예에 따른 가상 머신의 배치 형태를 설명하기 위한 예시도.
도 4는 본 발명의 일 실시예에 따른 가상인프라제공부의 개략적인 구성도.
도 5는 본 발명의 일 실시예에 따른 가상자원관리장치의 동작 방법을 설명하기 위한 순서도.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 대하여 설명한다.
본 발명의 일 실시예에서는, 모바일엣지컴퓨팅(MEC, Mobile-Edge Computing) 기반의 가상화 기술을 다룬다.
클라우드 환경에서 제공되는 대부분의 서비스는 컨테이너화된 어플리케이션을 자동으로 배포, 스케일링 및 관리해주는 오픈소스 시스템인 쿠버네티스(Kubernetes)의 기반의 서비스 아키텍쳐로 구성되어 있다.
때문에, 기존 클라우드 환경에서 제공되던 다양한 IT 서비스 및 기술을 모바일 네트워크의 엣지에서 제공하고자 하는 개념인 모바일엣지컴퓨팅 환경에서도 이러한 쿠버네티스의 지원이 필수적이다.
이와 관련하여, 기존의 관리형 쿠버네티스(managed Kubernetes) 서비스는, 베어 메탈(BM, Bare Metal) 내 설치된 하이퍼바이저(Hypervisor)를 통해 가상 머신(VM, Virtual Machine)을 생성하고, 쿠버네티스 클러스터를 해당 가상 머신에 설치하는 방식으로 제공되고 있다.
그러나, 기존의 관리형 쿠버네티스 서비스에서는, 언더 클라우드(Under cloud)의 경우 가상 인프라 구축을 위한 베어 메탈로 구성되는 반면, 오버 클라우드(Over cloud)에는 쿠버네티스 클러스터가 컨테이너로 구성되는 관계로, 다양한 종류의 자원을 하나의 관리 패널에서 모니터링 및 제어하기에 어려움이 따른다.
이에, 본 발명의 일 실시예에서는, 모바일엣지컴퓨팅 기반의 관리형 쿠버네티스 서비스 구현 시 언더 클라우드의 가상 인프라를 오버 클라우드와 동일한 형태로 일원화시켜 관리하는 방안을 제안하고자 하는 것이다.
이와 관련하여, 도 1에서는 본 발명의 일 실시예에 따른 모바일엣지컴퓨팅 기반의 관리형 쿠버네티스 서비스 환경을 보여주고 있다.
도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따른 모바일엣지컴퓨팅 기반의 관리형 쿠버네티스 서비스 환경에서는, 모바일엣지컴퓨팅오케스트레이터(10, MEO)로부터의 워크로드 쿠버네티스(Workload kubernetes) 생성 요청에 따라 모바일엣지플랫폼매니저(30, MEPM)가 호출되며, 모바일엣지플랫폼매니저(30)는 다시 가상화인프라매너저(40, VIM)를 호출하게 된다.
이에 따라, 가상화인프라매니저(40)는 MM6 인터페이스 통해서 가상자원운용장치(50)를 호출하며, 가상자원운용장치(50)는 이에 응답하여 워크로드 쿠버네티스(Workload kubernetes)에 대한 생성, 삭제, 및 업데이트 등 워크로드 쿠버네티스에 대한 전체 라이프 사이클을 관리하게 된다.
여기서, 워크로드 쿠버네티스는 특정 태넌트(tenant)에 할당한 관리형 쿠버네티스로서 일반적으로 가상 머신을 이용하여 구축되는 어플리케이션으로 이해될 수 있다.
이와 관련하여, 가상자원운용장치(50)는 오버 클라우드에 쿠버네티스 클라우드를 구축하며, 오버 클라우드를 설정하고 관리하는데 필요한 코어 구성 요소로 이루어진 언더 클라우드를 운용하는 컴포넌트인 것으로 이해될 수 있다.
한편, 본 발명의 일 실시예에 따른 모바일엣지컴퓨팅 기반의 관리형 쿠버네티스 서비스 환경에서는 전술한 구성 이외에, 가상화된 인프라에서 모바일엣지컴퓨팅어플리케이션을 실행하기 위해 필수적인 기능들을 포함하며 이를 모바일엣지컴퓨팅서비스(MEC service)에게 제공하는 모바일엣지컴퓨팅플랫폼(20, MEP)을 더 포함할 수 있다.
이상, 본 발명의 일 실시예에 따른 모바일엣지컴퓨팅 기반의 관리형 쿠버네티스 서비스 환경에서는, 전술한 구성을 기반으로 언더 클라우드의 가상 인프라를 오버 클라우드와 동일한 형태로 일원화시켜 관리할 수 있는데, 이하에서는 이를 실현하기 위한 가상자원운용장치(50)를 보다 구체적으로 설명하기로 한다.
도 2는 본 발명의 일 실시예에 따른 가상자원운용장치(50, Cluster Operator)의 구성을 개략적으로 보여주고 있다.
도 2에 도시된 바와 같이, 본 발명의 일 실시예에 따른 가상자원운용장치(50)는 가상 인프라 범주에 속하는 가상 자원을 생성하는 가상화인프라제공부(51, Virtual Infrastructure Provider), 및 워크로드 쿠버네티스의 클러스터를 생성하는 클러스터제공부(52, Cluster Provider)를 포함하는 구성을 가질 수 있다.
또한, 본 발명의 일 실시예에 따른 가상자원운용장치(50)는 전술한 구성 이외에, 워크로드 쿠버네티스의 클러스터 내 각 노드에 대한 클러스터링을 처리하는 부트스트랩제공부(53, Bootstrap Provider), 및 워크로드 쿠버네티스에 대한 정상 동작을 확인하는 클러스터상태확인부(54, Cluster Health Checker)를 더 포함하는 구성을 가질 수 있다.
이러한, 가상자원운용장치(50)의 전체 구성 내지는 적어도 일부의 구성은 하드웨어 모듈 형태 또는 소프트웨어 모듈 형태로 구현되거나, 내지는 하드웨어 모듈과 소프트웨어 모듈이 조합된 형태로도 구현될 수 있다.
여기서, 소프트웨어 모듈이란, 예컨대, 오버 클라우드에 쿠버네티스 클라우드를 구축하며, 오버 클라우드를 설정하고 관리하는데 필요한 코어 구성 요소로 이루어진 언더 클라우드를 운용하기 위한 컴포넌트인 것으로 이해될 수 있다.
이상 본 발명의 일 실시예에 따른 가상자원운용장치(50)는 전술한 구성을 통해서 언더 클라우드의 가상 인프라를 오버 클라우드와 동일한 형태로 일원화시켜 관리할 수 있는데, 이하에서는 이를 실현하기 위한 가상자원운용장치(50) 내 각 구성에 대해 보다 구체적인 설명을 이어 가기로 한다.
가상인프라제공부(51)는 워크로드 쿠버네티스에 대한 가상 자원을 생성하는 기능을 수행한다.
보다 구체적으로, 가상인프라제공부(51)는 컨테이너화된 하이퍼바이저(Hypervisor)를 이용하여 워크로드 쿠버네티스(Workload kubernetes)에 대한 가상 머신을 생성하게 된다.
이때, 가상인프라제공부(51)는 예컨대, 도 3에서와 같이 시스템 쿠버네티스(System kubernetes)를 이용하여 컨테이너화된 하이퍼바이저(Containerized Hypervisor)를 파드(POD) 형태로 올리고, 해당 파드 내에 워크로드 쿠버네티스를 동작시키기 위한 가상 머신(Virtual Machine)을 다시 생성할 수 있다.
이처럼, 본 발명의 일 실시예에서 컨테이너화된 하이퍼바이저를 이용하여 가상 머신을 생성하는 방식은, 베어 메탈(BM, Bare Metal) 내 설치된 하이퍼바이저를 직접 호출하여 가상 머신을 생성하는 기존 방식과는 크게 구분되고 있음을 확인할 수 있다.
다만, 워크로드 쿠버네티스가 정상으로 동작하기 위해서는, 가상 머신을 필수 요소이고, 가상 네트워크 생성, 워크로드 쿠버네티스를 담을 가상 디스크, 워크로드 쿠버네티스 접속을 위한 키 패어(key pair), 및 워크로드 쿠버네티스가 사전 탑재(pre-built)된 가상 이미지 자원을 필요로 한다.
이에, 가상인프라제공부(51)는 워크로드 쿠버네티스의 정상 동작을 지원하기 위한 가상 인프라로서 워크로드 쿠버네티스에 대한 가상 머신뿐만 아니라, 가상 네트워크, 가상 디스크, 및 키 페어, 그리고 가상 이미지 자원을 추가적으로 생성한다.
한편, 가상인프라제공부(51)는 이와 같은 가상 인프라 구축을 위해서, 예컨대, 도 4에서와 같이 가상 머신의 생성을 위한 가상머신관리모듈(Virtual Machine Manager), 가상 네트워크의 생성을 위한 가상네트워크관리모듈(Virtual Network Manager), 가상 디스크의 생성을 위한 볼륨관리모듈(Volume Manager), 키 패어(key pair)의 생성을 위한 키패어관리모듈(Keypair Manager), 및 가상 이미지 자원의 생성을 위한 이미지관리모듈(Image Manager)을 포함할 수 있다.
클러스터제공부(52)는 워크로드 쿠버네티스의 클러스터를 구축하는 기능을 수행한다.
보다 구체적으로, 클러스터제공부(52)는 워크로드 쿠버네티스에 대해 가상 머신이 생성되면, 워크로드 쿠버네티스에 대해 기 정의된 스펙을 따르는 워크로드 쿠버네티스의 클러스터를 가상 머신 내에 구축하게 된다.
여기서, 가상 머신 내에 구축되는 워크로드 쿠버네티스의 클러스터에는, 워크로드 쿠버네티스 클러스터 전체를 컨트롤하는 마스터 노드와 이러한 마스터 노드에 의해 명령을 받고 실제 워크로드를 생성하여 서비스하는 여러 대의 워커노드가 포함될 수 있다.
특히, 워크로드 쿠버네티스의 클러스터 내 마스터 노드의 경우, 부하 분산을 목적으로 2 이상으로 구축될 수 있다.
다시 말해, 본 발명의 일 실시예에 따른 워커로드 쿠버네티스의 클러스터의 경우, 2 이상의 마스터 노드와 이러한 2 이상의 마스터 노드 각각에 조인되는 여러 대의 워커 노드를 포함하는 형태로 구축될 수 있는 것이다.
이와 관련하여, 클러스터제공부(52)는 워커로드 쿠버네티스의 HA(High Availability)를 지원하기 위해 2 이상의 마스터 노드에 대한 부하분산기, 및 상기 워크로드 쿠버네티스에 대한 방화벽을 클러스터 단위로 추가로 생성하고, 이를 클러스터 앞 단에 배치시킬 수 있다.
부트스트랩제공부(53)는 워크로드 쿠버네티스를 서비스 가능한 상태로 활성화시키는 기능을 수행한다.
보다 구체적으로, 부트스트랩제공부(53)는 가상 머신 내에 워크로드 쿠버네티스의 클러스터가 구축되면, 해당 클러스터의 마스터 노드에 대해서 워커 노드를 접속(Join)시켜 워크로드 쿠버네티스를 서비스 가능한 상태로 활성화시키게 된다.
이때, 부트스트랩제공부(53)는 마스터 노드가 가용한 상태라는 가정 하에 키패어관리모듈(Keypair Manager)에 의해 생성된 인증 키(key pair)를 이용하여 마스터 노드에 접속 후 마스터 노드 내 쿠버네티스 컴포넌트들을 모두 실행한다.
여기서, 마스터 노드 내 쿠버네티스 컴포넌트에는, 큐블릿(kublet), 컨테이너 런타임(container Runtime), 컨테이너 네트워크 인터페이스(CNI), 컨트롤러(controller), 및 스케쥴러(scheduler) 등이 포함될 수 있다.
나아가, 부트스트랩제공부(53)는 마스터 노드 내 쿠버네티스 컴포넌트들이 모두 시작되어 외부 접속(Join)을 수신 받을 수 있는 상태가 되면, 각 워커 노드에 접속하여 해당 워커 노드를 인증 키(key pair)를 기반으로 마스터 노드에 접속시켜 워크로드 쿠버네티스를 서비스 가능한 상태로 활성화시킬 수 있다.
클러스터상태확인부(54)는 워크로드 쿠버네티스에 대한 가용 상태 여부를 확인하는 기능을 수행한다
보다 구체적으로, 클러스터상태확인부(54)는 하트비트(heart beat) 메시지를 이용하여 워크로드 쿠버네티스에 대한 가용 상태 여부를 주기적으로 확인하게 된다.
이때, 클러스터상태확인부(54)는 워크로드 쿠버네티스의 클러스터 앞 단에 배치된 부하분산기로 하트비트(heart beat) 메시지를 주기적으로 전송하고, 이에 대한 응답 여부로부터 워크로드 쿠버네티스에 대한 가용 상태 여부를 확인할 수 있다.
이와 관련하여, 클러스터상태확인부(54)는 하트비트(heart beat) 메시지에 대한 응답이 수신되지 않는 경우, 워크로드 쿠버네티스에 대한 불가용 상태를 확인하여 이에 대한 알람을 발생시킬 수 있음은 물론이다.
이상에서 살펴본 바와 같이 본 발명의 일 실시예에 따른 가상자원운용장치(50)의 구성에 따르면, 모바일엣지컴퓨팅(MEC, Mobile-Edge Computing) 기반의 관리형 쿠버네티스(managed Kubernetes) 서비스 구현 시 언더 클라우드(Under cloud)의 가상 인프라를 오버 클라우드(Over cloud)의 워크로드 쿠버네티스와 마찬가지로 컨테이너 형태로 일원화시켜 관리함으로써, 쿠버네티스의 폐루프 제어(closed loop control) 활용한 E2E(End To End) 관리를 가능하게 함을 알 수 있다.
이하에서는, 도 5를 참조하여, 본 발명의 일 실시예에 따른 가상자원관리장치(50)의 동작 방법을 설명하기로 한다.
먼저, 가상인프라제공부(51)는 컨테이너화된 하이퍼바이저(Hypervisor)를 이용하여 워크로드 쿠버네티스(Workload kubernetes)에 대한 가상 머신을 생성한다(S10-S20).
이때, 가상인프라제공부(51)는 앞서 예시한, 도 3에서와 같이 시스템 쿠버네티스(System kubernetes)를 이용하여 컨테이너화된 하이퍼바이저(Containerized Hypervisor)를 파드(POD) 형태로 올리고, 해당 파드 내에 워크로드 쿠버네티스를 동작시키기 위한 가상 머신(Virtual Machine)을 다시 생성할 수 있다.
이처럼, 본 발명의 일 실시예에서 컨테이너화된 하이퍼바이저를 이용하여 가상 머신을 생성하는 방식은, 베어 메탈(BM, Bare Metal) 내 설치된 하이퍼바이저를 직접 호출하여 가상 머신을 생성하는 기존 방식과는 크게 구분되고 있음을 확인할 수 있다.
다만, 워크로드 쿠버네티스가 정상으로 동작하기 위해서는, 가상 머신을 필수 요소이고, 가상 네트워크 생성, 워크로드 쿠버네티스를 담을 가상 디스크, 워크로드 쿠버네티스 접속을 위한 키 패어(key pair), 및 워크로드 쿠버네티스가 프리빌트(pre-built)된 가상 이미지 자원을 필요로 한다.
이에, 가상인프라제공부(51)는 워크로드 쿠버네티스의 정상 동작을 지원하기 위해 앞서 예시한 도 4에서와 같은, 가상머신관리모듈(Virtual Machine Manager)을 통해 가상 머신을 생성하며, 또한 가상네트워크관리모듈(Virtual Network Manager)을 통해 가상 네트워크를 생성하며, 또한 볼륨관리모듈(Volume Manager)을 통해 가상 디스크를 생성하며, 또한 키패어관리모듈(Keypair Manager)을 통해 키 페어를 생성하며, 그리고 이미지관리모듈(Image Manager)을 통해 가상 이미지 자원을 생성한다.
그리고 나서, 클러스터제공부(52)는 워크로드 쿠버네티스에 대해 가상 머신이 생성되면, 워크로드 쿠버네티스에 대해 기 정의된 스펙을 따르는 워크로드 쿠버네티스의 클러스터를 가상 머신 내에 구축한다(S30).
여기서, 가상 머신 내에 구축되는 워크로드 쿠버네티스의 클러스터에는, 워크로드 쿠버네티스 클러스터 전체를 컨트롤하는 마스터 노드와 이러한 마스터 노드에 의해 명령을 받고 실제 워크로드를 생성하여 서비스하는 여러 대의 워커노드가 포함될 수 있다.
특히, 워크로드 쿠버네티스의 클러스터 내 마스터 노드의 경우, 부하 분산을 목적으로 2 이상으로 구축될 수 있다.
다시 말해, 본 발명의 일 실시예에 따른 워커로드 쿠버네티스의 클러스터의 경우, 2 이상의 마스터 노드와 이러한 2 이상의 마스터 노드 각각에 조인되는 여러 대의 워커 노드를 포함하는 형태로 구축될 수 있는 것이다.
이와 관련하여, 클러스터제공부(52)는 워커로드 쿠버네티스의 HA(High Availability)를 지원하기 위해 2 이상의 마스터 노드에 대한 부하분산기, 및 상기 워크로드 쿠버네티스에 대한 방화벽을 클러스터 단위로 추가로 생성하고, 이를 클러스터 앞 단에 배치시킨다(S40).
나아가, 클러스터상태확인부(54)는 하트비트(heart beat) 메시지를 이용하여 워크로드 쿠버네티스에 대한 가용 상태 여부를 주기적으로 확인한다(S50).
이때, 클러스터상태확인부(54)는 워크로드 쿠버네티스의 클러스터 앞 단에 배치된 부하분산기로 하트비트(heart beat) 메시지를 주기적으로 전송하고, 이에 대한 응답 여부로부터 워크로드 쿠버네티스에 대한 가용 상태 여부를 확인할 수 있다.
이와 관련하여, 클러스터상태확인부(54)는 하트비트(heart beat) 메시지에 대한 응답이 수신되지 않는 경우, 워크로드 쿠버네티스에 대한 불가용 상태를 확인하여 이에 대한 알람을 발생시킬 수 있음은 물론이다(S60-S70).
이후, 부트스트랩제공부(53)는 마스터 노드가 가용한 상태라는 가정 하에 가상 머신 내에 워크로드 쿠버네티스의 클러스터가 구축되면, 해당 클러스터의 마스터 노드에 대해서 워커 노드를 접속(Join)시켜 워크로드 쿠버네티스를 서비스 가능한 상태로 활성화시킨다(S80-S90).
이때, 부트스트랩제공부(53)는 키패어관리모듈(Keypair Manager)에 의해 생성된 인증 키(key pair)를 이용하여 마스터 노드에 접속 후 마스터 노드 내 쿠버네티스 컴포넌트들을 모두 실행한다.
여기서, 마스터 노드 내 쿠버네티스 컴포넌트에는, 큐블릿(kublet), 컨테이너 런타임(container Runtime), 컨테이너 네트워크 인터페이스(CNI), 컨트롤러(controller), 및 스케쥴러(scheduler) 등이 포함될 수 있다.
나아가, 부트스트랩제공부(53)는 마스터 노드 내 쿠버네티스 컴포넌트들이 모두 시작되어 외부 접속(Join)을 수신 받을 수 있는 상태가 되면, 각 워커 노드에 접속하여 해당 워커 노드를 인증 키(key pair)를 기반으로 마스터 노드에 접속시켜 워크로드 쿠버네티스를 서비스 가능한 상태로 활성화시킬 수 있다.
이상에서 살펴본 바와 같이 본 발명의 일 실시예에 따른 가상자원운용장치(50)의 동작 방법에 따르면, 모바일엣지컴퓨팅(MEC, Mobile-Edge Computing) 기반의 관리형 쿠버네티스(managed Kubernetes) 서비스 구현 시 언더 클라우드(Under cloud)의 가상 인프라를 오버 클라우드(Over cloud)의 워크로드 쿠버네티스와 마찬가지로 컨테이너 형태로 일원화시켜 관리함으로써, 쿠버네티스의 폐루프 제어(closed loop control) 활용한 E2E(End To End) 관리를 가능하게 함을 알 수 있다.
한편, 본 발명의 일 실시예에 따른 동작 방법은, 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
지금까지 본 발명을 바람직한 실시 예를 참조하여 상세히 설명하였지만, 본 발명이 상기한 실시 예에 한정되는 것은 아니며, 이하의 특허청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변형 또는 수정이 가능한 범위까지 본 발명의 기술적 사상이 미친다 할 것이다.
본 발명에 따른 가상자원운용장치 및 가상자원운용장치의 동작 방법에 따르면, 모바일엣지컴퓨팅(MEC, Mobile-Edge Computing) 기반의 관리형 쿠버네티스(managed Kubernetes) 서비스 구현 시 언더 클라우드(Under cloud)에 배치되는 가상 인프라의 형태를 오버 클라우드(Over cloud)와 일원화시켜 관리할 수 있다는 점에서 기존 기술의 한계를 뛰어 넘음에 따라 관련 기술에 대한 이용만이 아닌 적용되는 장치의 시판 또는 영업의 가능성이 충분할 뿐만 아니라 현실적으로 명백하게 실시할 수 있는 정도이므로 산업상 이용가능성이 있는 발명이다.
10: 모바일엣지컴퓨팅오케스트레이터
20: 모바일엣지컴퓨팅플랫폼
30: 모바일엣지플랫폼매니저
40: 가상화인프라매너저
50: 가상자원운용장치
51: 가상화인프라제공부 52: 클러스터제공부
53: 부트스트랩제공부 54: 클러스터상태확인부

Claims (10)

  1. 컨테이너화된 하이퍼바이저를 이용하여 워크로드 쿠버네티스에 대한 가상 머신을 생성하는 가상인프라제공부; 및
    상기 가상 머신 내에 마스터 노드 및 상기 마스터 노드와 매칭되는 워커 노드를 포함한 형태로 상기 워크로드 쿠버네티스의 클러스터를 구축하는 클러스터제공부를 포함하는 것을 특징으로 하는 가상자원운용장치.
  2. 제 1 항에 있어서,
    상기 가상자원운용장치는,
    상기 마스터 노드에 대해서 상기 워커 노드를 접속(Join)시켜 상기 워크로드 쿠버네티스를 서비스 가능한 상태로 활성화시키는 부트스트랩제공부를 더 포함하는 것을 특징으로 하는 가상자원운용장치.
  3. 제 1 항에 있어서,
    상기 가상인프라제공부는,
    상기 컨테이너화된 하이퍼바이저를 파드(POD) 형태로 구성하고, 상기 하이퍼바이저를 이용하여 상기 가상 머신을 상기 파드 내에 생성하는 것을 특징으로 하는 가상자원운용장치.
  4. 제 1 항에 있어서,
    상기 클러스터는,
    상기 워크로드 쿠버네티스에 대해 기 정의된 스펙에 따라 2 이상의 마스터 노드를 포함하며,
    상기 클러스터제공부는,
    상기 2 이상의 마스터 노드에 대한 부하분산기, 및 상기 워크로드 쿠버네티스에 대한 방화벽을 추가로 생성하여 상기 클러스터 앞 단에 각각 배치시키는 것을 특징으로 하는 가상자원운용장치.
  5. 제 4 항에 있어서,
    상기 가상자원운용장치는,
    상기 부하분산기로 전송되는 하트비트(heart beat) 메시지를 이용하여 상기 워크로드 쿠버네티스에 대한 가용 상태 여부를 주기적으로 확인하는 클러스터상태확인부를 더 포함하는 것을 특징으로 하는 가상자원운용장치.
  6. 컨테이너화된 하이퍼바이저를 이용하여 워크로드 쿠버네티스에 대한 가상 머신을 생성하는 가상인프라제공단계; 및
    상기 가상 머신 내에 마스터 노드 및 상기 마스터 노드와 매칭되는 워커 노드를 포함한 형태로 상기 워크로드 쿠버네티스의 클러스터를 구축하는 클러스터제공단계를 포함하는 것을 특징으로 하는 가상자원운용장치의 동작 방법.
  7. 제 6 항에 있어서,
    상기 방법은,
    상기 마스터 노드에 대해서 상기 워커 노드를 접속(Join)시켜 상기 워크로드 쿠버네티스를 서비스 가능한 상태로 활성화시키는 부트스트랩제공단계를 더 포함하는 것을 특징으로 하는 가상자원운용장치의 동작 방법.
  8. 제 6 항에 있어서,
    상기 가상인프라제공단계는,
    상기 컨테이너화된 하이퍼바이저를 파드(POD) 형태로 구성하고, 상기 하이퍼바이저를 이용하여 상기 가상 머신을 상기 파드 내에 생성하는 것을 특징으로 하는 가상자원운용장치의 동작 방법.
  9. 제 6 항에 있어서,
    상기 클러스터는,
    상기 워크로드 쿠버네티스에 대해 기 정의된 스펙에 따라 2 이상의 마스터 노드를 포함하며,
    상기 클러스터제공단계는
    상기 2 이상의 마스터 노드에 대한 부하분산기, 및 상기 워크로드 쿠버네티스에 대한 방화벽을 추가로 생성하여 상기 클러스터 앞 단에 각각 배치시키는 것을 특징으로 하는 가상자원운용장치의 동작 방법.
  10. 제 9 항에 있어서,
    상기 방법은,
    상기 부하분산기로 전송되는 하트비트(heart beat) 메시지를 이용하여 상기 워크로드 쿠버네티스에 대한 가용 상태 여부를 주기적으로 확인하는 클러스터상태확인단계를 더 포함하는 것을 특징으로 하는 가상자원운용장치의 동작 방법.
KR1020210143880A 2021-10-26 2021-10-26 가상자원운용장치 및 가상자원운용장치의 동작 방법 KR20230059569A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210143880A KR20230059569A (ko) 2021-10-26 2021-10-26 가상자원운용장치 및 가상자원운용장치의 동작 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210143880A KR20230059569A (ko) 2021-10-26 2021-10-26 가상자원운용장치 및 가상자원운용장치의 동작 방법

Publications (1)

Publication Number Publication Date
KR20230059569A true KR20230059569A (ko) 2023-05-03

Family

ID=86380513

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210143880A KR20230059569A (ko) 2021-10-26 2021-10-26 가상자원운용장치 및 가상자원운용장치의 동작 방법

Country Status (1)

Country Link
KR (1) KR20230059569A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116887357A (zh) * 2023-09-08 2023-10-13 山东海博科技信息系统股份有限公司 基于人工智能的计算平台管理系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116887357A (zh) * 2023-09-08 2023-10-13 山东海博科技信息系统股份有限公司 基于人工智能的计算平台管理系统
CN116887357B (zh) * 2023-09-08 2023-12-19 山东海博科技信息系统股份有限公司 基于人工智能的计算平台管理系统

Similar Documents

Publication Publication Date Title
US10719367B1 (en) Management of workers executing program code functions
US9661071B2 (en) Apparatus, systems and methods for deployment and management of distributed computing systems and applications
US10198281B2 (en) Hybrid infrastructure provisioning framework tethering remote datacenters
US20200053185A1 (en) Deploying an application in a multiple cloud computing environments
US10656983B2 (en) Methods and apparatus to generate a shadow setup based on a cloud environment and upgrade the shadow setup to identify upgrade-related errors
CN107534571B (zh) 用于管理虚拟网络功能的方法、系统和计算机可读介质
Vögler et al. LEONORE--large-scale provisioning of resource-constrained IoT deployments
US9471331B2 (en) Maintaining resource availability during maintenance operations
US9678784B2 (en) Temporal dynamic virtual machine policies
JP6058628B2 (ja) マルチノードアプリケーションのデプロイメント・システム
US11121906B2 (en) Data plane API in a distributed computing network
US20180136951A1 (en) Policy enabled application-release-management subsystem
CN108089913A (zh) 一种超融合系统的虚拟机部署方法
Carrasco et al. Live migration of trans-cloud applications
KR20230059569A (ko) 가상자원운용장치 및 가상자원운용장치의 동작 방법
Escaleira et al. Multi-access edge computing as a service
US20230229482A1 (en) Autonomous cluster control plane in a virtualized computing system
CN115202820A (zh) Pod单元的创建方法、装置、设备及存储介质
Pino Martínez Validation and Extension of Kubernetes-based Network Functions (KNFs) in OSM for Cloud Native (CN) applications in 5G and beyond
US20230229478A1 (en) On-boarding virtual infrastructure management server appliances to be managed from the cloud
Pham et al. Flexible deployment of component-based distributed applications on the Cloud and beyond
Bellavista et al. Automated provisioning of saas applications over iaas-based cloud systems
US20240020218A1 (en) End-to-end testing in a multi-cloud computing system
Ranganathan A highly-available and scalable microservice architecture for access management
Calatrava et al. Virtual hybrid elastic clusters in the cloud

Legal Events

Date Code Title Description
E902 Notification of reason for refusal