Clusters

Print

System Clusters에서는 system에 등록되어있는 cluster들을 관리할 수 있습니다. Cluster를 등록하는 New cluster, 등록되어져있는 cluster를 수정하는 Cluster Edit , 불필요한 cluster를 리스트에서 삭제하는 Cluster Delete 을 통해 유연한 cluster 관리 서비스를 제공합니다.

Cluster List

Cluster 화면은 Cluster의 효율적인 검색을 위한 (1)필터와 (2)리스트로 크게 구분할 수 있습니다.

① 필터

  • Provider : AWS, AZURE, GCP,IBM을 검색할 수 있습니다.

  • Type: Provisioned, Attached을 검색할 수 있습니다.

  • Name: cluster의 이름을 검색할 수 있습니다.

② 리스트

  • Cluster Name: 등록되어져있는 cluster의 이름을 보여줍니다.

  • Provider: 해당 클러스터의 provider Icon을 보여줍니다.

  • Type: 해당 클러스터의 등록 타입을 보여줍니다.

  • Last Provisioning Status : 가장 최근 cluster의 상태를 보여줍니다.
    type이 “attached”인 cluster는 상태가 attached로 고정이지만 “provisioned”인 cluster 상태는 아래와 같습니다.

Status

Cluster Provisioning

Cluster Delete

Node Pool Add

Node Pool Resize

Node Pool
Delete

Failed

o

o

o

o

o

Created

o

Deleted

o

o

o

Updating

o

o

Updated

o

o

  • Health : 해당 cluster의 상태를 아이콘으로 나타냅니다.

상태

모양

내용

Succeed

cluster가 정상 상태입니다..

Failed

cluster에 이상이 있습니다.

Unknown

cluster의 상태를 알 수 없습니다.

  • K8S Version : 설치된 K8S의 버전을 보여줍니다.

  • Allocated CPU, Memory : 사용되고 있는 리소스의 상태를 보여줍니다.

  • Nodes : 사용되고 있는 노드의 수를 보여줍니다.

  • Actions :

버튼

모양

내용

Detail

cluster detail를 확인합니다.

Delete

cluster를 삭제합니다.

New Cluster


CSP에서 사용하던 Cluster를 Attach하여 등록하는 Attach Cluster와 새 Cluster를 설치할 수 있는 Cluster Provisioning 2가지 방법으로 New Cluster 서비스를 제공합니다.

Attach cluster

Cluster Provider에서 설치하려는 provider의 종류를 선택하고 원하는 Cluster Name을 설정합니다. 그리고 Cluster API Server와 Token 정보를 받기 위해 아래와 같은 과정을 진행하여 입력하고 Attach를 클릭하여 Cluster를 등록합니다.

# 등록할 클러스터에 접속하여 아래의 Command를 실행 합니다.
$ kubectl create ns zcp-system
$ kubectl create serviceaccount zcp-mcm-backend-service-admin -n zcp-system
$ kubectl label sa zcp-mcm-backend-service-admin -n zcp-system zcp-mcm-default=true
$ kubectl create clusterrolebinding zcp-mcm-backend-service-admin \
    --clusterrole cluster-admin \
    --serviceaccount zcp-system:zcp-mcm-backend-service-admin
$ kubectl label clusterrolebinding zcp-mcm-backend-service-admin zcp-mcm-default=true
CLUSTER_APISERVER=$(kubectl config view --minify | grep server | cut -f 2- -d ":" | tr -d " ")
CLUSTER_TOKEN=$(kubectl describe secret -n zcp-system $(kubectl get sa zcp-mcm-backend-service-admin -n zcp-system -o jsonpath='{range .secrets[*]}{.name}{"\n"}' | grep zcp-mcm-backend-service-admin-token) | grep -E '^token' | cut -f2 -d':' | tr -d " ")
echo "-----------------------------"
echo "CLUSTER_APISERVER :: " $CLUSTER_APISERVER
echo "CLUSTER_TOKEN :: " $CLUSTER_TOKEN

Cluster Provisioning

Cluster Provisioning 은 provider을 선택하고 해당 provider에서 제공하는 서비스에 맞는 정보를 입력하여 설치할 수 있습니다. (Modernization platform v2.0에서는 AKS와 EKS가 활성화되어있습니다.)

AKS

  1. Basic info

AKS 클러스터 설치에 필요한 kubernetes version, Location 을 선택하고 원하는 Cluster Name을 입력합니다. Resource Group Name을 Reuse 필요 유무에 따라 ON/OFF 버튼을 누르고 설정합니다.

2. Crendential

Subscription Id, Client Id, Client Secret, Tenant Id를 입력합니다.

3. Node Group

default로 설치되는 Node Group을 위해 각 value들을 설정합니다.

4. Network

Network의 설정 값들을 지정합니다. Virtual Network과 Subnet는 reuse을 원할 시에 ON 버튼을 활성화하여 Name만을 입력하고 아닐 시에는 address를 함께 입력합니다. Docker Bridge Cidr은 기본 값으로 설정되어있고 Pod Cidr, Service Cidr, Dns Service Ip는 값들을 입력하여 Network를 구성합니다.

5. Security
Network Security Group을 구성하기 위해 Name과 Rules을 설정합니다.

reuse를 원할 시 ON 버튼을 활성화하여 Name만 입력합니다.