개발강의정리/DevOps

[데브옵스를 위한 쿠버네티스 마스터] VisualStudio Code 설치와 활용

nineDeveloper 2021. 1. 19.
728x90

VS Code 설치와 활용

사용한 운영체제는 Ubuntu 20.04버전이며 쿠버네티스 환경은 ~ 버전이다
VirtualBox에 Kubernetes가 설치된 상태로 진행
여기서는 VirtualBox Kubernetes 환경에서 진행하지만 클라우드 환경이나 로컬 쿠버네티스도 충분히 사용 가능함
다만 애저 클라우드 환경에 경우에는 프로비저닝 할 수 있는 추가 툴을 설치해야 함

1. 우분투에 VS Code 설치

우분투에 VS Code를 설치하는 가장 간단한 방법은 snap을 사용해서 설치하는 것
물론 visual studio 사이트를 직접 방문해 deb 파일을 받고 dpkg로 설치하는 방법도 있음
여기서는 snap을 사용해 설치함

$ sudo snap install --classic code # or code-insiders
[sudo] server1의 암호:
code 0ba0ca52 from Visual Studio Code (vscode✓) installed

2. vscode 실행하기

커맨드에서 code를 실행하면 바로 실행됨

$ code

또는 우분투의 메뉴바에서 '프로그램 표시'를 클릭하고 이동해 vs를 검색해서 실행

vscode가 실행된 화면


3. 쿠버네티스 확장 플러그인 설치

vscode에서 쿠버네티스 확장 플러그인을 설치후 왼쪽 메뉴에서 Extesions를 클릭

  1. 옆으로 나오는 검색 바에서 kubernetes를 검색
  2. 화면에 보이는 첫번째 Kuberntes를 클릭하고 Install 클릭
  3. 오른쪽 아래에 의존성(dependency) 때문에 추가로 설치하라는 플러그인이 여러개 나오는데 그냥 다 설치하면 됨


4. Kubernetes와 연결

kubernetes가 설치된 환경에서 code를 설치하면 바로 ~/.kube/config 파일을 자동으로 읽는 것으로 보임

만약 자동으로 등록되지 않는 경우에는 오른쪽에 숨겨져있는 More Actions를 클릭하면 Cluster를 추가할 수 있는 기능이 나옴
kubeconfig를 직접 세팅하거나 Add Existring Cluster를 클릭하면 추가로 쿠버네티스와 연결이 가능함

클러스터에 잘 접속됐다면 스스로 쿠버네티스 클러스터의 정보를 조회하여 데이터를 가져옴


5. VScode를 사용해 쿠버네티스 포드 작성하기

yaml 디렉토리를 만들고 적당한 yaml 파일을 선택

mkdir ~/yaml

go-http-pod.yaml

apiVersion: v1
kind: Pod
metadata:
  name: http-go
spec:
  containers:
  - name: http-go
    image: gasbugs/http-go
    ports:
    - containerPort: 8080

yaml 파일이 있다면 cmd + shift + P를 누르고 Kubernetes: Create를 선택하면
kubectl create -f ~.yaml 처리와 같이 created 처리 해줌

Workloads - Pods 에서 created 된 Pod를 확인할 수 있음


6. 쿠버네티스 적용된 yaml 파일 수정하기

deployment 등의 수정이 가능한 파일은 여기서 바로 수정한뒤 저장을 누르면

자동으로 오픈된 Folder에 yaml 파일이 저장됨

cmd + shift + P를 누르고 Kubernetes: Apply를 선택하면 클러스터에 적용됨

확인을 묻는 창이 나오면 Apply를 클릭
파일의 변경된 부분을 확인할 수 있음

포드를 조회해보면 포드가 스케일링돼서 3개가 된 모습이 보인다

$ kubectl get pod
NAME                       READY   STATUS    RESTARTS   AGE
http-go-5bcd97bbdf-hsc48   1/1     Running   0          45s
http-go-5bcd97bbdf-r9qvb   1/1     Running   0          45s
http-go-5bcd97bbdf-rccxb   1/1     Running   0          4m34s

7. Kubernetes Support Extensions

yaml 파일을 자동으로 작성해주는 확장 플러그인

편리하게 원하는 yaml 파일을 빠르게 작성할 수 있음

Kubernetes Pod

deployment_simple

secret_template

728x90

댓글

💲 추천 글