Mga Larawan ng Listahan ng Kubectl

Mga Larawan Ng Listahan Ng Kubectl



Ang artikulong ito ay tungkol sa mga larawan ng listahan ng Kubectl. Dito, pagtutuunan natin ng pansin ang proseso kung paano ipinapakita ng command na 'Kubectl list images' ang listahan ng mga larawang ginagamit ng mga pod o kasalukuyang nasa mga node ng isang Kubernetes cluster. Kailangan namin ng kinakailangang pahintulot at mga kredensyal upang ma-access ang nakaimbak na listahan ng mga larawan. Sa Kubernetes, lahat ng command ay tumatakbo sa Kubectl command line tool upang maisagawa ang kanilang mga functionality. Matututuhan natin ang bawat utos at ang layunin nito na makuha ang 'Mga larawan ng listahan ng Kubectl' sa tulong ng mga nauugnay na halimbawa at impormasyon. Simulan natin ang gabay kung saan hinahati natin ang impormasyon sa ilang hakbang para sa iyong mas mahusay na pang-unawa.

Hakbang 1: Simulan ang Kubernetes Server

Sa hakbang na ito, pinapatakbo namin ang server ng Kubernetes na minikube na naglalaman ng mga pod sa isang lalagyan. Maaari naming patakbuhin ang minikube cluste sa pamamagitan ng pagpapatakbo ng sumusunod na command:

~$ simulan ang minikube

Kapag ang command ay naisakatuparan, ang minikube local cluster ay tumatakbo sa aming application.

Gumagamit ang Minikube ng isang VirtualBox upang bumuo ng isang virtual na makina na naa-access sa lokal. Mabilis naming mai-deploy ang aming mga command o serbisyo sa mga cluster ng Kubernetes. Pagkatapos nito, sinubukan namin sila nang lokal gamit ang minikube Kubernetes cluster.

Hakbang 2: Tingnan ang Listahan ng Lahat ng Pod kasama ng Mga Larawan sa Cluster

Upang patakbuhin ang lahat ng mga utos na ito, dapat na naka-install ang Kubectl sa iyong lokal na system. Sa hakbang na ito, matututunan namin kung paano tingnan ang isang listahan ng mga larawan na ginagamit ng mga pod sa mga cluster at naka-store sa aming container. Maaari naming patakbuhin ang sumusunod na command sa aming Kubectl command-line tool upang makakuha ng listahan ng mga nakaimbak na larawan.

~$ kubectl makakuha ng mga pod --all-namespaces -O jsonpath = '{range .items[]}{'\n'}{.metadata.name}{':\t'}{range .spec.containers[]}{.image}{', '}{end}{end }' | \

> uri

Kapag ang command ay naisakatuparan, ang output ay lilitaw tulad ng sa sumusunod na screenshot:

  Awtomatikong nabuo ang isang screen ng computer na may puting text na Paglalarawan na may mababang kumpiyansa

Kinukuha ng command na ito ang listahan ng mga pod na naroroon sa cluster at pagkatapos ay kinukuha ang lahat ng larawang makikita sa path na ito. Matapos mahanap ang mga larawan, pinag-uuri-uriin din ng command ang mga larawang ito sa pagkakasunud-sunod, ayon sa alpabeto. Panghuli, binibilang nito ang bilang ng mga larawang naroroon sa aming cluster. Ibinabalik ng command na ito ang output sa JSON path na format. Isa-isa nating talakayin ang mga bahagi ng utos:

– -all-namespaces: Madali naming makukuha ang listahan ng mga pod sa lahat ng namespaces sa aming Kubernetes cluster. Dito, idineklara ang lahat ng larawan ng mga pod.

o jsonpath=': Ang parameter na ito ay nagbibigay ng format ng output. Ang format ng JSON path ay ayon sa ibinigay na utos at ipinapakita ang pangalan ng pod at mga imahe ng lalagyan pati na rin ang format ng output. Ang listahan ay pinaghihiwalay ng tab, at ang bawat pod ay pinaghihiwalay sa pamamagitan ng paglalagay ng bagong linya.

|: Tulad ng nakikita mo, ginagamit ng mga utos ang '|' karakter. Ito ay ginagamit upang ilipat ang output sa passing command.

uri: Ang parameter na ito ay nag-uuri ng mga imahe sa isang partikular na pagkakasunud-sunod.

Ito ang kumpletong paliwanag ng utos. Sana, naiintindihan mo ang layunin ng utos na ito. Tulad ng nakikita natin sa screenshot, ang listahan ng mga pod at mga imahe ay ipinapakita at pinaghihiwalay ng mga kuwit.

Hakbang 3: Kunin ang Listahan ng Mga Larawan para sa isang Tukoy na Pod

Sa hakbang na ito, malalaman lang natin ang tungkol sa pagkuha ng mga partikular na larawan ng pod. Para sa layuning ito, pinapatakbo namin muli ang command na tumutukoy sa pangalan ng pod sa JSON path. Patakbuhin ang sumusunod na command upang kunin ang mga larawan ng isang partikular na pod.

~$ kubectl makakuha ng mga pod --all-namespaces -O jsonpath = '{.items[].spec.containers[].image}' -l app =nginx

Sa command na ito, kumuha kami ng pod na pinangalanang 'app=ngnix'.

Kapag naisakatuparan ang command, ipinapakita ng JSON path na format ng output ang listahan ng lahat ng mga imahe ng container na ginagamit ng pod na pinangalanang 'app-ngnix'.

Sa ganitong paraan, makakakuha tayo ng listahan ng mga larawang ginagamit ng mga partikular na pod sa lahat ng namespace sa aming Kubernetes application.

Hakbang 4: Kumuha ng Listahan ng Mga Larawan sa isang Tukoy na Namespace sa Cluster

Ito ang ikaapat na hakbang ng aming artikulo kung saan nalaman namin ang tungkol sa kung paano namin makukuha ang listahan ng mga larawan laban sa isang partikular na namespace sa aming Kubernetes cluster. Pinapatakbo namin ang sumusunod na command sa aming Kubectl command-line tool:

~$ kubectl makakuha ng mga pod --namespace maging isang sistema -O jsonpath = '{.items[].spec.containers[].image}'

Sa command na ito, gusto naming kunin ang mga larawan ng namespace na ang pangalan ay 'kube-system' na ginagamit ng mga pod sa aming Kubernetes cluster.

Ang isang listahan ng mga imahe ay ipinapakita sa output na ginawa kapag ang command ay naisakatuparan. Narito ang screenshot:

  Isang larawan na naglalaman ng teksto, screenshot, font, impormasyon Paglalarawan ay awtomatikong nabuo

Ang format ng JSON path ng output ay madaling makuha sa pamamagitan ng pagpapatakbo ng command. Ang bawat linya sa output ay lumalapit sa isang container na imahe na ginagamit ng isang pod sa 'kube-system' namespace. Ang format ng output ay ipinapakita ng JSON path template na ginagamit sa command. Sa halimbawang ito, ibinabalik ng template na '.items[].spec.containers [].image' ang container image na ginagamit ng bawat pod sa namespace.

Hakbang 5: Kunin ang Listahan ng Mga Larawan ng Lahat ng Namespace ng Go Template

Sa hakbang na ito, malalaman natin ang proseso ng pagkuha ng listahan ng mga larawan ng lahat ng namespace na ginagamit ng mga pod na gumagamit ng 'go template' na format ng output sa Kubernetes cluster. Para dito, ginagamit namin ang sumusunod na command:

~$ kubectl makakuha ng mga pod --all-namespaces -O go-template --template = '{{range .ite ms}}{{range .spec.containers}}{{.image}} {{end}}{{end}}'

Bago pumunta sa output, talakayin muna natin ang mga parameter ng command para magkaroon ka ng ideya kung paano natin magagamit ang iba't ibang parameter sa ating command. Maaari tayong magsimula sa mga bagong parameter na hindi napag-usapan dati:

-o go-template: Ipinapakita nito na ang format ng output ay dapat ayon sa notasyong 'go-template'.

– -template='{{range. aytem}} {{saklaw. spec.containers}}{{.image}} {{end}}{{end}}”: Nagbibigay ito ng template na gagamitin para sa output. Ang template na ito ay umuulit sa listahan ng mga pod na kumukuha ng imahe ng lalagyan para sa bawat isa. Ang resulta ay isang listahan ng mga container na imahe na pinaghihiwalay ng espasyo na ginagamit ng lahat ng pod sa lahat ng namespace sa cluster.

Sa pagpapatupad ng nakaraang utos, makukuha mo ang sumusunod na output:

  Isang screen shot ng isang computer program na Paglalarawan ay awtomatikong nabuo nang may mababang kumpiyansa

Ito ang lahat ng mga hakbang kung saan maaari naming makuha ang listahan ng mga larawan na ginagamit ng mga pod sa aming container ng Kubernetes.

Konklusyon

Napagpasyahan namin na madali naming makuha ang listahan ng mga nakaimbak na larawan sa container sa aming Kubernetes application sa tulong ng kubectl command line tool. Sa Kubernetes, makukuha natin ang listahan ng mga larawan sa iba't ibang pamamaraan. Ang bawat pamamaraan ay malinaw na ipinaliwanag sa ibinigay na mga hakbang. Nakukuha ng opsyong “–all namespace” ang mga larawan ng lahat ng namespace na ginagamit ng pod na nakaimbak sa container at madaling makuha sa pamamagitan ng pagpapatakbo ng mga command. Maaari mong sundin ang lahat ng mga hakbang para sa iyong aplikasyon upang makuha ang listahan ng mga larawan sa pamamagitan ng pagpapatakbo ng mga command sa kubectl command line tool.