새 배포 환경 생성과 Kubernetes 클러스터 연결
Kubernetes 클러스터를 Apollo로 관리하려면 Apollo에서 배포 환경을 생성하고, 실제 클러스터를 그 배포 환경에 연결해야 합니다. 배포 환경을 등록하는 단계에서는 연결 방식, 초기 서비스, 팀 역할과 아티팩트 레지스트리를 설정합니다. 이후 클러스터에 초기 서비스를 설치하여 에이전트가 허브에 연결되도록 구성합니다.
시작하기 전에 클러스터가 스포크 배포 환경의 사전 요건을 충족하는지 확인합니다. 테스트나 학습에는 로컬 Kubernetes 클러스터를 사용할 수도 있습니다. 배포 환경을 생성하려면 전역 범위의 Creator 역할이 필요합니다.
1. 배포 환경 생성 시작
왼쪽 메뉴에서 Environments를 선택한 뒤 오른쪽 위의 New environment... → Create environment를 선택합니다.
생성과 연결을 안내하는 화면이 열립니다.
2. 이름과 연결 방식, 초기 서비스 설정
- 배포 환경 이름을 입력합니다.
- 에이전트 연결 방식을 선택합니다. 지속적으로 연결할지, 주기적으로만 연결할지 등 운영 방식에 맞추어 지정합니다. 선택지별 동작은 배포 환경의 연결 설정에서 설명합니다.
- 스포크 제어 플레인 모듈을 선택합니다.
- 필요한 경우 Advanced settings에서 연락 담당 팀을 지정합니다.
초기 모듈의 선택지는 다음과 같습니다.
| 선택지 | 설치 구성과 용도 |
|---|---|
Apollo Control Plane | 스포크 제어 플레인에서 실행할 Apollo 에이전트로 구성된 모듈입니다. 전체 스포크 제어 플레인의 모든 구성 요소를 갖추지 않고도 서비스 설치와 업그레이드를 시험할 때 사용할 수 있습니다. |
Blank environment | 초기 모듈을 설치하지 않습니다. 기반 인프라가 완전히 준비되기 전에 Apollo에 배포 환경부터 생성할 때 사용할 수 있습니다. 실제로 Apollo의 관리를 받으려면 Apollo 에이전트를 설치해야 합니다. |
연락 담당 팀은 이 배포 환경에 관한 일차적인 연락 창구입니다. 기본값은 담당 팀이 없는 상태이며, 생성할 때 지정하지 않아도 나중에 추가할 수 있습니다.
설정을 마치면 Next를 선택합니다.
3. 초기 역할 설정
다른 팀이 이 배포 환경에서 수행할 수 있는 작업을 역할로 지정합니다. 역할은 생성 이후에도 변경할 수 있습니다. 구성을 마치면 Set initial roles를 선택합니다.
역할별 권한은 역할에 따른 접근 권한에서 확인할 수 있습니다. 배포 환경을 생성할 권한, 그 안에서 일상 운영을 할 권한, 다른 팀의 역할을 관리할 권한을 구분하여 부여합니다.
4. 아티팩트 레지스트리 할당
배포 환경에 할당할 아티팩트 레지스트리를 선택합니다. 자체 OCI 레지스트리의 아티팩트가 필요한 제품을 배포한다면 해당 레지스트리를 배포 환경에 할당해야 합니다.
Add Artifact Registries를 선택하면 변경 요청이 생성됩니다. 레지스트리는 이 요청을 승인한 뒤 배포 환경에 할당됩니다.
마지막으로 Go to your environment를 선택하여 생성한 배포 환경으로 이동합니다.
5. 초기 서비스의 변경 요청 승인
클러스터를 연결하려면 기본 Apollo 서비스가 필요합니다. Apollo Control Plane 모듈을 선택하면 필요한 서비스를 Apollo가 자동으로 설치하는 구성이 됩니다. Blank environment를 선택했다면 Apollo 에이전트를 직접 설치해야 합니다. 필요한 서비스 구성을 함께 준비하려면 Apollo Control Plane 모듈을 사용하는 방법이 권장됩니다.
자신이 생성한 변경 요청을 자신이 승인할 수는 없습니다. 팀의 다른 사용자에게 승인을 요청해야 합니다.
- 배포 환경의 Changes 탭을 엽니다.
- 승인할 변경 요청을 선택합니다.
- 승인 권한이 있는 다른 사용자가 요청을 승인합니다.
6. 클러스터에 초기 매니페스트 적용
배포 환경의 Overview 탭을 엽니다. 아직 연결된 적이 없다면 연결 이력이 없다는 배너가 표시됩니다. 배너 오른쪽의 Environment setup guide를 선택합니다. Actions → Environment setup steps에서도 같은 설치 안내를 열 수 있습니다.
Environment setup instructions에 표시되는 절차를 따라 초기 Kubernetes 매니페스트를 다운로드하고 대상 클러스터에 적용합니다. 이 매니페스트로 helm-chart-operator를 설치합니다.
다음 명령으로 모든 네임스페이스의 Pod와 실행 위치를 확인하여 스포크 제어 플레인 서비스가 클러스터에서 실행 중인지 살펴볼 수 있습니다.
kubectl get pods --all-namespaces -o wide
각 Apollo 에이전트가 실행되면 에이전트 옆에 초록색 확인 표시가 나타납니다. 에이전트가 모두 준비되어 연결된 배포 환경은 Apollo의 관리를 받을 수 있습니다. 이후 첫 제품을 설치할 수 있습니다.
생성 이후 연락 담당 팀이나 운영 책임을 바꾸려면 배포 환경의 관리 정보 수정을 사용합니다.