이 단계에서는 셸 환경을 설정하고 Google Cloud Platform(GCP) 프로젝트에서 GKE 클러스터를 만드는 방법을 설명합니다.
터미널 셸 설정
gcloud
도구는 GCP의 기본 명령줄 인터페이스를 제공하며 kubectl
은 Kubernetes 클러스터를 대상으로 명령어를 실행하기 위한 기본 명령줄 인터페이스를 제공합니다.
로컬 셸에
gcloud
와kubectl
이 설치되어 있는지 확인합니다.gcloud
도구는 GCP의 기본 명령줄 인터페이스를 제공하며kubectl
은 Kubernetes 클러스터를 대상으로 명령어를 실행하기 위한 기본 명령줄 인터페이스를 제공합니다.gcloud -h
kubectl -h
- 이 유틸리티가 설치되어 있지 않다면 지금 설치하세요.
gcloud
명령줄 도구가 포함된 Cloud SDK를 설치합니다.- Cloud SDK를 설치한 후 다음 명령어를 실행하여
kubectl
명령줄 도구를 설치합니다.
gcloud components install kubectl
-
gcloud
도구를 사용하여 기본 프로젝트와 컴퓨팅 리전 등 두 가지 기본 설정을 구성합니다.gcloud
를 사용하려면 작업할 프로젝트와 컴퓨팅 영역을 지정해야 하므로 이러한 설정을 구성하면gcloud
명령어를 더욱 쉽게 실행할 수 있습니다.현재 설정을 나열하려면 다음 단계를 따르세요.
gcloud config list
프로젝트 또는 컴퓨팅 영역이 나열되지 않으면 아래 표시된 명령어를 사용하여 추가해야 합니다. 목록 출력에서 프로젝트 및 컴퓨팅 리전(또는 영역)을 반영하도록 현재 설정을 전환해야 한다고 판단되는 경우 다음 명령어를 사용할 수 있습니다.
gcloud config set project project-id
gcloud config set compute/region compute-region
gcloud config set compute/zone compute-zone
여기에서 project-id는 GCP 프로젝트의 이름이고 compute-region은 GCP 컴퓨팅 리전의 이름이고 compute-zone은 GCP 컴퓨팅 영역의 이름입니다. 예를 들면
compute/region us-central1
입니다. 컴퓨팅 리전 및 영역 목록은 사용 가능한 리전 및 영역을 참조하세요.
GKE 클러스터 만들기
이 단계에서는 GCP 프로젝트(gcloud config
명령어로 설정한 프로젝트)에서 Kubernetes 클러스터를 만듭니다.
다음 명령어를 실행하여 클러스터를 만듭니다. 명령어에 지정된 머신 유형, 노드 수, 기타 설정으로 무료 체험 Apigee Hybrid 설치에 적합한 최소 구성 클러스터가 생성됩니다.
gcloud container clusters create cluster-name \ --machine-type "n1-standard-4" --num-nodes "3" --enable-autoscaling --min-nodes "3" --max-nodes "6"
여기서 cluster-name은 개발자가 선택한 클러스터의 이름입니다.
클러스터를 만드는 데 몇 분 정도 걸릴 수 있습니다. 성공하면 RUNNING
상태와 비슷한 출력이 표시됩니다.
NAME LOCATION MASTER_VERSION MASTER_IP MACHINE_TYPE NODE_VERSION NUM_NODES STATUS apigee-hybrid us-central1-a 1.13.11-gke.9 35.222.54.89 n1-standard-4 1.13.11-gke.9 3 RUNNING
현재 컨텍스트 설정
컨텍스트는 액세스 매개변수 그룹입니다. 각 컨텍스트에는 Kubernetes 클러스터, 사용자, 네임스페이스가 포함되어 있습니다. 현재 컨텍스트는 현재 kubectl
의 기본값인 클러스터입니다. 모든 kubectl
명령어가 이 클러스터를 대상으로 실행됩니다.
현재 gcloud
컨텍스트가 방금 만든 클러스터로 설정되어 있는지 확인합니다.
- 먼저 컨텍스트를 나열하여 컨텍스트가 현재 컨텍스트인지 확인합니다. 다음 예시에서 현재 컨텍스트는
gke_hybrid-project_us-central1-a_apigee-hybrid
입니다. 이름에는 GCP 프로젝트 이름(hybrid-project
), 리전 또는 영역(us-central1-a
), 클러스터 이름(apigee-hybrid
)이 포함됩니다.kubectl config get-contexts CURRENT NAME CLUSTER AUTHINFO NAMESPACE * gke_hybrid-project_us-central1-a_apigee-hybrid gke_hybrid-project_us-central1-a_apigee-hybrid gke_hybrid-project_us-central1-a_apigee-hybrid gke_apigee-project_us-west1-a_apigee-cluster gke_apigee-project_us-west1-a_apigee-cluster gke_apigee-project_us-west1-a_apigee-cluster
- 필요한 경우 현재 컨텍스트를 방금 만든 클러스터(Apigee Hybrid를 설치하려는 클러스터)로 설정합니다. 이전
get-contexts
출력을 가정하면, 만든 클러스터 이름이us-west1
리전의apigee-cluster
이면 다음과 같이gke_apigee-project_us-west1-a_apigee-cluster
컨텍스트로 전환합니다.kubectl config use-context gke_apigee-project_us-west1-a_apigee-cluster
여기서
gke_apigee-project_us-west1-a_apigee-cluster
는 전환할 컨텍스트의 이름입니다. - 현재 컨텍스트가 의도한 클러스터로 설정되었는지 확인합니다. 예를 들면 다음과 같습니다.
kubectl config current-context gke_apigee-project_us-west1-a_apigee-cluster
클러스터 사용자 인증 정보 부여
클러스터 사용자 인증 정보는 클러스터에서 실행 중인 컨테이너에 대한 액세스 권한을 부여합니다. 사용자 인증 정보를 가져와 cluster-admin 역할을 직접 부여합니다.
- 사용자 인증 정보를 가져옵니다.
gcloud container clusters get-credentials cluster-name
여기서 cluster-name은 만든 클러스터의 이름(Apigee Hybrid를 설치하려는 클러스터)입니다.
- 클러스터 역할 결합을 설정합니다. 다음 명령어를 다음과 같이 정확하게 실행합니다.
kubectl create clusterrolebinding cluster-admin-binding \ --clusterrole cluster-admin --user $(gcloud config get-value account)
요약
이제 GCP 프로젝트에서 Kubernetes 클러스터가 실행되고 있습니다. 셸 환경이 설정되었으며 이제 로컬 머신에 Apigee Hybrid 런타임 영역 소프트웨어를 설치할 준비가 되었습니다.
1 (다음) 2단계: apigeectl 설치 3 4