본문 바로가기
AI 빅데이터/Google Cloud Platform

[GCP] 터미널에서 kubectl 사용하기

by 마고커 2020. 3. 4.


GKE에서 Kubernetes 클러스터를 생성했다면, Cloud Shell에서 바로 Kubectl을 이용해 Kubernetes 환경에 접근할 수 있다. 하지만, Cloud Shell 환경은 설치된 라이브러리나 소프트웨어가 향후에 사라질 수 있기 때문에, 인스턴스를 만들어 SSH연결이나 터미널 클라이언트를 사용하곤 한다.

터미널 클라이언트의 사용은 아래의 내용을 참고하면 된다.

터미널에서 Putty 사용하기

kubectl을 사용하기 위해서는 google cloud sdk를 설치해야하는데, 설치 방법도 위의 내용을 참고하면 된다. kubectl의 설치는 아래와 같이 한다.

sudo apt-get update && sudo apt-get install -y apt-transport-https
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee -a /etc/apt/sources.list.d/kubernetes.list
sudo apt-get update
sudo apt-get install -y kubectl


kubectl을 사용해 control할 cluster를 지정하고 credential을 확보해주어야 하는데, gcloud 명령어로 가능하다. GCP Console에서 GKE 클러스터를 하나 생성하고 그 이름을 ‘CLUSTER_NAME’에 지정해 주면 된다.

gcloud container clusters get-credentials [CLUSTER_NAME]


아래와 같이 동작하면 성공.

ryu.gcloud2@flask-test:~$ kubectl get service
NAME         TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)   AGE
kubernetes   ClusterIP   10.0.0.1     <none>        443/TCP   23h


※ AWS에서도 전체적인 맥락은 비슷한데, IAM과 RBAC간 계정 설정이 잘못되었는지, 아래와 같은 에러가 발생한다. 하루 동안 헤맸는데 아직 무슨 문제인지 모르겠다.

AWS Kubectl 설정 에러



댓글