Txheej txheem cej luam ntawm k9s - lub davhlau ya nyob twg siab heev rau Kubernetes
K9 xyoo muab lub davhlau ya nyob twg tus neeg siv interface rau kev cuam tshuam nrog Kubernetes pawg. Lub hom phiaj ntawm qhov Open Source project yog ua kom yooj yim rau kev taw qhia, saib xyuas, thiab tswj cov ntawv thov hauv K8s. K9s tas li saib xyuas cov kev hloov pauv hauv Kubernetes thiab muab cov lus txib ceev rau kev ua haujlwm nrog cov kev saib xyuas.
Qhov project tau sau rau hauv Go thiab muaj nyob rau ntau tshaj li ib xyoos thiab ib nrab: thawj qhov kev cog lus tau ua thaum Lub Ob Hlis 1, 2019. Thaum lub sijhawm sau ntawv, muaj 9000+ hnub qub rau GitHub thiab txog 80 tus neeg pab txhawb nqa. Wb saib dab tsi k9s ua tau?
Installation thiab tso tawm
Qhov no yog tus neeg siv khoom (nrog rau Kubernetes pawg) daim ntawv thov, uas yooj yim tshaj los khiav raws li Docker duab:
docker run --rm -it -v $KUBECONFIG:/root/.kube/config quay.io/derailed/k9s
Rau qee qhov kev faib tawm Linux thiab lwm lub tshuab ua haujlwm kuj tseem npaj tau-rau-nruab pob. Feem ntau, rau Linux systems koj tuaj yeem nruab cov ntaub ntawv binary:
Tsis muaj cov cai tshwj xeeb rau K8s pawg nws tus kheej. Kev txiav txim los ntawm kev tshuaj xyuas, daim ntawv thov kuj ua haujlwm nrog cov laus ntawm Kubernetes xws li 1.12.
Daim ntawv thov pib siv tus qauv config .kube/config - zoo ib yam li nws ua li cas kubectl.
Kev Nkoj Tawm
Los ntawm lub neej ntawd, lub qhov rais qhib nrog tus qauv namespace teev rau cov ntsiab lus. Qhov ntawd yog, yog tias koj sau kubectl config set-context --current --namespace=test, ces lub namespace yuav qhib test. (Saib hauv qab no txog kev hloov cov ntsiab lus / namespaces.)
Mus rau hom lus txib ua tiav los ntawm txhaj rau ":". Tom qab ntawd koj tuaj yeem tswj tau li cas k9s ua haujlwm siv cov lus txib - piv txwv li, saib cov npe ntawm StatefulSets (hauv lub npe tam sim no) koj tuaj yeem nkag mus :sts.
Txhawm rau xaiv lub namespace muaj cov lus txib uas twb tau hais lawm :ns, thiab tom qab ntawd koj tuaj yeem siv qhov kev tshawb nrhiav rau qhov chaw xav tau: /test.
Yog tias peb tam sim no xaiv cov peev txheej uas peb xav tau (piv txwv li, tib StatefulSet), cov ntaub ntawv sib raug zoo yuav tshwm sim rau nws: pes tsawg lub pods khiav nrog cov ntaub ntawv luv luv txog lawv.
Tsuas yog pods tej zaum yuav txaus siab - ces cia li nkag :pod. Nyob rau hauv rooj plaub ntawm ConfigMaps (:cm - rau cov npe ntawm cov peev txheej no) koj tuaj yeem xaiv cov khoom nyiam thiab nyem rau ntawm "u", tom qab ntawd K9s yuav qhia koj tias leej twg (CM no) siv nws.
Lwm qhov yooj yim rau kev saib cov peev txheej yog lawv "X-ray" (XRay saib). Hom no yog hu los ntawm cov lus txib :xray RESOURCE thiab... nws yooj yim dua los qhia nws ua haujlwm li cas dua li piav qhia. Nov yog ib qho piv txwv rau StatefulSets:
(Txhua qhov kev pabcuam no tuaj yeem hloov kho, hloov pauv, ua describe.)
Kev txheeb xyuas los ntawm kab yog ua los ntawm cov keyboard shortcuts:
Hloov + n - los ntawm lub npe;
Hloov + o - los ntawm cov leeg;
Shift + i - los ntawm IP;
Hloov + a - los ntawm lub neej ntim khoom;
Hloov + t - los ntawm tus naj npawb ntawm rov pib dua;
Hloov + r - los ntawm kev npaj txhij;
Hloov + c - los ntawm CPU noj;
Hloov + m - los ntawm kev nco noj.
Yog hais tias ib tug neeg tsis nyiam lub hom phiaj xim, K9s txawm txhawb tawv nqaij. Npaj ua piv txwv (7 daim) muaj no. Ntawm no yog ib qho piv txwv ntawm ib qho ntawm cov tawv nqaij no (hauv navy):
Plugins
Thaum kawg plugins cia koj nthuav lub peev xwm ntawm K9s. Kuv tus kheej tsuas yog siv ib qho ntawm lawv hauv kuv txoj haujlwm - kubectl get all -n $namespace.
Zoo li no. Tsim ib cov ntaub ntawv $HOME/.k9s/plugin.yml nrog cov ntsiab lus zoo li no:
plugin:
get-all:
shortCut: g
confirm: false
description: get all
scopes:
- all
command: sh
background: false
args:
- -c
- "kubectl -n $NAMESPACE get all -o wide | less"
Tam sim no koj tuaj yeem mus rau lub npe chaw thiab nias "g" kom ua tiav cov lus txib:
Rau kuv saj, K9s tig tawm los siv tau yooj yim heev: nrog nws koj tuaj yeem siv sai sai los nrhiav txhua yam koj xav tau yam tsis siv. kubectl. Kuv txaus siab rau kev saib cov cav thiab txuag lawv, kho cov peev txheej ceev, kev ua haujlwm nrawm *, Popeye hom tau ua kom muaj txiaj ntsig. Cov lus tshwj xeeb yuav tsum tau ua los ntawm lub peev xwm los tsim plugins thiab kho cov ntawv thov kom haum rau koj cov kev xav tau.
* Txawm hais tias, nrog lub ntim loj ntawm cov cav, kuv kuj pom kev ua haujlwm qeeb ntawm K9s. Nyob rau lub sijhawm zoo li no, cov nqi hluav taws xob "noj" 2 cores ntawm Intel Xeon E312xx thiab tuaj yeem khov.
Dab tsi yog ploj lawm tam sim no? Ceev rollback rau yav dhau los version (peb tsis tau tham txog RS) yam tsis tau mus rau hauv phau ntawv. Tsis tas li ntawd, kev kho dua tshiab tsuas yog tshwm sim rau tag nrho cov ntaub ntawv: yog tias koj tshem tawm cov lus piav qhia lossis daim ntawv lo, koj yuav tsum rho tawm thiab rov qab tag nrho cov peev txheej (qhov no yog qhov koj yuav tsum tau mus rau hauv phau ntawv qhia). Lwm qhov me me yog tias hnub ntawm qhov kev cawmdim "backups" ploj lawm.