쿠버네티스(K8s) 오퍼레이터(Operator)란?

「지마켓 기술블로그」에 쿠버네티스 오퍼레이터를 이해하기에 좋은 기사가 있어 공유합니다. 쿠버네티스 오퍼레이터에 대한 간단한 설명과 함께, 실 적용사례 후기 및 현재의 오퍼레이터 패턴이 가져다주는 이점과 한계에 대해서 잘 정리한 기사입니다. 기사를 요약해보면 다음과 같습니다. 🎶 오퍼레이터는 2016년 CoreOS 블로그 포스트에서 공개된 디자인 패턴으로, 단어 그대로 운영자의 역할을 소프트웨어에 새긴 개념 🎶 Stateless 애플리케이션(이하 'App')에 맞게 설계된 쿠버네티스에, IT 운영자의 전문지식과 수동 작업만으로 Stateful App을 운영하는 것은 한계가 있음. 이를 자동화 하기위해 쿠버네티스 오퍼레이터가 탄생 🎶 오퍼레이터의 패턴: 첫째, 관리하고자 하는 App이나 인프라 / 둘째, 선언적인 방법으로 이상적인 상태를 지정할 수 있는 domain language / 셋째, 지속적으로 실행되는 컨트롤러(상태 인지, 자동 액션 수행, 선언적인 방법으로 상태 보고) 🎶 기존 쿠버네티스 컨트롤러와 오퍼레이터 간 차이는 별로 없기 때문에, 컨트롤러를 쿠버네티스 내 선언만 해주면 오퍼레이터 부분이 구현됨. 즉 오퍼레이터 패턴을 적용한 컨트롤러라 하면 POD들이 어떻게 업그레이드가 되어야 하고 에러 발생 시 어떻게 해결되어야 하는지 등의 운영 노하우가 더 담겨있는 컨트롤러라 할 수 있음 🎶 오퍼레이터 기능: App 설치 및 권한 설정, App 업그레이드, 백업, 백업 데이터를 통한 복구, 자가복구, 모니터링 및 지표 설정, 스케일링, 오토 스케일링, 자동 설정 튜닝, App 삭제 및 연결 해제 🎶 실 적용 사례 공유: Red Hat SSO Operator, Red Hat 3scale Operator, Jenkins Operator 🎶 결론: '아직은 이르다'. 하지만 Helm Chart 대비 많은 이점을 가지고 있고, 계속 발전하고 있고 아직은 많은 어려움이 있지만 적용해 볼 가치는 있다. 관련 기사는 아래 링크를 통해 확인하실 수 있습니다. 좋은 글 올려주신 지마켓 분들과 제 글을 읽어주시는 커리어리 독자분들께 감사 드립니다.

쿠버네티스 오퍼레이터 적용하기

지마켓 기술블로그

쿠버네티스 오퍼레이터 적용하기

다음 내용이 궁금하다면?

또는

이미 회원이신가요?

2023년 2월 25일 오후 2:07

댓글 0