Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Kubectl을 사용한 문제 해결

문제 해결은 문제를 해결하기 위한 체계적인 접근 방식입니다. 문제 해결의 목표는 예상대로 작동하지 않는 이유와 문제 해결 방법을 확인하는 것입니다.

kubectl 명령줄 인터페이스

다음 Kubectl 명령을 사용하여 cRPD 문제를 해결할 수 있습니다.

  • kubectl get: 리소스를 나열합니다.

  • kubectl describe : 리소스에 대한 상세 정보를 표시합니다.

  • kubectl logs: Pod의 컨테이너에서 로그를 표시합니다.

  • kubectl exec: Pod 내의 컨테이너에 대한 명령을 실행합니다.

Pod 보기

파드는 하나 이상의 애플리케이션 컨테이너(예: Docker 또는 rkt)의 그룹과 해당 컨테이너에 대한 일부 공유 리소스를 나타내는 Kubernetes 추상화입니다.

이러한 리소스에는 다음이 포함됩니다.

  • 볼륨으로서의 공유 스토리지Shared storage, as Volumes

  • 네트워킹(고유한 클러스터 IP 주소)

  • 각 컨테이너를 실행하는 방법에 대한 정보(예: 컨테이너 이미지 버전 또는 사용할 특정 포트)

쿠버네티스에서 디플로이먼트를 생성할 때, 해당 디플로이먼트는 내부에 컨테이너가 있는 파드를 생성한다(컨테이너를 직접 생성하는 것이 아니라). 각 파드는 스케줄링된 노드에 묶여 있으며, 종료(재시작 정책에 따라) 또는 삭제될 때까지 그 자리에 남아 있다. 노드 실패의 경우, 동일한 파드가 클러스터의 다른 사용 가능한 노드에 스케줄링된다. 요약: Pod 노드 Kubectl 기본 명령 파드는 하나 이상의 애플리케이션 컨테이너(예: Docker 또는 rkt)의 그룹이며 공유 스토리지(볼륨), IP 주소 및 실행 방법에 대한 정보를 포함한다.

다음 명령을 실행하여 Pod를 봅니다.

root@ubuntu-vm18:~# kubectl get pods

컨테이너 로그 보기

목적

애플리케이션이 STDOUT에 보내는 모든 것은 파드 내의 컨테이너에 대한 로그가 된다.

작업

로그를 보려면 다음을 수행합니다.

  1. 다음 명령을 실행하여 로그를 검색합니다.

    root@ubuntu-vm18$ kubectl logs $POD_NAME