KR102439056B1 - 노드 레이블링 방법 및 장치 - Google Patents

노드 레이블링 방법 및 장치 Download PDF

Info

Publication number
KR102439056B1
KR102439056B1 KR1020200159169A KR20200159169A KR102439056B1 KR 102439056 B1 KR102439056 B1 KR 102439056B1 KR 1020200159169 A KR1020200159169 A KR 1020200159169A KR 20200159169 A KR20200159169 A KR 20200159169A KR 102439056 B1 KR102439056 B1 KR 102439056B1
Authority
KR
South Korea
Prior art keywords
value
node
pod
metric
information
Prior art date
Application number
KR1020200159169A
Other languages
English (en)
Other versions
KR20220071719A (ko
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 KR1020200159169A priority Critical patent/KR102439056B1/ko
Publication of KR20220071719A publication Critical patent/KR20220071719A/ko
Application granted granted Critical
Publication of KR102439056B1 publication Critical patent/KR102439056B1/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/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • 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/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • 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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • 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

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)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Debugging And Monitoring (AREA)
  • Analysing Materials By The Use Of Radiation (AREA)

Abstract

노드 레이블링 방법 및 장치가 제공된다. 레이블링 장치가, 쿠버네티스 클러스터의 노드로부터 파드 작동에 대한 정보를 수신한다. 상기 정보는 파드 작동에 따라 노드의 물리적 상태와 환경을 나타내는 상태 변수별 메트릭값을 포함하는 파드 메트릭 정보와 노드의 파드 실패 정보를 포함한다. 레이블링 장치는 수신된 정보에 대한 전처리를 수행하여, 노드에 대하여, 파드 메트릭 정보에 포함된 상태 변수별 메트릭 차이값과 파드 실패 정보에 대응하는 노드 실패 값을 획득하고, 이들을 미리 학습된 신경망 모델에 입력시켜, 대응하는 신뢰성 지표를 획득한다. 그리고 신뢰성 지표를 기반으로 노드의 레이블을 업데이트한다.

Description

노드 레이블링 방법 및 장치{Method and apparatus for node labeling}
본 발명은 쿠버네티스(kubernetes) 클러스터에 관한 것으로, 더욱 상세하게 말하자면, 쿠버네티스 클러스터의 노드에 대한 레이블링을 수행하는 방법 및 장치에 관한 것이다.
쿠버네티스는 컨테이너화된 워크로드와 서비스를 관리하기 위한 이식성이 있고, 확장가능한 오픈소스 플랫폼이다. 클러스터란 여러 대의 컴퓨터를 하나의 묶음으로 취급하는걸 의미하며, 쿠버네티스 클러스터는 크게 마스터 노드와 워커 노드로 구성된다. 마스터 노드는 쿠버네티스의 설정 환경을 저장하고 전체 클러스터를 관리하는 역할을 담당한다. 워커 노드는 컨테이너 애플리케이션이 작동하는 서버로서, 서버에 의해 명령을 받고 실제 워크로드를 생성함으로써, 서비스가 실행된다.
쿠버네티스 클러스터를 운용하는 경우 쿠버네티스 노드로 동작하는 하드웨어의 물리적인 상태와 환경이 변동하게 된다. 노드 레이블링과 어피니티(Affinity) 기능으로 노드의 특성을 구분하여 특정 노드를 선택하게 할 수 있다. 그러나 이 경우, 정적인 노드 선택만이 가능하다.
본 발명이 해결하고자 하는 과제는, 쿠버네티스 클러스터를 구성하는 노드들의 상태에 따라 동적으로 레이블을 할당하는 노드 레이블링 방법 및 장치를 제공하는 것이다.
본 발명의 실시 예에 따르면, 쿠버네티스 클러스터의 노드에 대한 레이블링을 수행하는 방법이 제공된다. 상기 방법은, 레이블링 장치가, 상기 노드로부터 파드(pod) 작동에 대한 정보 - 상기 정보는 파드 작동에 따라 상기 노드의 물리적 상태와 환경을 나타내는 상태 변수별 메트릭값을 포함하는 파드 메트릭 정보와, 노드의 파드 실패 정보를 포함함 - 를 수신하는 단계; 상기 레이블링 장치가, 상기 수신된 정보에 대한 전처리를 수행하여, 상기 노드에 대하여, 상기 파드 메트릭 정보에 포함된 상태 변수별 메트릭 차이값과 상기 파드 실패 정보에 대응하는 노드 실패 값을 획득하는 단계; 상기 레이블링 장치가, 상기 상태 변수별 메트릭 차이값과 상기 노드 실패 값을 미리 학습된 신경망 모델에 입력시켜, 대응하는 신뢰성 지표를 획득하는 단계; 및 상기 레이블링 장치가, 상기 신뢰성 지표를 기반으로 상기 노드의 레이블을 업데이트하는 단계를 포함한다.
일 구현 예에서, 상기 상태 변수는 CPU(central processing unit) 부하, 트래픽, 메모리 사용량 중 적어도 하나를 포함할 수 있다.
일 구현 예에서, 상기 메트릭 차이값은 최대값 대비값과 평균값 대비값을 포함하고, 상기 최대값 대비값은 파드들의 메트릭값 중 최대값 대비 임의 파드의 메트릭 값의 비율 값이고, 상기 평균값 대비값은 파드들의 메트릭값의 평균값 대비 임의 파드의 메트릭 값의 비율 값일 수 있다.
일 구현 예에서, 상기 신뢰성 지표를 획득하는 단계는, CPU 부하에 대한 최대값 대비값과 CPU 부하에 대한 평균값 대비값, 메모리 사용량에 대한 최대값 대비값과 메모리 사용량에 대한 평균값 대비값, 트래픽에 대한 최대값 대비값과 트래픽에 대한 평균값 대비값 그리고, 노드 실패값을 상기 미리 학습된 신경망 모델에 입력시켜, 대응하는 신뢰성 지표를 획득할 수 있다.
일 구현 예에서, 상기 메트릭 차이값은 상기 쿠버네티스 클러스터를 구성하는 노드들에서 동일 서비스를 제공하는 프로세스가 동작하는 파드들로부터의 메트릭값을 기반으로 획득될 수 있다.
일 구현 예에서, 상기 노드 실패 값을 획득하는 단계는, 상기 메트릭 차이값이 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1 중 하나의 값을 가지도록 처리하는 단계를 더 포함할 수 있다.
일 구현 예에서, 상기 노드의 레이블을 업데이트하는 단계는, 상기 노드에 지정된 초기 레이블을 상기 획득된 신뢰성 지표에 대응하는 레이블로 업데이트하는 단계; 및 상기 업데이트된 레이블을 상기 쿠버네티스 클러스터의 마스터 노드에 전달하는 단계를 포함할 수 있다.
일 구현 예에서, 상기 신뢰성 지표의 값이 낮을수록 노드의 신뢰성이 높음을 나타낼 수 있다.
본 발명의 다른 실시 예에 따르면, 쿠버네티스 클러스터의 노드에 대한 레이블링을 수행하는 장치가 제공된다. 상기 장치는, 상기 노드와 송수신을 수행하도록 구성된 인터페이스 장치; 및 상기 인터페이스 장치를 통해 수신되는 정보를 기반으로 노드 레이블링을 수행하도록 구성된 프로세서를 포함하며, 상기 프로세서는, 상기 인터페이스 장치를 통해 상기 노드로부터 파드 작동에 대한 정보 - 상기 정보는 파드 작동에 따라 상기 노드의 물리적 상태와 환경을 나타내는 상태 변수별 메트릭값을 포함하는 파드 메트릭 정보와, 노드의 파드 실패 정보를 포함함 - 를 획득하는 동작; 상기 수신된 정보에 대한 전처리를 수행하여, 상기 노드에 대하여, 상기 파드 메트릭 정보에 포함된 상태 변수별 메트릭 차이값과 상기 파드 실패 정보에 대응하는 노드 실패 값을 획득하는 동작; 상기 상태 변수별 메트릭 차이값과 상기 노드 실패 값을 미리 학습된 신경망 모델에 입력시켜, 대응하는 신뢰성 지표를 획득하는 동작; 및 상기 신뢰성 지표를 기반으로 상기 노드의 레이블을 업데이트하는 동작을 수행하도록 구성된다.
일 구현 예에서, 상기 상태 변수는 CPU(central processing unit) 부하, 트래픽, 메모리 사용량 중 적어도 하나를 포함할 수 있다.
일 구현 예에서, 상기 메트릭 차이값은 최대값 대비값과 평균값 대비값을 포함하고, 상기 최대값 대비값은 파드들의 메트릭값 중 최대값 대비 임의 파드의 메트릭 값의 비율 값이고, 상기 평균값 대비값은 파드들의 메트릭값의 평균값 대비 임의 파드의 메트릭 값의 비율 값일 수 있다.
일 구현 예에서, 상기 프로세서는 상기 신뢰성 지표를 획득하는 동작 수행시, CPU 부하에 대한 최대값 대비값과 CPU 부하에 대한 평균값 대비값, 메모리 사용량에 대한 최대값 대비값과 메모리 사용량에 대한 평균값 대비값, 트래픽에 대한 최대값 대비값과 트래픽에 대한 평균값 대비값 그리고, 노드 실패값을 상기 미리 학습된 신경망 모델에 입력시켜, 대응하는 신뢰성 지표를 획득하도록 구성될 수 있다.
일 구현 예에서, 상기 메트릭 차이값은 상기 쿠버네티스 클러스터를 구성하는 노드들에서 동일 서비스를 제공하는 프로세스가 작동하는 파드들로부터의 메트릭값을 기반으로 획득될 수 있다.
일 구현 예에서, 상기 프로세서는 상기 노드 실패 값을 획득하는 동작 수행시, 상기 메트릭 차이값이 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1 중 하나의 값을 가지도록 처리하는 동작을 추가적으로 수행하도록 구성될 수 있다.
일 구현 예에서, 상기 프로세서는 상기 노드의 레이블을 업데이트하는 동작 수행시, 상기 노드에 지정된 초기 레이블을 상기 획득된 신뢰성 지표에 대응하는 레이블로 업데이트하는 동작; 및 상기 업데이트된 레이블을 상기 쿠버네티스 클러스터의 마스터 노드에 전달하는 동작을 수행하도록 구성될 수 있다.
실시 예들에 따르면, 쿠버네티스 클러스터에서 노드에서 동작하는 파드로부터 획득되는 정보를 기반으로 실시간으로 해당 노드의 신뢰성 지표를 획득할 수 있다. 이에 따라, 노드에서 생성된 파드가 제대로 동작하지 않거나, 동일한 서비스를 처리하는 다른 노드에 생성한 파드에 비해 비정상적인 상황을 유발하는 등의 문제가 있다고 판단되는 노드를 인지할 수 있으며, 또한 문제가 있다고 판단되는 노드를 미리 서비스에서 제외시키거나 사용을 최소한으로 줄여서, 보다 안정적인 서비스가 제공되도록 할 수 있다.
도 1은 본 발명의 실시 예에 따른 쿠버네티스 클러스터의 구조를 나타낸 도이다.
도 2는 본 발명의 실시 예에 따른 노드 레이블링 장치의 구조를 나타낸 도이다.
도 3은 본 발명의 실시 예에 따른 신경망 모델을 통해 획득되는 결과를 나타낸 예시도이다.
도 4는 본 발명의 실시 예에 따른 노드 레이블링 방법의 흐름도이다.
도 5는 본 발명의 실시 예에 따른 노드 레이블링 방법을 구현하기 위한 컴퓨팅 장치를 설명하기 위한 구조도이다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시 예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성 요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
본 명세서에서 단수로 기재된 표현은 "하나" 또는 "단일" 등의 명시적인 표현을 사용하지 않은 이상, 단수 또는 복수로 해석될 수 있다.
또한, 본 발명의 실시 예에서 사용되는 제1, 제2 등과 같이 서수를 포함하는 용어는 구성 요소들을 설명하는데 사용될 수 있지만, 구성 요소들은 용어들에 의해 한정되어서는 안 된다. 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성 요소는 제2 구성 요소로 명명될 수 있고, 유사하게 제2 구성 요소도 제1 구성 요소로 명명될 수 있다.
이하, 도면을 참조하여 본 발명의 실시 예에 따른 노드 레이블링 방법 및 장치에 대하여 설명한다.
도 1은 본 발명의 실시 예에 따른 쿠버네티스 클러스터의 구조를 나타낸 도이다.
쿠버네티스 클러스터는 도 1에서와 같이, 컨테이너화된 애플리케이션을 실행하는 복수의 노드(11, 12, 13, 대표 번호 10을 부여함)와, 노드와 클러스터내 파드를 관리하는 마스터 노드(20)를 포함한다.
마스터 노드(20)는 노드(10)를 제어하고 전체 클러스터를 관리하는 컨트롤러 또는 서버이다.
노드(10)는 컨테이너가 배포될 물리 서버 또는 가상 머신이며, 애플리케이션의 구성요소인 파드(pod)를 호스트한다. 노드(10)는 워커 노드라고도 지칭된다.
이러한 쿠버네티스 클러스터에서, 하나의 컨테이너를 개별적으로 배포하는 것이 아니라 파드 단위로 배포한다. 하나의 파드안에는 하나 이상의 컨테이너가 포함될 수 있으며, 이에 한정되는 것은 아니다.
쿠버네티스 클러스터를 통해 서비스를 운용하는 경우, 파드를 특정 노드(들)에게만 동작하도록 하거나, 특정 노드들을 선호하도록 제한할 수 있다. 이를 위해, 노드에 특정 레이블(label)을 지정해서 원하는 조건 비교를 통해 특정 노드에 파드가 생성되도록 한다.
그러나 일반적으로 하드웨어로(서버) 구성된 노드는 해당 머신의 NIC(network interface card)나 연결된 네트워크 스위치 및 장비(서버)의 상태(Power, Ram, HDD 등)에 따라 비정상적인 동작을 하는 경우가 많이 발생한다. 노드가 비정상적인 동작을 하는 상황에서, 쿠버네티스 클러스터는 문제가 있다고 판단되는 노드에도 파드를 생성하게 된다. 이에 따라 해당 노드에 생성된 파드가 제대로 동작하지 않거나, 동일한 서비스를 처리하는 다른 노드에 생성한 파드에 비해 비정상적인(높거나 낮을 수 있음) CPU(central processing unit) 부하(load), 메모리 사용량, 네트워크 트랙픽 등을 유발한다.
그러나 쿠버네티스는 해당 파드에서 동작하는 프로세스가 다운되는 현상이 발생하여도 다른 노드에 파드를 생성해서 서비스를 유지한다. 또한 지정한 성능 예를 들면 아웃바운드 트래픽(Outbound Traffic)이 일정 수준이 나오지 않으면, 또 다른 파드를 생성해서 서비스를 유지한다. 이에 따라 안정적인 서비스는 가능하나, 문제가 있다고 판단되는 노드(보통 머신으로 운영)를 미리 판단하기는 어렵다. 또한, 노드의 특성을 구분하여 특정 노드를 선택하게 하는 노드 레이블링과 어피니티(Affinity) 기능으로는 정적인 노드 선택만이 가능하다.
본 발명의 실시 예에서는 노드에서 작동하는 파드에서 획득된 정보를 기반으로 신경망 모델을 학습을 수행하고, 학습된 신경망 모델을 이용하여 노드에 대해 획득된 결과 지표를 이용하여 노드에 레이블을 할당한다. 이를 통해, 특정 하드웨어(서버 부품(파트), 서버에 연결된 스위치 등) 노드에 문제가 있다고 판단되는 서버를 미리 서비스에서 제외시키거나 사용을 최소한으로 줄일 수 있으므로, 보다 안정적인 서비스를 유지하는데 도움이 된다.
도 2는 본 발명의 실시 예에 따른 노드 레이블링 장치의 구조를 나타낸 도이다.
본 발명의 실시 예에 따른 노드 레이블링 장치(100)는, 첨부한 도 2에서와 같이, 데이터 획득부(110), 데이터 전처리부(120), 신경망부(130), 레이블 조정부(140)를 포함한다.
데이터 획득부(110)는 쿠버네티스 클러스터를 구성하는 노드로부터 파드 작동에 대한 정보를 제공받도록 구성된다. 구체적으로, 데이터 획득부(110)는 노드별로 노드에서 작동하는 파드에 관련된 정보를 획득한다. 획득되는 정보는 파드 메트릭(POD metric) 정보, 파드 실패 정보를 포함한다. 여기서, 파드 메트릭 정보는 노드의 물리적 상태와 환경을 나타내는 상태 변수별 메트릭값을 포함한다. 여기서 노드의 물리적 상태와 환경을 나타내는 상태 변수는 CPU 부하, 트래픽, 메모리 사용량 중 적어도 하나를 포함하며, CPU 부하, 트래픽, 메모리 사용량에 대해 각각 대응하는 메트릭값을 포함한다.
파드에서 작동하는 서버가 죽어서 파드가 내려간 경우를 파드가 실패한 것으로 판단하며, 파드 실패 정보는 이와 같이 실패한 파드에 대한 정보를 포함한다. 예를 들어, 서비스 A를 생성하였을 때, 해당 서비스를 제공하기 위한 파드가 5개 생성되었다고 가정한다. 이 경우, 파드에 특정 서비스 서버(웹 서버)가 가동할 때 프로세스가 죽었다가 새로운 파드에 생성될 수 있다. 이는 주로 5개의 노드 중 문제가 있는 노드에서 빈번하게 발생할 수 있으며, 파드에서 작동하는 서버(웹서버 등)가 죽어서 파드가 내려갔을 경우를 실패의 경우로 판단한다.
데이터 전처리부(120)는 데이터 획득부(110)로부터 전달되는 정보에 대한 전처리를 수행하도록 구성된다.
데이터 전처리부(120)는 파드 메트릭 정보에 대해 단순 수치 값을 사용하지 않고 하나의 메트릭 값에 대해 최대값 대비값, 평균값 대비값을 생성하여 사용한다. 예를 들어, 동일 서비스를 제공하는 파드의 최대값 대비값과 평균값 대비값을 생성한다.
최대값 대비값은 다음의 수식을 기반으로 산출된다.
Figure 112020126562323-pat00001
여기서, Value Mx는 최대값 대비값을 나타내고, Max Value는 서비스를 제공하는 파드 중 최대값을 나타내며, Target Value는 현재 파드의 값을 나타낸다. 예를 들어, 동일 서비스를 제공하는 프로세스가 동작하는 파드들로부터 CPU 부하에 대응하는 메트릭값들을 획득한 경우, 메트릭값들 중 최대값(Max Value)을 선택하고, 최대값(Max Value)에 대비한 현재 파드의 메트릭 값(Target Value)의 비율을 구하여 최대값 대비값(Value Mx)을 획득한다. 최대값 대비값(Value Mx)은 0 ~ 1의 값을 가진다.
평균값 대비값은 다음의 수식을 기반으로 산출된다.
Figure 112020126562323-pat00002
여기서, Value Ag는 서비스를 제공하는 파드들의 평균값을 나타내며, Target Value는 현재 파드의 값을 나타낸다. 예를 들어, 동일 서비스를 제공하는 프로세스가 동작하는 파드들로부터 CPU 부하에 대응하는 메트릭값들을 획득한 경우, 메트릭값들 중 평균값(Avg Value)을 선택하고, 평균값(Avg Value)에 대비한 현재 파드의 메트릭 값(Target Value)의 비율을 구하여 평균값 대비값(Value Ag)을 획득한다. 평균값 대비값(Value Ag)은 0 ~ 1의 값을 가진다.
파드 메트릭 정보에 포함된 상태 변수인 CPU 부하, 트래픽, 메모리 사용량 각각의 메트릭값에 대하여, 최대값 대비값(Value Mx)과 평균값 대비값(Value Ag)을 각각 생성할 수 있다. 즉, CPU 부하에 대한 최대값 대비값(CPU Max 비율 값), CPU 부하에 대한 평균값 대비값(CPU Avg 비율 값), 메모리 사용량에 대한 최대값 대비값(Memory Max 비율 값), 메모리 사용량에 대한 평균값 대비값(Memory Avg 비율 값), 트래픽에 대한 최대값 대비값(Traffic Max 비율 값), 트래픽에 대한 평균값 대비값(Traffic Avg 비율 값)이 생성될 수 있다. 이와 같이 생성되는 최대값 대비값(Value Mx)과 평균값 대비값(Value Ag)을 “특정 파드의 메트릭 차이값”으로 지칭될 수 있다.
특정 파드의 메트릭 차이값 즉, 최대값 대비값(Value Mx)과 평균값 대비값(Value Ag)은 0~1의 값 즉, 0.1, 0.2, 0.3, …, 0.9, 1의 10개의 단계로 전처리된다. 예를 들어, 0 ~ 0.1(0~10%) 사이 값은 0.1로 변환한다.
또한, 데이터 전처리부(120)는 파드 실패 정보를 대응하는 노드 실패 값(노드 Fail Value)으로 전처리한다. 예를 들어, 파드 실패 정보에 따라 노드 성공 상태는 1의 값으로 전처리하고, 노드 실패 상태는 0의 값으로 전처리한다.
데이터 전처리부(120)에 의해 전처리된 정보는 신경망부(130)로 전달된다.
신경망부(130)는 데이터 전처리부(120)로부터 전달되는 전처리된 정보를 기반으로 학습을 수행하도록 구성된다. 학습을 위한 입력 데이터는 구체적으로, 파드별로, CPU 부하에 대한 최대값 대비값(CPU Max 비율 값), CPU 부하에 대한 평균값 대비값(CPU Avg 비율 값), 메모리 사용량에 대한 최대값 대비값(Memory Max 비율 값), 메모리 사용량에 대한 평균값 대비값(Memory Avg 비율 값), 트래픽에 대한 최대값 대비값(Traffic Max 비율 값), 트래픽에 대한 평균값 대비값(Traffic Avg 비율 값), 노드 실패 값(노드 Fail Value)을 포함한다. 그러나 본 발명에서 학습에 사용되는 데이터는 반드시 이에 한정되지 않으며, 별도의 데이터가 추가적으로 사용될 수 있다.
신경망부(130)는 이러한 데이터를 기반으로 노드의 레이블을 도출하는 모델(노드 레이블 도출 패턴)의 학습을 수행한다. 또한, 신경망부(130)는 추후에 학습이 완료된 노드 레이블 도출 패턴을 기반으로, 실시간 서비스에서 입력되어 위에 기술된 바와 같이 전처리되는 노드의 파드 메트릭 정보와 파드 실패 정보를 토대로, 해당 노드의 신뢰성을 나타내는 지표인 레이블(신뢰성 지표라고 명명함)을 출력한다.
도 3은 본 발명의 실시 예에 따른 신경망 모델을 통해 획득되는 결과를 나타낸 예시도이다.
학습이 완료된 신경망 모델을 통해 입력되는 데이터를 기반으로 신뢰성 지표가 출력되며, 신뢰성 지표는 도 3에서와 같이, 예를 들어, Level 1, Level 2, Level 3, Level 4, Level 5의 형식으로 구분될 수 있다. 여기서, Level 수치가 작은 값일 수록 신뢰할 수 있는 노드를 나타낸다.
한편, 레이블 조정부(140)는 노드의 레이블을 조정하도록 구성된다. 레이블 조정부(140)는 신경망부(130)를 통해 획득되는 노드의 신뢰성 지표를 기반으로 노드의 레이블을 조정한다. 예들 들어, 노드에 초기 레이블(예를 들어, 로 Level 3일 수 있음)을 지정하고, 추후에 신경망부(130)를 통해 노드에 대한 새로운 신뢰성 지표를 획득하면, 획득된 새로운 신뢰성 지표를 기반으로 해당 노드의 레이블을 업데이트한다. 즉, 노드에서 작동하는 파드에서 획득된 정보로 신경망 학습을 통해 획득된 레이블 결과 지표를 이용하여 노드의 레이블을 업데이트를 하여, 이후 보다 신뢰할 수 있는 노드에 대해 우선적으로 파드 생성이 이루어지도록 할 수 있다.
레이블 조정부(140)에 의해 지정되거나 업데이트된 노드의 레이블은 쿠버네티스 클러스터의 마스터로 전달될 수 있으며, 마스터는 노드의 레이블을 기반으로 신뢰할 수 있는 노드에 파드 생성이 이루어지도록 할 수 있다. 이후, 노드에서 해당 파드가 동작하면서 파드 동작에 따른 정보가 데이터 획득부(110)로 전달되면서, 위에 기술된 바와 같이 노드의 물리적인 상태와 환경 변동에 따라 실시간으로 학습된 신경망 모델을 통해 신뢰성 지표가 생성되어 노드의 레이블이 업데이트된다.
다음에는 이러한 구조를 기반으로 본 발명의 실시 예에 따른 노드 레이블링 방법에 대하여 설명한다.
도 4는 본 발명의 실시 예에 따른 노드 레이블링 방법의 흐름도이다.
첨부한 도 4에서와 같이, 먼저, 노드 레이블링 장치(100)는, 쿠버네티스 클러스터를 구성하는 노드로부터 파드 작동에 대한 정보를 수신한다(S100). 노드의 물리적 상태와 환경을 나타내는 상태 변수별 메트릭값을 포함하는 파드 메트릭 정보와, 노드의 파드 실패 정보를 수신한다.
이후, 수신된 정보에 대한 전처리를 수행한다. 구체적으로, 임의 노드에 대하여, 파드 메트릭 정보에 포함된 상태 변수(CPU 부하, 트래픽, 메모리 사용량)별로, 특정 파드(예를 들어, 동일 서비스를 제공하는 파드)의 메트릭 차이값을 계산한다. 즉, 서비스를 제공하는 프로세스가 동작하는 파드 중 최대값 대비 임의 파드의 값의 비율 값인 최대값 대비값과 서비스를 제공하는 프로세스가 동작하는 파드들의 평균값 대비 임의 파드의 값의 비율인 평균값 대비값을 각각 계산한다(S110). 그리고 노드의 파드 실패 정보에 대응하는 노드 실패 값을 획득한다.
이러한 전처리 과정을 통해 산출되는 노드에 대한 상태 변수별 최대값 대비값과 평균값 대비값 그리고 노드의 파드 실패 정보에 대응하는 노드 실패 값을 기반으로, 해당 노드의 신뢰성 지표를 획득한다(S120). 여기서는 위에 기술된 바와 같이, 특정 서비스를 지정하여 설정 기간 동안 데이터를 수집하여 전처리한 다음에, 전처리된 데이터를 기반으로 학습된 신경망 모델을 통해 노드의 신뢰성 지표를 획득한다. 단계(S110)에서 획득된 상태 변수별 최대값 대비값과 평균값 대비값 그리고 노드 실패 값을 학습된 신경망 모델로 입력시킴에 따라, 대응하는 노드의 신뢰성 지표가 출력된다.
다음에, 새로이 획득된 신뢰성 지표를 기반으로 해당 노드의 레이블을 업데이트한다(S130). 예를 들어, 노드의 초기 레이블을 새로이 획득된 신뢰성 지표에 대응하는 레이블로 업데이트한다.
추후에 업데이트된 레이블을 기반으로 쿠버네티스 클러스터의 마스터 노드가 쿠버네티스 어피니티 기능을 통해 우선 순위를 선별해서 보다 신뢰 할 수 있는 노드를 우선적으로 선택할 수 있다. 따라서, 하드웨어 장애를 유발하는 노드를 미리 서비스에서 제외 시키거나 사용을 최소한으로 줄일 수 있으며, 이에 따라 보다 안정적인 서비스가 제공될 수 있다.
도 5는 본 발명의 실시 예에 따른 노드 레이블링 방법을 구현하기 위한 컴퓨팅 장치를 설명하기 위한 구조도이다.
첨부한 도 5에 도시되어 있듯이, 본 발명의 일 실시 예에 따른 노드 레이블링 방법은 컴퓨팅 장치(1000)를 이용하여 구현될 수 있다.
컴퓨팅 장치(1000)는 프로세서(1100), 메모리(1200), 입력 인터페이스 장치(1300), 출력 인터페이스 장치(1400), 저장 장치(1500) 및 네트워크 인터페이스 장치(1600) 중 적어도 하나를 포함할 수 있다. 각각의 구성 요소들은 버스(bus)(1700)에 의해 연결되어 서로 통신을 수행할 수 있다. 또한, 각각의 구성 요소들은 공통 버스(1700)가 아니라, 프로세서(1100)를 중심으로 개별 인터페이스 또는 개별 버스를 통하여 연결될 수도 있다.
프로세서(1100)는 AP(Application Processor), CPU(Central Processing Unit), GPU(Graphic Processing Unit) 등과 같은 다양한 종류들로 구현될 수 있으며, 메모리(1200) 또는 저장 장치(1500)에 저장된 명령을 실행하는 임의의 반도체 장치일 수 있다. 프로세서(1100)는 메모리(1200) 및 저장 장치(1500) 중에서 적어도 하나에 저장된 프로그램 명령(program command)을 실행할 수 있다. 이러한 프로세서(1100)는 위의 도 1 내지 도 4를 토대로 설명한 기능 및 방법들을 구현하도록 구성될 수 있다. 예를 들어, 프로세서(1100)는 데이터 획득부, 데이터 전처리부, 신경망부, 레이블 변환부 중 적어도 하나를 포함하거나 그들의 기능을 수행하도록 구성될 수 있다.
메모리(1200) 및 저장 장치(1500)는 다양한 형태의 휘발성 또는 비 휘발성 저장 매체를 포함할 수 있다. 예를 들어, 메모리는 ROM(read-only memory)(1210) 및 RAM(random access memory)(1220)를 포함할 수 있다. 본 발명의 실시 예에서 메모리(1200)는 프로세서(1100)의 내부 또는 외부에 위치할 수 있고, 메모리(1200)는 이미 알려진 다양한 수단을 통해 프로세서(1100)와 연결될 수 있다.
입력 인터페이스 장치(1300)는 데이터를 프로세서(1100)로 제공하도록 구성되며, 출력 인터페이스 장치(1400)는 프로세서(1100)로부터의 데이터를 출력하도록 구성된다.
네트워크 인터페이스 장치(1600)는 유선 네트워크 또는 무선 네트워크를 통해 다른 개체와 신호를 송신 또는 수신할 수 있다. 예를 들어, 네트워크 인터페이스 장치(1600)는 쿠버네티스 클러스터의 노드와 송수신하도록 구성될 수 있다.
이러한 구조로 이루어지는 컴퓨팅 장치(1000)는 노드 레이블 장치로 명명되어, 본 발명의 일 실시 예에 따른 노드 레이블링 방법을 구현할 수 있다.
또한, 본 발명의 일 실시 예에 따른 노드 레이블링 방법 중 적어도 일부는 컴퓨팅 장치(100)에서 실행되는 프로그램 또는 소프트웨어로 구현될 수 있고, 프로그램 또는 소프트웨어는 컴퓨터로 판독 가능한 매체에 저장될 수 있다.
또한, 본 발명의 일 실시 예에 따른 노드 레이블링 방법 중 적어도 일부는 컴퓨팅 장치(100)와 전기적으로 접속될 수 있는 하드웨어로 구현될 수도 있다.
본 발명의 실시 예는 이상에서 설명한 장치 및/또는 방법을 통해서만 구현이 되는 것은 아니며, 본 발명의 실시예의 구성에 대응하는 기능을 실현하기 위한 프로그램, 그 프로그램이 기록된 기록 매체 등을 통해 구현될 수도 있으며, 이러한 구현은 앞서 설명한 실시예의 기재로부터 본 발명이 속하는 기술분야의 전문가라면 쉽게 구현할 수 있는 것이다.
이상에서 본 발명의 실시 예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.

Claims (15)

  1. 쿠버네티스 클러스터의 노드에 대한 레이블링을 수행하는 방법으로서,
    레이블링 장치가, 상기 노드로부터 파드(pod) 작동에 대한 정보 - 상기 정보는 파드 작동에 따라 상기 노드의 물리적 상태와 환경을 나타내는 상태 변수별 메트릭값을 포함하는 파드 메트릭 정보와, 노드의 파드 실패 정보를 포함하며, 상기 파드 실패 정보는 파드에서 작동하는 서버의 작동이 멈춰서 파드가 내려간 경우를 나타냄 - 를 수신하는 단계;
    상기 레이블링 장치가, 상기 수신된 정보에 대한 전처리를 수행하여, 상기 노드에 대하여, 상기 파드 메트릭 정보에 포함된 상태 변수별 메트릭 차이값과 상기 파드 실패 정보에 대응하는 노드 실패 값을 획득하는 단계 - 상기 노드 실패값은 상기 파드 실패 정보에 따라 노드 성공 상태를 나타내는 제1 값 및 노드 실패 상태를 나타내는 제2 값을 포함함 -;
    상기 레이블링 장치가, 상기 상태 변수별 메트릭 차이값과 상기 노드 실패 값을 미리 학습된 신경망 모델에 입력시켜, 대응하는 신뢰성 지표를 획득하는 단계; 및
    상기 레이블링 장치가, 상기 신뢰성 지표를 기반으로 상기 노드의 레이블을 업데이트하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 상태 변수는 CPU(central processing unit) 부하, 트래픽, 메모리 사용량 중 적어도 하나를 포함하는, 방법.
  3. 제1항에 있어서,
    상기 메트릭 차이값은 최대값 대비값과 평균값 대비값을 포함하고,
    상기 최대값 대비값은 파드들의 메트릭값 중 최대값 대비 임의 파드의 메트릭 값의 비율 값이고, 상기 평균값 대비값은 파드들의 메트릭값의 평균값 대비 임의 파드의 메트릭 값의 비율 값인, 방법.
  4. 제3항에 있어서,
    상기 신뢰성 지표를 획득하는 단계는,
    CPU 부하에 대한 최대값 대비값과 CPU 부하에 대한 평균값 대비값, 메모리 사용량에 대한 최대값 대비값과 메모리 사용량에 대한 평균값 대비값, 트래픽에 대한 최대값 대비값과 트래픽에 대한 평균값 대비값 그리고, 노드 실패값을 상기 미리 학습된 신경망 모델에 입력시켜, 대응하는 신뢰성 지표를 획득하는, 방법.
  5. 제3항에 있어서,
    상기 메트릭 차이값은 상기 쿠버네티스 클러스터를 구성하는 노드들에서 동일 서비스를 제공하는 프로세스가 동작하는 파드들로부터의 메트릭값을 기반으로 획득되는, 방법.
  6. 제1항에 있어서,
    상기 노드 실패 값을 획득하는 단계는
    상기 메트릭 차이값이 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1 중 하나의 값을 가지도록 처리하는 단계
    를 더 포함하는, 방법.
  7. 제1항에 있어서,
    상기 노드의 레이블을 업데이트하는 단계는
    상기 노드에 지정된 초기 레이블을 상기 획득된 신뢰성 지표에 대응하는 레이블로 업데이트하는 단계; 및
    상기 업데이트된 레이블을 상기 쿠버네티스 클러스터의 마스터 노드에 전달하는 단계
    를 포함하는, 방법.
  8. 제1항에 있어서,
    상기 신뢰성 지표의 값이 낮을수록 노드의 신뢰성이 높음을 나타내는, 방법,
  9. 쿠버네티스 클러스터의 노드에 대한 레이블링을 수행하는 장치로서,
    상기 노드와 송수신을 수행하도록 구성된 인터페이스 장치; 및
    상기 인터페이스 장치를 통해 수신되는 정보를 기반으로 노드 레이블링을 수행하도록 구성된 프로세서
    를 포함하며,
    상기 프로세서는,
    상기 인터페이스 장치를 통해 상기 노드로부터 파드 작동에 대한 정보 - 상기 정보는 파드 작동에 따라 상기 노드의 물리적 상태와 환경을 나타내는 상태 변수별 메트릭값을 포함하는 파드 메트릭 정보와, 노드의 파드 실패 정보를 포함하며, 상기 파드 실패 정보는 파드에서 작동하는 서버의 작동이 멈춰서 파드가 내려간 경우를 나타냄 - 를 획득하는 동작;
    상기 수신된 정보에 대한 전처리를 수행하여, 상기 노드에 대하여, 상기 파드 메트릭 정보에 포함된 상태 변수별 메트릭 차이값과 상기 파드 실패 정보에 대응하는 노드 실패 값을 획득하는 동작 - 상기 노드 실패값은 상기 파드 실패 정보에 따라 노드 성공 상태를 나타내는 제1 값 및 노드 실패 상태를 나타내는 제2 값을 포함함 -;
    상기 상태 변수별 메트릭 차이값과 상기 노드 실패 값을 미리 학습된 신경망 모델에 입력시켜, 대응하는 신뢰성 지표를 획득하는 동작; 및
    상기 신뢰성 지표를 기반으로 상기 노드의 레이블을 업데이트하는 동작을 수행하도록 구성되는, 장치.
  10. 제9항에 있어서,
    상기 상태 변수는 CPU(central processing unit) 부하, 트래픽, 메모리 사용량 중 적어도 하나를 포함하는, 장치.
  11. 제9항에 있어서,
    상기 메트릭 차이값은 최대값 대비값과 평균값 대비값을 포함하고,
    상기 최대값 대비값은 파드들의 메트릭값 중 최대값 대비 임의 파드의 메트릭 값의 비율 값이고, 상기 평균값 대비값은 파드들의 메트릭값의 평균값 대비 임의 파드의 메트릭 값의 비율 값인, 장치.
  12. 제11항에 있어서,
    상기 프로세서는 상기 신뢰성 지표를 획득하는 동작 수행시,
    CPU 부하에 대한 최대값 대비값과 CPU 부하에 대한 평균값 대비값, 메모리 사용량에 대한 최대값 대비값과 메모리 사용량에 대한 평균값 대비값, 트래픽에 대한 최대값 대비값과 트래픽에 대한 평균값 대비값 그리고, 노드 실패값을 상기 미리 학습된 신경망 모델에 입력시켜, 대응하는 신뢰성 지표를 획득하도록 구성되는, 장치.
  13. 제11항에 있어서,
    상기 메트릭 차이값은 상기 쿠버네티스 클러스터를 구성하는 노드들에서 동일 서비스를 제공하는 프로세스가 작동하는 파드들로부터의 메트릭값을 기반으로 획득되는, 장치.
  14. 제9항에 있어서,
    상기 프로세서는 상기 노드 실패 값을 획득하는 동작 수행시,
    상기 메트릭 차이값이 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1 중 하나의 값을 가지도록 처리하는 동작을 추가적으로 수행하도록 구성되는, 장치.
  15. 제9항에 있어서,
    상기 프로세서는 상기 노드의 레이블을 업데이트하는 동작 수행시,
    상기 노드에 지정된 초기 레이블을 상기 획득된 신뢰성 지표에 대응하는 레이블로 업데이트하는 동작; 및
    상기 업데이트된 레이블을 상기 쿠버네티스 클러스터의 마스터 노드에 전달하는 동작을 수행하도록 구성되는, 장치.











KR1020200159169A 2020-11-24 2020-11-24 노드 레이블링 방법 및 장치 KR102439056B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200159169A KR102439056B1 (ko) 2020-11-24 2020-11-24 노드 레이블링 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200159169A KR102439056B1 (ko) 2020-11-24 2020-11-24 노드 레이블링 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20220071719A KR20220071719A (ko) 2022-05-31
KR102439056B1 true KR102439056B1 (ko) 2022-09-01

Family

ID=81780279

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200159169A KR102439056B1 (ko) 2020-11-24 2020-11-24 노드 레이블링 방법 및 장치

Country Status (1)

Country Link
KR (1) KR102439056B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190102226A1 (en) * 2017-09-30 2019-04-04 Oracle International Corporation Dynamic node rebalancing between container platforms
CN109710376A (zh) * 2018-12-12 2019-05-03 中国联合网络通信集团有限公司 容器集群管理系统的动态调度方法和装置
KR102114339B1 (ko) 2018-11-26 2020-05-22 주식회사 알티스트 액티브/스탠바이 모델을 지원하는 쿠버네티스 시스템의 동작 방법

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100948752B1 (ko) * 2008-03-13 2010-03-23 엔에이치엔비즈니스플랫폼 주식회사 예상범위의 신뢰도를 검증하는 방법 및 시스템 그리고예상지표의 신뢰도를 검증하는 방법 및 시스템

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190102226A1 (en) * 2017-09-30 2019-04-04 Oracle International Corporation Dynamic node rebalancing between container platforms
KR102114339B1 (ko) 2018-11-26 2020-05-22 주식회사 알티스트 액티브/스탠바이 모델을 지원하는 쿠버네티스 시스템의 동작 방법
CN109710376A (zh) * 2018-12-12 2019-05-03 中国联合网络通信集团有限公司 容器集群管理系统的动态调度方法和装置

Also Published As

Publication number Publication date
KR20220071719A (ko) 2022-05-31

Similar Documents

Publication Publication Date Title
US10051056B2 (en) Resource planning method, system, and apparatus for cluster computing architecture
KR102456900B1 (ko) 에지 컴퓨팅 기반 데이터 분석 시스템 및 그 방법
CN110297640B (zh) 模型部署的方法、装置、存储介质及电子设备
KR102245341B1 (ko) 클라우드 엣지 내 워크로드 분산을 위한 예측 모델 적용 방법
CN114330722B (zh) 推理实现方法、网络、电子设备及存储介质
KR20120066116A (ko) 웹 서비스 정보 처리 방법과 이를 이용한 웹 서비스 조합 방법 및 장치
US10334536B2 (en) Method for dynamic adaptation of a data rate
US20220300345A1 (en) Entity and Method Performed therein for Handling Computational Resources
US11202179B2 (en) Monitoring and analyzing communications across multiple control layers of an operational technology environment
CN113867930A (zh) 调节机器学习模型的方法和调节机器学习模型的系统
KR102439056B1 (ko) 노드 레이블링 방법 및 장치
US20170237648A1 (en) Recording medium and packet relay method
CN114706675A (zh) 基于云边协同系统的任务部署方法及装置
US11385602B2 (en) System control method and apparatus, controller, and control system
Roth et al. Runtime evolution of the adaptation logic in self-adaptive systems
CN107707424A (zh) 负载状态的控制方法及系统
CN113050955A (zh) 一种自适应ai模型部署方法
JP5331549B2 (ja) 分散処理システム及び分散処理方法
KR20140122966A (ko) 자율 컴퓨팅 장치들간의 토픽을 공유하는 장치 및 그 방법
WO2017213065A1 (ja) サービス管理システム、サービス管理方法、および、記録媒体
US11775819B2 (en) Automated configuration determinations for data center devices using artificial intelligence techniques
US20220019871A1 (en) Method for Adapting a Software Application Executed in a Gateway
Stahl et al. Dynamic fault-tolerance and mobility provisioning for services on mobile cloud platforms
CN111078311A (zh) 中间件控制运行方法、系统
WO2023119623A1 (ja) 管理装置、通信システム、制御方法、及び非一時的なコンピュータ可読媒体

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant