Kubernetes 클라이언트 및 서버 버전 확인

KubernetesBeginner
지금 연습하기

소개

Kubernetes 는 개발자가 컨테이너화된 애플리케이션을 배포, 확장 및 관리하는 데 도움이 되는 강력한 컨테이너 오케스트레이션 도구입니다. Kubernetes 클라이언트 (kubectl) 및 서버의 버전을 아는 것은 문제 해결, 호환성 보장 및 업데이트 관리에 필수적입니다. 이 Lab 에서는 클라이언트 및 서버 버전을 확인하고 출력을 다양한 방식으로 형식화하는 방법을 배우게 됩니다.

Kubernetes 클러스터 시작

Kubernetes 명령을 실행하기 전에 실행 중인 클러스터가 필요합니다. 이 Lab 에서는 로컬 Kubernetes 클러스터를 설정하기 위해 Minikube 를 사용합니다.

먼저 터미널을 열고 /home/labex/project 디렉토리에 있는지 확인합니다.

cd ~/project

다음으로, 다음 명령을 사용하여 Minikube 클러스터를 시작합니다.

minikube start

이 명령은 단일 노드 Kubernetes 클러스터를 초기화합니다. Minikube 는 원격 클러스터 없이 로컬에서 Kubernetes 명령을 테스트하는 쉬운 방법을 제공합니다. Minikube 가 클러스터를 설정하고 필요한 구성 요소를 설치하는 데 몇 분 정도 걸릴 수 있습니다.

클러스터가 실행 중인지 확인하려면 다음을 실행하여 상태를 확인할 수 있습니다.

minikube status

클러스터가 실행 중임을 나타내는 상태를 볼 수 있습니다. 그렇지 않은 경우 minikube delete를 실행한 다음 minikube start를 사용하여 Minikube 를 다시 시작해 보십시오.

클라이언트 및 서버 버전 확인

Kubernetes 클라이언트와 서버 모두에 대한 버전 정보를 보려면 다음 명령을 사용하십시오.

kubectl version

이 명령은 클라이언트 (로컬 kubectl 도구) 와 서버 (클러스터에서 실행 중인 Kubernetes API) 모두에 대한 세부 정보를 출력합니다. 버전 정보에는 주 및 부 버전, Git 커밋 해시, 빌드 날짜 등이 포함됩니다.

예를 들어 다음과 같은 출력을 볼 수 있습니다.

Client Version: version.Info{Major:"1", Minor:"26", GitVersion:"v1.26.0", ...}
Server Version: version.Info{Major:"1", Minor:"26", GitVersion:"v1.26.0", ...}

"Client Version"은 kubectl 도구의 버전을 표시하고, "Server Version"은 클러스터의 Kubernetes API 서버를 나타냅니다. 명령이 올바르게 작동하려면 이러한 버전이 이상적으로 일치하거나 호환되어야 합니다.

클라이언트 버전만 확인

때로는 로컬 문제를 해결하거나 원격 클러스터와의 호환성을 확인하는 경우와 같이 kubectl 도구의 버전만 확인해야 할 수 있습니다. 클라이언트 버전만 표시하려면 다음 명령을 사용하십시오.

kubectl version --client

이 명령은 Kubernetes 클러스터에 연결을 시도하지 않고 클라이언트 버전만 출력합니다. 이는 클러스터를 사용할 수 없거나, 머신에 설치된 kubectl을 확인하려는 경우에 특히 유용합니다.

출력은 다음과 같습니다.

Client Version: version.Info{Major:"1", Minor:"26", GitVersion:"v1.26.0", ...}

JSON 형식으로 서버 버전 정보 표시

Kubernetes 는 자동화 및 다른 도구와의 통합에 널리 사용되는 JSON 과 같은 구조화된 형식으로 정보를 출력하는 것을 지원합니다. 서버 버전 정보를 JSON 형식으로 표시하려면 다음을 실행하십시오.

kubectl version --output=json

이 명령은 클라이언트와 서버 모두에 대한 버전 정보를 검색하고 JSON 객체로 형식을 지정합니다. JSON 출력은 기계가 읽을 수 있으며 스크립트 또는 외부 애플리케이션에서 구문 분석할 수 있습니다.

다음은 JSON 출력의 예입니다.

{
  "clientVersion": {
    "major": "1",
    "minor": "26",
    "gitVersion": "v1.26.0",
    ...
  },
  "serverVersion": {
    "major": "1",
    "minor": "26",
    "gitVersion": "v1.26.0",
    ...
  }
}

YAML 형식으로 서버 버전 정보 표시

Kubernetes 는 구성 파일 및 매니페스트에 YAML 을 자주 사용하므로 사람이 읽기 쉬운 출력을 위한 자연스러운 선택입니다. 서버 버전 정보를 YAML 형식으로 표시하려면 다음을 실행하십시오.

kubectl version --output=yaml

이 명령은 버전 정보를 검색하고 YAML 문서로 형식을 지정합니다. YAML 은 사람이 읽기 더 쉽고 Kubernetes 워크플로우에서 일반적으로 사용됩니다.

예를 들어, YAML 출력은 다음과 같습니다.

clientVersion:
  major: "1"
  minor: "26"
  gitVersion: v1.26.0
  ...
serverVersion:
  major: "1"
  minor: "26"
  gitVersion: v1.26.0
  ...

요약

이 랩에서는 다음을 배웠습니다.

  1. Minikube 를 사용하여 로컬 Kubernetes 클러스터를 시작합니다.
  2. kubectl version을 사용하여 클라이언트 및 서버 버전 정보를 모두 검색합니다.
  3. --client 플래그를 사용하여 클라이언트 버전을 독립적으로 확인합니다.
  4. 다양한 사용 사례에 맞게 JSON 및 YAML 형식으로 버전 정보를 지정합니다.

Kubernetes 버전 세부 정보를 이해하는 것은 문제 해결, 호환성 보장 및 Kubernetes 를 다른 도구와 통합하는 데 매우 중요합니다. 이러한 기본적인 명령을 통해 Kubernetes 환경을 더 잘 관리하고 버전 관련 문제를 디버깅할 수 있습니다. 계속 연습하고 탐구하십시오!