Kubernetes 초보入门: 첫걸음

클러스터 관리 명령어


kubectl [명령] [자원종류] [이름] [플래그]
명령: 하위 명령어 예: create, get, describe, delete
자원종류: 자원의 유형, 단수형,복수형 또는 약어 가능
이름: 자원의 이름, 없을 경우 모든 정보를 보여줍니다
플래그: 선택적 플래그 또는附加 파라미터
하위 명령어 설명
help 명령 및 하위 명령어의 도움말 보기
cluster-info 클러스터 관련 구성 정보 보기
version 서버 및 클라이언트 버전 보기
api-resources 현재 서버의 모든 자원 보기
api-versions 현재 서버의 모든 자원 버전 보기
config kubeconfig 인증 정보 관리

네임스페이스

네임스페이스는 Kubernetes 시스템에서 중요한 자원입니다. 환경 분리 또는 멀티 테넌트 환경에서 자원을 분리하는 데 사용됩니다.
  • kubectl get ns 또는 kubectl get namespaces로 네임스페이스 목록 보기
  • kubectl create ns [이름] 또는 kubectl create namespace [이름]로 네임스페이스 생성
  • kubectl delete namespace [이름]로 네임스페이스 삭제
  • kubectl describe ns [이름]로 네임스페이스 상세 정보 보기

포드

포드는 Kubernetes에서 가장 작은 실행 단위입니다. 하나 이상의 컨테이너로 구성될 수 있습니다. 같은 포드 내의 컨테이너는 같은 네트워크, IP, 및 저장소를 공유합니다.

포드 상태

  • Pending: 스케ジュulin 중
  • Running: 실행 중
  • Completed: 완료됨
  • Failed: 실패
  • Unknown: 상태 정보 없음

포드 관리 명령어

  • kubectl get pods -n [이름] -o wide -w로 포드 목록 보기
  • kubectl describe pod [이름] -n [이름]로 포드 상세 정보 보기
  • kubectl run [이름] --image=[이미지] --port=[포트] --namespace [이름]로 포드 생성
  • kubectl delete pod [이름] -n [이름]로 포드 삭제
  • kubectl exec [이름] -c [컨테이너 이름] -n [이름] -it /bin/bash로 컨테이너 내부로 진입

틴트 정책

틴트는 노드와 포드 사이에서의 호환성 문제를 해결하기 위한 라벨입니다. 세 가지 효과가 있습니다: PreferNoSchedule, NoSchedule, NoExecute.

틴트 관리

  • kubectl taint node [이름] key=value:effect로 틴트 설정
  • kubectl describe node [이름]로 틴트 보기
  • kubectl taint node [이름] key-value:effect-로 틴트 삭제

자원 파일 객체

Pod의 리소스清单 예제:

apiVersion: v1
kind: Pod
metadata:
  name: [이름]
  namespace: [이름]
  labels:
    [레이블]: [값]
spec:
  containers:
  - name: [이름]
    image: [이미지]
    ports:
    - name: [이름]
      containerPort: [번호]
    resources:
      limits:
        cpu: [값]
        memory: [값]
      requests:
        cpu: [값]
        memory: [값]

리소스 관리

  • kubectl apply -f [파일]로 리소스 파일 적용
  • kubectl create namespace [이름]로 네임스페이스 생성
  • kubectl describe pods -n [이름]로 포드 상태 보기

태그: kubernetes pods namespaces taints resource-management

6월 10일 21:42에 게시됨