이 블로그에서는 Kubernetes 및 CoreOS와 함께 Couchbase를 사용하는 설정 방법을 살펴보겠습니다. 베어 메탈 물리적 서버부터 클라우드의 가상 머신 또는 주요 클라우드 제공업체의 완전 관리형 솔루션에 이르기까지 다양한 배포 전략이 있습니다. 이 시리즈에서는 로컬 머신에서 모든 구성 요소를 실행하여 완전한 베어 메탈 Kubernetes 솔루션을 설치하겠습니다. 몇 가지 전제 조건이 있으며 전체적인 그림을 이해하기 위해 각각에 대해 조금씩 살펴보겠습니다. 이 블로그에서 사용하고 있는 환경은 다음과 같습니다:

먼저 Kubernetes를 설정하고 Vagrant와 CoreOS를 사용하겠습니다. Vagrant를 사용하면 다양한 팀원들이 일관된 개발 환경을 빠르게 만들 수 있습니다. 자세한 내용은 혜택 방랑자 사용을 중단합니다. 다음 페이지로 이동합니다. 다운로드 페이지 를 클릭하고 원하는 패키지를 선택하세요. 이 글을 쓰는 현재, 저희는 버추얼 박스 5.0.8에 대한 MAC OSX용 Vagrant 1.7.4를 대상으로 하고 있습니다.

.dmg 패키지를 열고 설치 지침을 따릅니다. 다음으로 Vagrant를 시작합니다.

Kubernetes 다운로드

터미널 애플리케이션 내에서 새 폴더를 생성하고 해당 폴더로 이동합니다. 이 예제에서는 'couchbase-kubernetes' 라는 폴더를 만들었으며, 여기서 대부분의 시간을 보내게 됩니다. 'kubectl' 은 Kubernetes API와 상호 작용하는 데 사용할 기본 명령 CLI 도구입니다.  

 

couchbase-kubernetes' 폴더에서 바이너리를 다운로드합니다. 먼저 패키지 관리자를 설치합니다, 홈브루를 클릭하고 아직 실행하지 않았다면 'wget' 을 실행하세요:

그러면 아래와 비슷한 화면이 나타나고 'kubectl' 이 저장됩니다. 저는 MacOSX를 사용하고 있기 때문에 'darwin' 환경을 선택했지만, 워크스테이션 운영 체제에 따라 'linux' 를 선택할 수도 있습니다. 

실행하여 바이너리가 실행 파일인지 확인합니다:

아래와 같이 'kubectl' 파일이 존재하고 실행 가능한 x86_64 파일인지 확인해야 합니다.

실행하여 'kubectl'을 PATH로 이동해 보겠습니다:

CoreOS 상에서 Kubernetes 실행하기

이제 CoreOS에서 Kubernetes를 실행할 가상 머신을 설정할 준비가 되었습니다. 먼저 Vagrant파일이 포함된 리포지토리를 복제합니다. Vagrantfile '은 Kubernetes 가상 머신의 구성을 갖게 됩니다. 명령을 실행합니다:

이제 아래와 비슷한 내용이 표시된 후 'coreos-kubernetes' 리포지토리가 생겼을 것입니다.

쿠버네티스 시작

이제 머신을 시작할 준비가 되었습니다. 이를 위해 먼저 Vagrant를 시작할 'single-node' 폴더로 이동합니다.

이제 '단일 노드' 폴더에서 아래 명령을 실행하여 VirtualBox에서 완전히 실행되는 가상 머신을 만듭니다.

64비트 버전을 대상으로 하는 아래는 Ubuntu 12.04 LTS 64비트 박스를 설정하는 과정에서 표시되는 내용입니다.

다음으로 VirtualBox에서 가상 머신을 실행하여 가상 머신을 실행해 보겠습니다:

kubectl 구성

단일 노드' 디렉터리 내에서 다음 명령어를 사용하여 로컬 Kubernetes 클라이언트를 구성합니다.

 

 

 

 

이제 모든 준비가 완료되었으므로 클러스터를 실행하여 클러스터의 상태와 구성 정보를 확인할 수 있습니다:

축하합니다! 이제 Kubernetes 클러스터가 실행되고 설정되었습니다. 이것은 Couchbase를 실행하기 전의 첫 번째 단계입니다. 다음에는 Kubernetes 클러스터에서 Couchbase를 실행하는 방법을 살펴보겠습니다.

카우치베이스 설정

단일 노드' 디렉토리 내에서 Couchbase 조각을 가져오기 시작합니다. 그런 다음 특정 서비스 로직에 맞게 Couchbase를 구성할 수 있습니다. 먼저 Couchbase-Kubernetes 리포지토리를 복제합니다:

 

다음 블로그에서는 Couchbase와 Kubernetes에 대한 개념과 Couchbase용 서비스 및 복제 컨트롤러의 구성 및 실행에 대해 살펴보겠습니다!  

 

작성자

게시자 윌리엄 호앙, 모바일 개발자 옹호자, Couchbase

윌리엄은 카우치베이스의 모바일 엔지니어링/개발자 경험 팀의 개발자 옹호자였습니다. 커피와 코드에 대한 그의 사랑은 오프라인 대면 경험을 즐기면서 모바일의 세계로 넘어왔습니다. 그 전에는 Twitter, BlackBerry, Microsoft에서 개발자 관계 팀에서 일했으며, Research In Motion에서 소프트웨어 임베디드 GPS 엔지니어로 근무하기도 했습니다. 윌리엄은 맥길 대학교에서 전기 소프트웨어 공학을 전공했습니다.

댓글 남기기