Edge 배포용 Release 설치 가이드
Table of Contents
컨테이너 플랫폼 설치 2.1. Prerequisite 2.2. Stemcell 확인 2.3. Deployment 다운로드 2.4. Deployment 파일 수정 2.5. 릴리즈 설치 2.6. 릴리즈 설치 확인 2.7. CVE/CCE 진단항목 적용
컨테이너 플랫폼 배포 3.1. kubernetes Cluster 설정 3.2. 컨테이너 플랫폼 이미지 업로드 3.3. Secret 생성 3.4. Temp Namespace 생성 3.5. Taint 해제 3.6. Deployment 배포 3.6.1. paas-ta-container-platform-common-api 배포 3.6.2. paas-ta-container-platform-api 배포 3.6.3. paas-ta-container-platform-webuser 배포 3.6.4. paas-ta-container-platform-webadmin 배포 3.6.5. 배포 확인
1. 문서 개요
1.1. 목적
본 문서(컨테이너 서비스 설치 가이드)는 단독배포된 Kubernetes를 사용하기 위해 Bosh 기반 릴리즈 설치 방법을 기술하였다.
PaaS-TA 3.5 버전부터는 Bosh 2.0 기반으로 배포(deploy)를 진행한다.
1.2. 범위
설치 범위는 Kubernetes 단독 배포를 기준으로 작성하였다.
1.3. 시스템 구성도
시스템 구성은 Kubernetes Cluster(Master, Worker)와 BOSH Inception(DBMS, HAProxy, Private Registry)환경으로 구성되어 있다. Kubeadm를 통해 Kubernetes Cluster를 설치하고 Kubernetes 환경에 KubeEdge를 설치한다. BOSH 릴리즈로는 Database, Private registry 등 미들웨어 환경을 제공하여 Docker Image로 Kubernetes Cluster에 컨테이너 플랫폼 포털 환경을 배포한다. 총 필요한 VM 환경으로는 Master VM: 1개, Worker VM: 1개 이상, BOSH Inception VM: 1개가 필요하고 본 문서는 BOSH Inception 환경을 구성하기 위한 VM 설치와 Kubernetes Cluster에 컨테이너 플랫폼을 배포하는 내용이다.

1.4. 참고 자료
2. 컨테이너 플랫폼 설치
2.1. Prerequisite
본 설치 가이드는 Ubuntu환경에서 설치하는 것을 기준으로 작성하였다. 단독 배포를 위해서는 Inception 환경이 구축 되어야 하므로 BOSH 2.0 설치와 PaaS-TA 5.5 가이드의 Stemcell 업로드, Cloud Config 설정, Runtime Config 설정이 사전에 진행이 되어야 한다.
2.2. Stemcell 확인
Stemcell 목록을 확인하여 서비스 설치에 필요한 Stemcell 이 업로드 되어 있는 것을 확인한다. (PaaS-TA 5.5 와 동일 Stemcell 사용)
Stemcell 업로드 및 Cloud Config, Runtime Config 설정 부분은 PaaS-TA 5.5 설치가이드를 참고 한다.
$ bosh -e micro-bosh stemcells
2.3. Deployment 다운로드
서비스 설치에 필요한 Deployment를 Git Repository에서 받아 서비스 설치 작업 경로로 위치시킨다.
컨테이너 플랫폼 Deployment Git Repository URL : https://github.com/PaaS-TA/paas-ta-container-platform-deployment
2.4. Deployment 파일 수정
BOSH Deployment manifest는 Components 요소 및 배포의 속성을 정의한 YAML 파일이다. Deployment 파일에서 사용하는 network, vm_type, disk_type 등은 Cloud config를 활용하고, 활용 방법은 BOSH 2.0 가이드를 참고한다.
Cloud config 설정 내용을 확인한다.
$ bosh -e micro-bosh cloud-config
일부 application의 경우 이중화를 위한 조치는 되어 있지 않으며 인스턴스 수 조정 시 신규로 생성되는 인스턴스에는 데이터의 반영이 안될 수 있으니, 1개의 인스턴스로 유지한다.
Deployment YAML에서 사용하는 변수 파일을 서버 환경에 맞게 수정한다.
$ vi ~/workspace/paasta-5.5.0/deployment/paas-ta-container-platform-deployment/bosh/manifests/paasta-container-service-vars-{IAAS}.yml (e.g. {IAAS} :: aws)
IPS - k8s_api_server_ip : Kubernetes Master Node IP IPS - k8s_auth_bearer : Kubeedge 설치 가이드 - 5.1. Cluster Role 운영자 생성 및 Token 획득
서버 환경에 맞추어 Deploy 스크립트 파일의 VARIABLES 설정을 수정한다.
$ vi ~/workspace/paasta-5.5.0/deployment/paas-ta-container-platform-deployment/bosh/deploy-{IAAS}.sh
2.5. 릴리즈 설치
릴리즈 설치에 필요한 릴리즈 파일을 다운로드 받아 Local machine의 릴리즈 설치 작업 경로로 위치시킨다.
설치 릴리즈 파일 다운로드 :
릴리즈를 설치한다.
2.6. 릴리즈 설치 확인
설치 완료된 릴리즈를 확인한다.
$ bosh -e micro-bosh -d paasta-container-platform vms
2.7. CVE/CCE 진단항목 적용
배포된 Kubernetes Cluster, BOSH Inception 환경에 아래 가이드를 참고하여 해당 CVE/CCE 진단항목을 필수적으로 적용시켜야 한다.
3. 컨테이너 플랫폼 배포
3.컨테이너 플랫폼 배포 항목부터는 Master Node에서 진행을 하면 된다. kubernetes에서 PaaS-TA용 컨테이너 플랫폼을 사용하기 위해서는 Bosh 릴리즈 배포 후 Repository에 등록된 이미지를 Kubernetes에 배포하여 사용하여야 한다.
3.1. kubernetes Cluster 설정
단독배포용 Kubernetes Master Node, Worker Node에서 daemon.json 에 insecure-registries 로 Private Image Repository URL 설정 후 Docker를 재시작한다.
3.2. 컨테이너 플랫폼 이미지 업로드
Private Repository에 이미지 등록을 위해 컨테이너 플랫폼 이미지 파일을 다운로드 받아 아래 경로로 위치시킨다. 해당 내용은 Kubernetes Master Node에서 실행한다.
컨테이너 플랫폼 이미지 파일 다운로드 :
Private Repository에 이미지를 업로드한다.
Private Repository에 업로드 된 이미지 목록을 확인한다.
3.3. Secret 생성
Private Repository에 등록된 이미지를 활용하기 위해 Kubernetes에 secret을 생성한다.
3.4. Temp Namespace 생성
컨테이너 플랫폼 배포 전 최초 Temp Namespace 생성이 필요하다. 해당 Temp Namespace는 컨테이너 플랫폼 내 사용자 계정 관리를 위해 이용된다.
Temp Namespace를 생성한다.
3.5. Taint 해제
노드의 Taint 설정을 해제한다.(이미 KubeEdge 설치 가이드에서 Taint 설정 해제를 했으면 안해도 된다.)
3.6. Deployment 배포
3.6.1. paas-ta-container-platform-common-api 배포
컨테이너 플랫폼 yaml 파일
vi paas-ta-container-platform-common-api.yml
3.6.2. paas-ta-container-platform-api 배포
vi paas-ta-container-platform-api.yml
3.6.3. paas-ta-container-platform-webuser 배포
vi paas-ta-container-platform-webuser.yml
3.6.4. paas-ta-container-platform-webadmin 배포
vi paas-ta-container-platform-webadmin.yml
3.6.5. 배포 확인
배포된 Deployment, Pod, Service를 확인한다.
4. 컨테이너 플랫폼 운영자/사용자 포털 회원가입
컨테이너 플랫폼 최초 배포의 경우 운영자 포털 회원가입을 통해 Kubernetes Cluster 정보 등록이 선 진행되어야 한다. 따라서 운영자포털 회원가입 완료 후 사용자 포털 회원가입을 진행하도록 한다.
컨테이너 플랫폼 운영자포털 접속 URI :: http://{MASTER_NODE_PUBLIC_IP}:32080
{MASTER_NODE_PUBLIC_IP} :
paas-ta-container-platform-api.yml에서 작성하여 배포한 {MASTER_NODE_PUBLIC_IP}를 대입한다.
컨테이너 플랫폼 사용자포털 접속 URI :: http://{MASTER_NODE_PUBLIC_IP}:32091
{MASTER_NODE_PUBLIC_IP} :
paas-ta-container-platform-api.yml에서 작성하여 배포한 {MASTER_NODE_PUBLIC_IP}를 대입한다.
4.1. 컨테이너 플랫폼 운영자 포털 회원가입
운영자 포털을 접속하기 전 네임스페이스 'paas-ta-container-platform-temp-namespace' 가 정상적으로 생성되어 있는지 확인한다.
$ kubectl get namespace
Kubernetes Cluster 정보, 생성할 Namespace 명, User 정보를 입력 후 [회원가입] 버튼을 클릭하여 컨테이너 플랫폼 운영자포털에 회원가입을 진행한다.

Kubernetes Cluster Name : paas-ta-container-platform-api.yml에서 작성하여 배포한 {CLUSTER_NAME} 값을 입력한다.
Kubernetes Cluster API URL : https://{K8S_IP}:6443 을 입력한다. {K8S_IP}는 paas-ta-container-platform-api.yml에서 작성하여 배포한 {MASTER_NODE_PUBLIC_IP} 값을 입력한다.
Kubernetes Cluster Token : KubeEdge 설치 가이드의 5.1. Cluster Role 운영자 생성 및 Token 획득을 참고한다.
4.2. 컨테이너 플랫폼 운영자 포털 로그인
사용자 ID와 비밀번호를 입력 후 [로그인] 버튼을 클릭하여 컨테이너 플랫폼 운영자 포털에 로그인 한다.

4.3. 컨테이너 플랫폼 사용자 포털 회원가입
등록할 사용자 계정정보(사용자 ID, Password, E-mail)를 입력 후 [Register] 버튼을 클릭하여 컨테이너 플랫폼 사용자 포털에 회원가입한다. 사용자 포털은 회원가입 후 즉시 이용이 불가하며 Cluster 관리자 혹은 Namespace 관리자로부터 해당 사용자가 이용할 Namespace와 Role을 할당 받은 후 포털 이용이 가능하다.

4.4. 컨테이너 플랫폼 사용자 Namespace/Role 할당
1) Namespace 관리자 지정
Clusters 메뉴 > Namespaces 선택 > 할당 하고자하는 Namespace 명 선택 > 하단 [수정]버튼 클릭

해당 Namespace의 관리자로 지정할 사용자 ID 선택 후 저장버튼 클릭
해당 Namespace의 Resource Quotas, Limit Ranges 수정 가능

[참고] Namespace 생성시에도 Namespace 관리자를 지정할 수 있다.

2) Namespace 사용자 지정
운영자 포털
Managements 메뉴 > Users 선택 > User 탭 선택 > 사용자 ID 선택 > 하단 [수정]버튼 클릭

Namespaces/Roles 선택 > [수정]버튼 클릭
해당 사용자가 이용할 Namespace와 Role을 지정할 수 있다.

사용자 포털
Namespace 관리자는 해당 Namespace를 이용중인 사용자의 Role 변경 및 해당 Namespace를 미사용하는 사용자에게 접근 권한을 할당할 수 있다.

4.5. 컨테이너 플랫폼 사용자 포털 로그인
사용자 ID와 비밀번호를 입력후 [로그인] 버튼을 클릭하여 컨테이너 플랫폼 사용자 포털에 로그인 한다.

4.6. 컨테이너 플랫폼 사용자/운영자 포털 사용 가이드
컨테이너 플랫폼 포털 사용방법은 아래 사용가이드를 참고한다.
Last updated
Was this helpful?