| 번호 | 청구항 |
|---|---|
| 1 | 쿠버네티스 클러스터의 복구 자동화를 위한 복원 스케줄 오퍼레이터 시스템으로서, 쿠버네티스 애플리케이션을 실행하여 작업을 수행하는 복수의 클러스터(220)의 상태를 감시하고, 필요에 따라 클러스터(220)의 상태를 조정하고 관리하는 쿠버네티스 클러스터 관리 서버(210)와; 상기 쿠버네티스 클러스터 관리 서버(210)에 접속하여 쿠버네티스 클러스터 관리 서버(210)에서 관리하는 클러스터(220)의 상태를 모니터링 하며, 특정 클러스터(220)에서 오류가 발생하면 클러스터(220)들의 상태와 리소스 사용량을 고려하여 복원 작업을 진행할 최적화된 클러스터(220)를 선정하고, 선정된 클러스터(220)를 통해 오류가 발생한 클러스터(220)의 복원 작업을 진행하게 하는 복원 스케줄 오퍼레이터(100);를 포함하는 것을 특징으로 하는 복원 스케줄 오퍼레이터 시스템. |
| 2 | 제 1항에 있어서, 상기 복원 스케줄 오퍼레이터(100)는 상기 쿠버네티스 클러스터 관리 서버(210)에 접속하여 클러스터(220)들의 상태를 모니터링 하고, 특정 클러스터(220)에서 오류가 발생하는 경우 이를 감지하는 모니터링 및 이벤트 감지모듈(110)과, 상기 모니터링 및 이벤트 감지모듈(110)을 통해 감지된 오류가 발생한 클러스터의 리소스와 쿠버네티스 클러스터 관리 서버(210)에서 관리하는 다른 클러스터들의 리소스를 각각 비교하여, 오류가 발생한 클러스터의 리소스보다 큰 리소스를 갖는 하나 이상의 클러스터가 확인되면 복원 절차를 진행하기 위해 확인된 클러스터 ID를 조회하는 리소스 비교 및 알람모듈(120)과, 상기 리소스 비교 및 알람모듈(120)을 통해 ID가 조회된 클러스터의 리소스 사용량을 기반으로 복원이 진행될 클러스터(220)를 선정하는 복원 대상 클러스터 선정모듈(130)과, 상기 복원 대상 클러스터 선정모듈(130)을 통하여 선정된 클러스터(220)를 통해 오류가 발생한 클러스터(220)를 이전 상태로 복원하는 복원 스크립트 실행모듈(140)을 포함하는 것을 특징으로 하는 복원 스케줄 오퍼레이터 시스템. |
| 3 | 제 2항에 있어서, 상기 모니터링 및 이벤트 감지모듈(110)은 상기 쿠버네티스 클러스터 관리 서버(210)에서 관리하는 클러스터(220)에서 오류가 발생한 것을 감지하는 경우, 설정된 시간 동안 대기(Sleep) 하였다가 해당 클러스터(220)의 상태를 다시 조회하여, 클러스터(220)의 상태가 정상이면 오류 감지를 해제하고, 오류 상태가 계속 감지되면 오류가 감지된 클러스터 정보를 리소스 비교 및 알람모듈(120)로 전달하는 것을 특징으로 전송하는 복원 스케줄 오퍼레이터 시스템. |
| 4 | 제 2항에 있어서, 상기 리소스 비교 및 알람모듈(120)은 오류가 발생한 클러스터(220)의 리소스 보다 큰 리소스를 갖는 다른 클러스터가 존재하지 않는 경우, 정상적인 복원이 이루어질 수 없음을 알람을 통해 표시하고 복원 절차를 중단시키는 것을 특징으로 하는 복원 스케줄 오퍼레이터 시스템. |
| 5 | 제 2항에 있어서, 상기 복원 대상 클러스터 선정모듈(130)은 상기 ID가 조회된 클러스터의 리소스 사용량을 매개 변수로 하여, 머신러닝 모델을 통해 오류가 발생한 클러스터의 복원에 필요한 클러스터의 리소스 사용량을 예측하고, 예측된 리소스 사용량을 기반으로 가장 안전하게 복원을 진행할 클러스터(220)를 선정하는 것을 특징으로 하는 복원 스케줄 오퍼레이터 시스템. |
| 6 | 제 2항에 있어서, 상기 복원 스크립트 실행모듈(140)은 복원 대상 클러스터 선정모듈(130)로부터 복원 대상 클러스터 정보가 수신되면, 복원 스크립트를 실행시켜 복원 대상 클러스터에서 복원을 실행하게 하되, 상기 복원 스크립트 실행 시, 쿠버네티스 클러스터 관리 서버(210)의 복원 기능을 통해 오류가 발생한 클러스터의 최신 백업 파일, 인증 정보, 환경 설정 정보가 포함된 복원 CR을 생성하게 하고, 생성되는 복원 CR의 내용에 따라 복원 명령을 복원 대상 클러스터에 전달하여, 복원 대상 클러스터에서 쿠버네티스 클러스터 관리 서버(210)로부터 전달받은 복원 명령을 통해 오류가 발생한 클러스터를 이전 상태로 복원하게 하는 것을 특징으로 하는 복원 스케줄 오퍼레이터 시스템. |
| 7 | 제 1항 내지 제 6항 중 어느 한 항에 있어서, 상기 쿠버네티스 클러스터 관리 서버(210)는 Rancher 서버(210a)를 포함하고, 상기 Rancher 서버(210a)에는 클러스터(220a)를 구성하여 애플리케이션을 배포하고 관리하며, 클러스터(220a)의 상태를 모니터링 하고, 클러스터(220a)의 백업 정보를 데이터 저장소(data store)인 etcd(213)에 저장하여 백업 파일로 관리하는 Rancher API 서버(211)와, 상기 Rancher API 서버(211)에 접근을 요청하는 복원 스케줄 오퍼레이터(100)를 인증하여 Rancher API 서버(211) 접근을 인가하는 Authentication Proxy(212)와, 상기 Rancher API 서버(211)의 명령에 따라 클러스터(220a)의 상태와 오류 이벤트를 감시하고, 클러스터(220a)의 상태를 각각 조정하고 관리하는 Cluster Controller(214)가 구비되며, 상기 클러스터(220a)에는 클러스터(220a)의 동작을 관리하고, 클러스터(220a) 내의 리소스 정보와 상태 정보 및 이벤트 정보를 Rancher 서버(210a)에 제공하는 Cluster Agent(221)가 구비된 것을 특징으로 하는 복원 스케줄 오퍼레이터 시스템. |
| 8 | 제 7항에 있어서, 상기 복원 스케줄 오퍼레이터(100)는 상기 Rancher API 서버(211)를 통해 조회한 클러스터 오류 이벤트를 CRD(Custom Resource Definition)로 정의하고 해당 CR(Custom Resource)을 생성하며, 주기적으로 CR을 업데이트 하면서, 클러스터 오류에 따라 CR의 변경 사항이 감지되면 복원 작업을 시작하는 것을 특징으로 하는 복원 스케줄 오퍼레이터 시스템. |
| 9 | 제 8항에 있어서, 상기 Rancher API 서버(211)는 복원 스케줄 오퍼레이터(100)에 의해 복원 작업이 시작되면, Rancher 복원 기능을 통해 복원 CR을 생성하고, 생성된 복원 CR의 내용에 따른 복원 명령을 Cluster Controller(214)에 전송하며, 상기 Cluster Controller(214)는 수신된 복원 명령을 확인하여, 복원을 진행할 클러스터(220a)에 위치한 Cluster Agent(221)에 해당 복원 명령을 전달하며, 상기 복원 명령을 전달받은 클러스터(220a)의 Cluster Agent(221)는 전달받은 복원 명령에 따라 복원 작업을 수행하여 오류가 발생한 클러스터를 이전 상태로 복원하는 것을 특징으로 하는 복원 스케줄 오퍼레이터 시스템. |