일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- kotlin querydsl
- mysql 튜닝
- CloudWatch
- 공부
- Pinpoint
- kotlin coroutine
- 코틀린 코루틴의 정석
- Elasticsearch
- kotlin
- minikube
- CKA 기출문제
- Linux
- 정보처리기사실기 기출문제
- APM
- 기록으로 실력을 쌓자
- 정보처리기사 실기 기출문제
- AI
- MySQL
- Kubernetes
- 오블완
- AWS EKS
- aws
- 정보처리기사 실기
- kotlin spring
- Spring
- 티스토리챌린지
- IntelliJ
- Java
- PETERICA
- CKA
- Today
- Total
피터의 개발이야기
[kubernetes] k9s 설치 및 사용법 본문
ㅁ 관련 글
ㅇ Kubernetes를 위한 최고의 도구는 무엇입니까?
ㅁ 개요
K9s는 Kubernetes 작업을 정말 쉽고 빠르고 안전하게 만들어주는 오픈 소스 명령줄 도구이다. 터미널 기반으로 UI를 통해 kubectl 명령어를 입력하지 않아도 직관적으로 작업을 수행할 수 있다. UI를 통해 kubernetes의 리소스를 생성, 업데이트, 로깅하고 제거하는 방법에 대해서 알아보았다.
update...
ㅇ[kubernetes] k9s의 xray, pluses 기능
k9s의 새로운 기능인 xray, pluses 기능을 사용하기 위해 업그레이드 과정과 신규 기능에 대해서 설명하였습니다.
ㅁ k9s 설치
참조페이지 이동은 여기. Linux, Windows 및 Mac용 바이너리는 릴리스 페이지에서 다운 받아서 설치할 수 있다. 주 사용 환경인 맥과 ec2 환경에서 설치해 보았다.
ㅇ MacOS
brew install k9s
- brew를 이용해 간단하게 설치를 하였고 커멘트 상에서 k9s 입력하여 메인 화면을 실행하였다.
ㅇ Linux
# 폴더 생성
$ mkdir k9s; cd k9s
# 다운로드
$ wget https://github.com/derailed/k9s/releases/download/v0.26.7/k9s_Linux_x86_64.tar.gz
# 압축해제
$ tar zxvf k9s_Linux_x86_64.tar.gz
# 실행 path 이동
$ sudo mv k9s /usr/local/bin/k9s
-설치 완료 후 설치 정보를 확인하였다.
ㅁ CLI 인수
K9s CLI는 다른 구성으로 도구를 시작하는 데 사용할 수 있는 옵션을 제공한다.
# List all available CLI options
k9s help
# Get info about K9s runtime (logs, configs, etc..)
k9s info
# Run K9s in a given namespace.
k9s -n mycoolns
# Run K9s and launch in pod view via the pod command.
k9s -c pod
# Start K9s in a non default KubeConfig context
k9s --context coolCtx
# Start K9s in readonly mode - with all modification commands disabled
k9s --readonly
ㅁ 메인 화면
ㅇ 학습을 위한 k8s-peterica의 전체 pod 정보를 확인할 수 있다.
ㅇ 숫자 0을 입력하면 전체 pod 정보를, 숫자 1을 입력하면 default 의 pod정보를 확인 할 수 있다.
ㅇ클러스터의 CPU 3%와 메모리 사용량 18%를 확인 할 수 있다.
ㅇ k8s의 버젼 정보는 v1.22.13-eks-15b7612 이다.
ㅁ 단축키 사용법: ?
ㅇ ? 을 입력하면 help 화면으로 이동되며, 단축키 사용법에 대해서 알 수 있다.
ㅁ 다른 리소스 확인 방법 ':'
ㅇ 참고로 로컬에는 docker-desktop, AWS에는 k8s-peterica를 사용하고 있다.
ㅇ context 이동을 위해 ':' 입력하면 위 그림처럼 command 입력이 가능 하다.
ㅇ conte까지만 입력하였는데 context 명령어 자동완성까지 지원되었다.
ㅁ Deploy 편집
ㅇ d 단축키를 통해 yaml을 편집할 수 있다.
ㅇ replicas를 3에서 4로 변경하였다.
ㅇ pod가 4개로 변경이 되었다.
ㅁ deploy Replicas 편집 : S
ㅇ 위에서는 yaml를 직접 편집하여 replicas를 변경하였다.
ㅇ 해당 deploy를 선택한 후에 s 단축키를 누르면 Replicas를 간단하게 변경할 수 있다.
ㅁ Deploy restart
ㅇ r 단축키를 사용하면 default/recover-deployment를 재기동 할 수 있다.
ㅁ Deploy yaml
ㅇ y 단축키를 통해 yaml의 정보를 확인할 수 있다.
ㅇ 여기서 c를 누르면 클립보드에 전체가 복사가 된다.
ㅁ Deploy 삭제
ㅇ ctrl + d 단축키를 통해 해당 deploy를 삭제하였다.
ㅁ Pod shell
ㅇ pod 목록에서 내부의 상황을 확인하기 위해 kubectl exec 명령어를 자주 사용하는데, 여기서는 s 단축키를 누르면 바로 shell로 접근할 수 있다.
ㅇ exit를 입력하면 다시 k9s pod 창으로 복귀한다.
ㅁ Pod -o wide
pod 정보에서 node 정보를 함께 보기 위해 pod -o wide 입력하였다. 운영상 pod의 밸런싱이 맞지 않을 때가 있는데, 그럴 경우 node ip를 확인하여 특정 node에 pod가 몰려 있는 경우 delete를 해 주어 밸런싱을 맞추는 작업을 하기도 한다. 이를 위해서는 pod의 정보에서 node정보가 함께 보여야 한다.
k9s에서는 특정 ip 정보를 입력하면 문자열이 포함된 pod정보만을 보여 주어 pod의 갯수 파악이 아주 쉬웠고, d 단축키를 통해 바로 삭제가 가능하였다.
ㅁ Key Bindings
Action | Command | Comment |
단축키 사용법 | ? | |
Show all available resource alias | ctrl-a | |
K9s 종료하기 | :q, ctrl-c | |
단수/복수 또는 단축 이름을 사용하여 Kubernetes 리소스 보기 | :pod⏎ | 단수, 복수, 짧은 이름 또는 별칭(즉, pod 또는 pod)을 허용한다. |
특정 네임스페이스의 Kubernetes 리소스 보기 | :pod ns-x⏎ | |
필터링된 포드 보기 | :pod /fred⏎ | View all pods filtered by fred |
라벨이 지정된 포드 보기 | :pod app=fred,env=dev⏎ | View all pods with labels matching app=fred and env=dev |
지정된 컨텍스트에서 포드 보기 | :pod @ctx1⏎ | View all pods in context ctx1. Switches out your current k9s context! |
필터가 제공되면 리소스 보기를 필터링한다. | /filter⏎ | Regex2 지원. fred|blee to filter resources named fred or blee |
역정규식 필터 | /! filter⏎ | Keep everything that doesn’t match. |
라벨별로 리소스 보기 필터링 | /-l label-selector⏎ | |
Fuzzy는 필터가 제공되는 리소스를 찾는다. | /-f filter⏎ | |
보기/명령/필터 모드에서 벗어남 | <esc> | |
로그 설명, 보기, 편집, 보기 등을 위한 키 매핑… | d,v, e, l,… | |
다른 Kubernetes 컨텍스트를 보고 전환하려면(Pod 보기) | :ctx⏎ | |
다른 Kubernetes 컨텍스트를 보고 직접 전환하려면(마지막으로 사용된 보기) | :ctx context-name⏎ | |
다른 Kubernetes 네임스페이스를 보고 전환하려면 | :ns⏎ | |
저장된 모든 리소스를 보려면 | :screendump or sd⏎ | |
리소스를 삭제하려면(Tab 및 Enter를 눌러 확인) | ctrl-d | |
리소스를 종료하려면(확인 대화 상자 없음, kubectl delete –now와 동일) | ctrl-k | |
pulses 보기 실행 | :pulses or pu⏎ | |
XRay 보기 실행 | :xray RESOURCE [NAMESPACE]⏎ | RESOURCE는 po, svc, dp, rs, sts, ds 중 하나일 수 있으며 NAMESPACE는 선택 사항이다. |
ㅁ 함께 보면 좋은 사이트
ㅇ k9s 홈페이지
ㅇ k9s 사용법 동영상
'Kubernetes > kube 개발환경' 카테고리의 다른 글
[kubernetes] 개발환경 목차, kubectl, Datree, eksctl, k9s, skaffold, LENS, OPENLENS (0) | 2024.01.13 |
---|---|
[kubernetes] context 변경을 돕는 kubectx (0) | 2024.01.09 |
[kubernetes] 네임스페이스 변경을 돕는 kubens (1) | 2024.01.09 |
Kubernetes를 위한 최고의 도구는 무엇입니까? (0) | 2024.01.05 |
[kubernetes] k9s의 xray, pluses 기능 (0) | 2023.10.20 |