K9s – Kubernetes Cluster Manager

K9s 는 Kubernetes 클러스터 관리의 효율성을 극대화하기 위해 설계된 강력한 CLI 도구입니다. YAML 파일을 작성하거나 복잡한 kubectl 명령어를 기억하지 않고도 직관적인 Terminal UI에서 Kubernetes 리소스를 손쉽게 관리하고 모니터링할 수 있습니다. 이 도구는 Open Source로 제공되며, Linux, MacOS, Windows 환경에서 설치와 사용이 가능합니다. 본 포스트에서는 Ubuntu OS에서 K9s의 설치 방법과 주요 기능들을 소개하고, 이를 통해 Kubernetes 클러스터를 보다 효율적으로 관리하는 방법을 살펴보겠습니다

목차

1. K9s란?
2. 환경 구성
3. K9s 설치
4. K9s 사용법
5. 결론

1. K9s란?

K9s란 Kubernetes Cluster를 보다 쉽게 관리할 수 있도록 Terminal UI를 제공하는 CLI 도구입니다. YAML 파일을 직접 작성하거나 kubectl 명령어를 입력하지 않고도 클러스터의 리소스를 효율적으로 모니터링하고 관리할 수 있습니다.

K9s는 Open Source Software로 이루어져 있으며 무료로 다운받을 수 있습니다. (K9s Github Link)

K9s 주요 기능

  • kubectl보다 직관적인 인터페이스 제공
  • Kubernetes 리소스(Pods, Deployments, Services 등) 실시간 모니터링
  • YAML 파일 직접 수정 가능
  • 내장 단축키 지원으로 빠른 탐색
  • Port-forward, 로그 조회, Pod 접근 등의 편리한 기능 제공

2. 환경 구성

  • Kubernetes : 1.30.4
  • K9s : 0.40.5

3. K9s 설치

K9s는 Linux, MacOS Windows를 지원하고 있습니다. (포스트에서는 Ubuntu OS를 사용하였습니다.)

Ubuntu에서의 설치방법은 Linux와 같이 LinuxBrew를 사용한 설치 방법과 PacMan, 패키지(Github) 사용한 설치 방법이 있습니다. (예제에서는 K9s Github에서 패키지 설치를 진행하였습니다.)

wget을 통해 패키지를 다운받습니다.

$ wget https://github.com/derailed/k9s/releases/download/v0.40.5/k9s_Linux_amd64.tar.gz

압축을 해제하여 K9s를 사용할 수 있도록 합니다.

$ tar -xvzf k9s_Linux_amd64.tar.gz

k9s 파일을 /bin 경로로 옮겨 명령어로 사용할 수 있도록 파일을 옳깁니다.

$ mv k9s /bin

$ k9s

k9s가 설치 완료 된 것을 확인할 수 있습니다.

4. K9s 사용법

K9s는 기본적으로 Kubernetes Cluster의 UI를 제공하고 있기 때문에 기존에 사용했었던 kubectl 보다 한눈에 볼 수 있습니다.

  • 리소스 선택 & Namespace 선택

K9s의 명령어를 통해 Namespace를 변경할 수 있고 Service, Deployment를 확인할 수 있습니다.

Default Namespace가 아닌 다른 Namespace를 선택하고 싶을 경우 아래와 같은 명령어 또는 K9s에서 명령어를 사용하여 다른 Namespace를 확인합니다.

$ k9s -n [Namespace]

또는 실행 후 아래와 같이 사용할 수 있습니다.

:namespace [Namespace]
또는 
:ns [namespace]

nginx Namespace의 Pod가 아닌 다른 리소스를 선택하려면 아래와 같은 명령어를 사용합니다.

$ k9s -n nginx -c [리소스]

또는 실행 이후 아래와 같이 사용할 수 있습니다.

:[리소스]
  • Label을 이용한 리소스 검색
/[Label 명]=[Label 값]

  • Pod 단축키

Pod를 커서에 올린 상태에서 사용이 가능한 K9s 단축키입니다.


a : Container 의 실행 중인 프로세스에 연결 합니다.
ctrl-d : Pod 삭제 
d : Pod Describe 확인
e : Pod 수정
s : Container의 Shell 접근 
y : Pod의 yaml 확인
l : Pod의 로그 확인 
p : 재시작된 컨테이너의 이전 로그
shift-f : port-forward
enter : Pod의 Container 확인
  • Service 단축키

Service를 커서에 올린 상태에서 사용이 가능한 K9s 단축키입니다.

ctrl-d : Service 삭제 
d : Service Describe 확인
e : Service 수정
y : Service 의 yaml 확인
l : Service에 연결된 Pod의 로그 확인 
p : Service에 연결된 Pod의 재시작된 컨테이너의 이전 로그
shift-f : port-forward
enter : Service와 연결된 Pod 확인
  • Deployment 단축키
ctrl-d : Deployment 삭제 
d : Deployment Describe 확인
e : Deployment 수정
y : Deployment 의 yaml 확인
l : Deployment에서 생성 된 Pod의 로그 확인 
p : Deployment에서 생성 된 Pod의 재시작된 컨테이너의 이전 로그
shift-f : port-forward
enter : Deployment에서 생성 된 Pod 확인

5. 결론

K9s는 kubectl보다 직관적인 인터페이스를 제공하며, Kubernetes 클러스터 관리에 유용한 도구입니다. 단축키를 활용하면 Pod, Service, Deployment 등의 리소스를 빠르게 탐색하고, YAML 수정 및 로그 확인도 손쉽게 할 수 있습니다. 실제 운영 환경에서도 K9s를 적극적으로 활용하면 관리 효율성을 높일 수 있습니다.

Kubernetes에 관련한 더 많은 정보를 알고싶으시다면 NGINX STORE Kubernetes 카테고리를 방문해주세요.

NGINX STORE를 통한 솔루션 도입 및 기술지원 무료 상담 신청

* indicates required