Kubernetes

쿠버네티스에 카우치베이스 모바일 백엔드 배포하기

그리고 카우치베이스 자율 운영자 2.0 릴리즈에는 Kubernetes에서 Couchbase Server 노드를 그 어느 때보다 쉽게 배포, 프로비저닝, 모니터링 및 관리할 수 있는 여러 가지 획기적인 기능과 개선 사항이 도입되었습니다. Couchbase 서버 노드 외에도,  카우치베이스 모바일 배포에는 다음이 포함됩니다. 동기화 게이트웨이 간의 안전한 데이터 동기화를 제공하는 카우치베이스 라이트 지원 클라이언트 및 클라우드. 카우치베이스 서버는 동기화 게이트웨이를 위한 영구 백업 스토리지입니다.

동기화 게이트웨이의 상태 비저장 특성은 Kubernetes에 적합합니다. 이 포스팅에서는 Couchbase Autonomous Operator 2.0에 도입된 클라이언트 인증 개선 사항을 활용하면서 Kubernetes에 동기화 게이트웨이를 배포하는 방법에 대한 개요를 설명합니다.

Couchbase Mobile Deployment

동기화 게이트웨이 및 카우치베이스 자율 운영자

동기화 게이트웨이 클러스터는 다음을 사용하여 Couchbase Server 클러스터와 독립적으로 배포 및 관리됩니다. Kubernetes 배포 컨트롤러가 필요합니다. 카우치베이스 운영자가 동기화 게이트웨이를 배포, 프로비저닝 및 관리하는 데 익숙하지 않은 동안에는 패키지 다운로드 에는 동기화 게이트웨이 클러스터를 배포하고 Couchbase Server 클러스터에 연결하기 위한 샘플 배포 템플릿이 포함되어 있습니다.

동기화 게이트웨이 클러스터를 배포하는 데는 크게 두 가지 단계가 있습니다.

동기화 게이트웨이를 카우치베이스 서버에 연결하기

먼저, 동기화 게이트웨이 클러스터를 적절한 Couchbase 서버 버킷으로 부트스트랩해야 합니다. 동기화 게이트웨이 서버 구성 속성으로 설정합니다. 동기화 게이트웨이 클러스터는 다음 네트워크 구성 중 하나를 사용하여 Couchbase 서버에 연결할 수 있습니다.

이를 위해서는 동기화 게이트웨이 버전 2.7.1 이상이 필요합니다.

이를 위해서는 동기화 게이트웨이 버전 2.7.1 이상이 필요합니다.

동기화 게이트웨이와 서버 간의 통신은 다음과 같이 하는 것이 좋습니다. TLS를 통한 보안 네트워크 구성에 관계없이

따라서 적극 권장되기는 하지만 서버가 반드시 Kubernetes에 배포되어야 하는 것은 아닙니다.

동기화 게이트웨이가 서버에 연결할 수 있도록 네트워크를 구성하는 것 외에도 동기화 게이트웨이 노드는 Couchbase 서버로 인증해야 합니다. 두 가지 옵션이 있습니다.

동기화 게이트웨이 RBAC 사용자

이것은 아마도 Couchbase Mobile 배포에 사용되는 가장 일반적인 인증 메커니즘일 것입니다. Operator 2.0은 다음에 대한 지원을 도입합니다. RBAC 관리. 이 기능을 사용하여 운영자가 동기화 게이트웨이 RBAC 사용자 생성을 자동으로 관리하도록 할 수 있습니다. 이를 위해 카우치베이스 사용자 동기화 게이트웨이 사용자에 해당하는 적절한 사용자 역할 바인딩 를 사용하여 동기화 게이트웨이 사용자를 관련 관리 역할에 바인딩합니다(버킷_풀_액세스)에 정의된 대로 카우치베이스 그룹.

이 기능을 활용하려면 RBAC 관리를 사용 설정해야 합니다.
Kubernetes Operator RBAC Management

운영자가 RBAC 사용자를 관리하지 않도록 선택할 수 있으며, 이 경우 서버에서 다음과 같이 수동으로 사용자를 만들 수 있습니다. 일반적인 절차.

TLS 클라이언트 인증

오퍼레이터 2.0은 다음을 완벽하게 지원합니다. mTLS (상호 TLS). 이는 클라이언트 인증서를 사용하여 동기화 게이트웨이를 인증하는 데 활용할 수 있습니다.

Mutual Authentication

동기화 게이트웨이가 서버에 성공적으로 연결되면 다음 단계는 Couchbase Lite 클라이언트에 동기화 게이트웨이를 노출하는 것입니다.

동기화 게이트웨이를 카우치베이스 라이트 클라이언트에 노출하기

일반적인 카우치베이스 모바일 배포는 로드 밸런서를 앞세운 하나 이상의 동기화 게이트웨이 노드로 구성됩니다. 카우치베이스 라이트 클라이언트는 로드 밸런서에 연결합니다. 클라이언트에서 동기화 게이트웨이로의 통신은 TLS를 통해 보호됩니다. 몇 가지 배포 옵션이 있습니다.

패스스루 로드밸런서

이 옵션에서는 로드 밸런서가 다음 위치에서 작동합니다. 네트워크 스택의 레이어 4 는 카우치베이스 라이트 클라이언트와 동기화 게이트웨이 간의 트래픽을 통과하는 통로입니다. TLS 연결은 엔드투엔드 연결이며 동기화 게이트웨이에서 종료됩니다. 이 옵션은 외부를 지원하는 클라우드 제공업체에서 작동합니다. 로드 밸런서. 동기화 게이트웨이용 로드밸런서 서비스를 프로비저닝할 수 있습니다.
Layer 4 load balancer with Sync Gateway

로드밸런서를 TLS 종료로 사용

이 옵션에서는 애플리케이션 수준 로드 밸런서 는 Couchbase Lite 클라이언트와 동기화 게이트웨이 간의 통신을 가로채는 프록시 역할을 하며, 패킷 내용을 검사하여 로드 밸런싱 결정을 내립니다. 로드 밸런서에서 TLS 연결이 종료되어 동기화 게이트웨이의 부하가 완화됩니다. 이는 Couchbase Mobile의 매우 일반적인 배포 모델입니다.

TLS Termination Point with App Gateway

워크스루

다음 사항에 대한 단계별 지침을 제공하는 3부로 구성된 튜토리얼을 준비했습니다.

  • 배포 동기화 게이트웨이 클러스터를 생성하고 서버에 연결합니다.
  • 노출 외부 카우치베이스 라이트 및 RESTful 클라이언트에 대한 동기화 게이트웨이 배포 및
  • 관리 동기화 게이트웨이 클러스터

여기에는 모범 사례에 대한 설명과 배포에 참조하고 사용자 지정할 수 있는 샘플 .yaml 구성 파일에 대한 설명이 포함되어 있습니다.

이 튜토리얼의 지침은 모든 Kubernetes 환경에 적용됩니다. 관리형 Kubernetes 환경 간에 발생하는 차이점은 주로 네트워크 구성과 플랫폼별 로드 밸런서의 구성에 있습니다.

다음은 자율 운영자를 사용하여 널리 사용되는 관리형 Kubernetes 환경에서 Couchbase 서버 클러스터를 설정하기 위한 직접 링크입니다. Couchbase 서버가 배포되면 위의 튜토리얼에 설명된 단계에 따라 동기화 게이트웨이 클러스터를 배포합니다.

  • 아마존 웹 서비스(AWS)에서 쿠버네티스용 아마존 엘라스틱 컨테이너 서비스(EKS)로 카우치베이스 서버 클러스터를 설정하기 위한 지침은 이 문서에 설명되어 있습니다. 튜토리얼
  • Azure 클라우드 플랫폼에서 Azure 컨테이너 서비스(AKS)를 사용하여 Couchbase Server 클러스터를 설정하는 지침은 이 문서에 설명되어 있습니다. 튜토리얼
  • 아마존 웹 서비스(AWS)에서 쿠버네티스용 아마존 엘라스틱 컨테이너 서비스(EKS)로 카우치베이스 서버 클러스터를 설정하기 위한 지침은 이 문서에 설명되어 있습니다. 튜토리얼

헬름을 사용하여 배포하기

운영자 차트 가 이제 동기화 게이트웨이를 지원하도록 확장되었습니다. 따라서 한 단계로 오퍼레이터, Couchbase 서버 및 동기화 게이트웨이 클러스터를 배포할 수 있습니다! 물론 이 차트를 사용하여 헬름을 사용하여 배포되지 않은 Couchbase 서버에 독점적으로 연결된 동기화 게이트웨이 클러스터를 배포할 수도 있습니다. 동기화 게이트웨이 설치는 기본적으로 비활성화되어 있습니다.

동기화 게이트웨이를 배포하려면 적절한 오버라이드 에 대한 values.yaml 배포 요구 사항에 맞게 사용자 지정하여 설치합니다.

다음 단계

튜토리얼을 보면, Kubernetes를 사용하여 동기화 게이트웨이 컨테이너를 배포하는 데 몇 단계만 거치면 된다는 것을 알 수 있습니다.

질문이나 피드백이 있으면 아래에 댓글을 남기거나 트위터로 언제든지 문의해 주세요. @rajagp 또는 이메일 보내기. . 카우치베이스 포럼 를 통해 질문할 수 있습니다.

감사

다음 분들께 감사드립니다. 사이먼 머레이 튜토리얼에 대한 피드백을 보내주셨습니다.

 

이 문서 공유하기
받은 편지함에서 카우치베이스 블로그 업데이트 받기
이 필드는 필수 입력 사항입니다.

작성자

게시자 프리야 라자고팔, 제품 관리 부문 선임 이사

프리야 라자고팔은 클라우드 및 엣지용 개발자 플랫폼을 담당하는 Couchbase의 제품 관리 수석 이사입니다. 그녀는 20년 이상 여러 기술 및 제품 리더십 직책을 맡으며 전문적으로 소프트웨어를 개발해 왔으며, 그중 10년 이상은 모바일 기술에 집중했습니다. TISPAN IPTV 표준 대표로서 IPTV 표준 사양에 핵심적인 기여를 했습니다. 네트워킹 및 플랫폼 보안 분야에서 22개의 특허를 보유하고 있습니다.

댓글 남기기

카우치베이스 카펠라를 시작할 준비가 되셨나요?

구축 시작

개발자 포털에서 NoSQL을 살펴보고, 리소스를 찾아보고, 튜토리얼을 시작하세요.

카펠라 무료 사용

클릭 몇 번으로 Couchbase를 직접 체험해 보세요. Capella DBaaS는 가장 쉽고 빠르게 시작할 수 있는 방법입니다.

연락하기

카우치베이스 제품에 대해 자세히 알고 싶으신가요? 저희가 도와드리겠습니다.