IBM 클라우드 쿠버네티스 서비스란 무엇인가요?
IBM 클라우드 쿠버네티스 서비스 는 안전하고 사용하기 쉬운 네이티브 Kubernetes 환경을 제공합니다. 인증된 K8S 공급자인 IBM Cloud Kubernetes Service는 다양하고 강력한 기능을 제공합니다. 여기에는 지능형 스케줄링, 자가 복구, 수평적 확장, 서비스 검색 및 로드 밸런싱이 포함됩니다. 또한 자동화된 롤아웃 및 롤백, 비밀 및 구성 관리 기능도 지원합니다.
IBM 클라우드 쿠버네티스 서비스는 아래의 인증된 쿠버네티스 호스트 플랫폼 중 하나입니다. CNCF 인증 쿠버네티스 오퍼링.
이 블로그에서는 퍼시스턴트 스토리지를 사용하여 IBM Cloud Kubernetes Service에서 Couchbase Autonomous Operator를 배포하고 실행하는 방법을 설명합니다.
IBM 클라우드 쿠버네티스 서비스에 카우치베이스 자율 운영자 배포하기
쿠버네티스 퍼시스턴트 볼륨 사용
Kubernetes 영구 볼륨 는 실제 포드 자체 외부에 있는 데이터로 Couchbase 파드를 생성하는 방법을 제공합니다. 이러한 분리는 노드가 다운되거나 연결된 파드가 종료될 때 Couchbase 클러스터의 데이터 복원력을 높여줍니다.
마찬가지로, 퍼시스턴트 볼륨은 쿠버네티스가 노드 간에 카우치베이스 파드를 자동으로 이동하기 때문에 배포 유연성과 효율성이 향상됩니다. 다운타임이나 데이터 손실에 대한 걱정 없이 이 작업을 수행할 수 있습니다. 카우치베이스 오토노머스 오퍼레이터는 다음과 같이 가장 많이 사용되는 Kubernetes 퍼시스턴트 볼륨 중 일부를 지원합니다. GlusterFS, CephRBD, AWS, Azure 디스크, GCE및 Portworx.
전제 조건
- 다음과 같은 IBM 클라우드 계정 에 대한 지침을 따를 수 있습니다. 쿠버네티스 클러스터 시작하기
- 다운로드 카우치베이스 자율 운영자 1.1 플랫폼용 패키지
IBM Cloud에서 Kubernetes 클러스터 생성하기
- 로그인 https://cloud.ibm.com/ 를 클릭하면 IBM Cloud 대시보드와 "Kubernetes 클러스터" 타일 중 하나가 표시됩니다.
- "클러스터 만들기"를 클릭하면 설명서 및 요금제 링크가 있는 Kubernetes 서비스 페이지로 이동합니다.
- "새 클러스터 생성"에서는 '클러스터 유형', '리소스 그룹/위치', '가용성 워커 존', '쿠버네티스 버전', '인스턴스 유형', '클러스터 이름' 등 다양한 선택 항목이 있습니다.
- 옵션을 선택하고 "클러스터 생성"을 누르면 이제 Kubernetes 서비스가 클러스터 배포를 시작합니다. '개요' 탭에서 클러스터의 상태를 확인할 수 있습니다.
- Kubernetes 클러스터가 완전히 배포되고 상태가 준비되면 클러스터에 액세스할 수 있습니다. '액세스' 탭의 지침에 따라 IBM Cloud에 로그인할 수 있습니다(https://api.us-east.bluemix.net)를 클릭하고 Kubernetes 워커 노드의 상태를 확인합니다.
- 이제 IBM 클라우드에 Kubernetes 클러스터를 완전히 배포했습니다.
카우치베이스 자율 운영자 설치하기
- Couchbase 클러스터를 생성하기 전에 먼저 쿠버네티스 클러스터에 Couchbase Autonomous Operator를 설치해야 합니다. 설치 방법 및 필수 구성 요소에 대한 자세한 지침은 다음을 참조하세요. 카우치베이스 자율 운영자 1.1 문서. 카우치베이스 자율 운영자 구성은 아래에 정의되어 있습니다.
- 이제 아래 명령어를 실행하여 '클러스터 역할 생성', '서비스 계정 생성', '운영자 생성'을 실행합니다.
- 곧 카우치베이스 자율 운영자가 가동될 예정입니다.
퍼시스턴트 스토리지로 Couchbase 클러스터 만들기
- Couchbase 클러스터를 생성하기 전에 다운로드한 패키지에 포함된 secret.yaml 파일로 비밀을 생성합니다.
- Operator를 사용하여 Couchbase Server 클러스터를 배포하려면 다음과 같이 생성하기만 하면 됩니다. 카우치베이스클러스터 클러스터의 모양을 설명하는 구성 파일(예: 카우치베이스 버전, 노드 수, 서비스 유형, 스토리지 클래스 등)을 추가합니다.
- 그런 다음, 해당 구성 파일을 Kubernetes에 푸시합니다.
- 배포, 파드, 스토리지 및 로그는 Kubernetes 대시보드 웹 콘솔을 통해 확인할 수 있습니다.
- Couchbase 웹 콘솔에 액세스하기 위한 포트 세부 정보는 다음에서 확인할 수 있습니다. cb-example-UI 아래에 있는 서비스 서비스 를 클릭합니다. Couchbase 포트 세트와 해당 노드 포트가 표시됩니다. 이 예에서 Couchbase 포트는 8091(비 SSL) 및 18091(SSL)입니다. Couchbase 웹 콘솔에 액세스할 수 있습니다. 노드 포트이 예에서는 30306(비 SSL) 및 32347(SSL)입니다. 따라서 브라우저에서 :30306을 가리키게 되며, 여기서 는 Couchbase 클러스터를 호스팅하는 모든 Kubernetes 워커 노드의 IP 주소입니다.
- 이제 시크릿에 저장된 자격 증명을 사용하여 Couchbase 클러스터에 연결할 수 있습니다. 다른 애플리케이션 파드는 이 시크릿을 마운트하여 사용하고 서비스와 통신할 수 있습니다.
영구 볼륨을 사용한 자동 복구
이제 카우치베이스 클러스터가 배포되어 Kubernetes 클러스터에서 실행 중이므로 하나의 '자동 복구' 시나리오를 실행할 수 있습니다. Couchbase 자율 운영자는 항상 Couchbase 클러스터의 장애를 모니터링하도록 설계되었습니다. 노드 또는 서버 그룹 장애가 감지되면, Couchbase 운영자는 동일한 호스트 머신(가급적) 또는 다른 호스트 머신에 새 인스턴스를 자동으로 생성하도록 설계되었습니다. 그런 다음 불량 인스턴스의 밸런스를 재조정하고 새 인스턴스를 추가한 다음 클러스터를 최대 용량으로 다시 가동합니다.
퍼시스턴트 볼륨으로 CouchBase 클러스터를 구성한 경우, 자동 복구 이벤트 중에 CouchBase 자율 운영자는 다음을 수행합니다:
- 새 인스턴스를 생성하고 동일한 퍼시스턴트 볼륨에 연결합니다.
- 델타 노드 복구 및 워밍업 작업과 같은 복잡한 카우치베이스 작업을 수행하여 다른 모든 인스턴스의 데이터 재조정 작업(데이터 크기에 따라 시간이 많이 소요되는 작업)을 줄입니다.
- Couchbase 클러스터에서 결함이 있는 인스턴스를 제거하고 새 인스턴스로 교체하여 데이터 손실 없이 클러스터가 원하는 구성으로 백업되도록 합니다.
위의 요점을 설명하기 위해 파드를 삭제해 보겠습니다. cb-example-0002 를 클릭하여 클러스터의 작동 방식을 확인합니다.
이 블로그가 IBM Cloud Kubernetes Service의 Couchbase Autonomous Operator를 시작하기 위한 전반적인 가이드가 되었기를 바랍니다. IBM Cloud Kubernetes Service의 Couchbase Autonomous Operator를 시작하는 데 필요한 사항을 요약하면 다음과 같습니다.
- 만들기 IBM 클라우드 계정
- 메인 IBM Cloud 대시보드에 로그인
- Kubernetes 클러스터 생성
- 카우치베이스 자율 운영자 설치
- 퍼시스턴트 스토리지로 Couchbase 클러스터 만들기