-
[Kubernetes] kubectl 기본 사용 예제Open Source/Kubernetes 2023. 1. 13. 14:34반응형
kubectl 명령어 중 현업에서 자주 사용하고 있는 명령어 정리
등록된 것 확인
- kubectl get ... -n <namespace>
- namespace 를 지정하지 않으면 default 가 기본 네임스페이스가 된다.
# deploy 확인 kubectl get deploy -n dev # service 확인 kubectl get service -n dev kubectl get svc -n dev # 축약어 사용 # config-map 확인 kubectl get configmap -n dev kubectl get cm -n dev # 축약어 사용 # 한번에 여러개 확인 (pod, svc, cm) kubectl get pod,svc,cm -n dev
yaml 등 파일을 이용해 k8s 에 적용 하기
- 먼저 deploy.yml, service.yml 같이 파일로 내용을 정의한다.
- kubectl 로 파일을 적용한다.
# deploy.yml apiVersion: apps/v1 kind: Deployment metadata: name: tester namespace: dev spec: selector: matchLabels: app: tester replicas: 1 template: metadata: labels: app: tester spec: securityContext: fsGroup: 1000 containers: - name: tester image: ubuntu:20.04 command: - /bin/bash - -c - echo "hello $AAA" env: - name: AAA value: "aaa111" volumeMounts: - mountPath: /mount name: extvolume volumes: - name: extvolume persistentVolumeClaim: claimName: pvc-dev # k8s 에 적용 kubectl apply -f deploy.yml # namespace 지정 kubectl apply -f deploy.yml -n dev
pod 이 실제로 동작하는 node 확인방법
- -o wide 옵션 사용
kubectl get pod -n dev -o wide
pod 로그 확인
# 일반적인 방법 kubectl logs -f <pod 이름> -n dev # replica 가 1개인 경우 사용가능한 방법 kubectl logs -f deploy/<deploy 이름> -n dev # 10분 이내, 1시간 이내 로그만 표기 방법 kubectl logs -f <pod 이름> -n dev --since 10m # tail 사용법 kubectl logs -f <pod 이름> -n dev --tail 100
설정값 변경하기
- 각 설정들을 변경하고 저장을 하면 바로 k8s 클러스터에 적용된다
# 설정값 열기 kubectl edit deploy/<deploy-name> -n dev # ... 설정값 수정 및 저장 # 일반적으로 vi 로 열리기 때문에 저장은 :wq
각 Pod 의 리소스 상태 보기
kubectl top pod
반응형'Open Source > Kubernetes' 카테고리의 다른 글
[ConfigMap] edit 시 파일 내용이 문자열로 변환되는 표현 버그 수정 방법 (2) 2024.04.03