Krok 1: Spustite server Kubernetes
V tomto kroku spustíme server Kubernetes, čo je minikube, ktorý obsahuje pody v kontajneri. Cluster minikube môžeme spustiť spustením nasledujúceho príkazu:
~$ spustiť minikubePo vykonaní príkazu sa v našej aplikácii spustí lokálny klaster minikube.
Minikube využíva VirtualBox na vytvorenie lokálne dostupného virtuálneho počítača. Naše príkazy alebo služby môžeme rýchlo nasadiť v klastroch Kubernetes. Potom ich otestujeme lokálne pomocou klastra minikube Kubernetes.
Krok 2: Zobrazte zoznam všetkých modulov spolu s obrázkami v klastri
Na spustenie všetkých týchto príkazov musí byť Kubectl nainštalovaný vo vašom lokálnom systéme. V tomto kroku sa naučíme, ako zobraziť zoznam obrázkov, ktoré používajú pody v klastroch a sú uložené v našom kontajneri. V našom nástroji príkazového riadka Kubectl môžeme spustiť nasledujúci príkaz, aby sme získali zoznam uložených obrázkov.
~$ kubectl dostať pod --all-namespaces -O jsonpath = '{rozsah .items[]}{'\n'}{.metadata.name}{':\t'}{rozsah .spec.kontajnerov[]}{.image}{', '}{end}{end }' | \> triediť
Po vykonaní príkazu sa výstup zobrazí ako na nasledujúcom obrázku:
Tento príkaz načíta zoznam modulov, ktoré sa nachádzajú v klastri, a potom načíta všetky obrázky, ktoré sa nachádzajú v tejto ceste. Po nájdení obrázkov príkaz tiež zoradí tieto obrázky v poradí podľa abecedy. Nakoniec počíta počet obrázkov, ktoré sú prítomné v našom klastri. Tento príkaz vráti výstup vo formáte cesty JSON. Poďme diskutovať o častiach príkazu jeden po druhom:
– -všetky-namespaces: Môžeme ľahko načítať zoznam podov vo všetkých menných priestoroch v našom klastri Kubernetes. Tu sú deklarované všetky obrázky strukov.
– o jsonpath=': Tento parameter udáva formát výstupu. Formát cesty JSON je podľa daného príkazu a zobrazuje názov podu a obrázky kontajnera, ako aj výstupný formát. Zoznam je oddelený tabulátormi a každý modul je oddelený vložením nového riadku.
|: Ako vidíte, príkazy využívajú znak „|“ charakter. Používa sa na prenos výstupu na odovzdávajúci príkaz.
zoradiť: Tento parameter zoradí obrázky v určitom poradí.
Toto je úplné vysvetlenie príkazu. Dúfajme, že chápete účel tohto príkazu. Ako môžeme vidieť na snímke obrazovky, zoznam podov a obrázkov je zobrazený a oddelený čiarkami.
Krok 3: Získajte zoznam obrázkov pre konkrétny modul
V tomto kroku sa dozvieme iba o načítaní konkrétnych obrázkov pod. Na tento účel znova spustíme príkaz, ktorý špecifikuje názov podu v ceste JSON. Spustite nasledujúci príkaz na načítanie obrázkov konkrétneho modulu.
~$ kubectl dostať strúčiky --all-namespaces -O jsonpath = '{.items[].spec.containers[].image}' -l aplikácie =nginxV tomto príkaze vezmeme modul s názvom „app=ngnix“.
Keď je príkaz vykonaný, výstupný formát cesty JSON zobrazí zoznam všetkých obrázkov kontajnerov, ktoré používa modul s názvom „app-ngnix“.
Týmto spôsobom môžeme získať zoznam obrázkov, ktoré používajú konkrétne moduly vo všetkých menných priestoroch v našej aplikácii Kubernetes.
Krok 4: Získajte zoznam obrázkov v konkrétnom mennom priestore v klastri
Toto je štvrtý krok nášho článku, v ktorom sa dozvieme, ako môžeme získať zoznam obrázkov pre konkrétny menný priestor v našom klastri Kubernetes. V našom nástroji príkazového riadka Kubectl spustíme nasledujúci príkaz:
~$ kubectl dostať strúčiky --namespace byť systémom -O jsonpath = '{.items[].spec.containers[].image}'V tomto príkaze chceme získať obrázky menného priestoru, ktorého názov je „kube-system“, ktorý používajú pody v našom klastri Kubernetes.
Vo výstupe, ktorý sa vytvorí pri vykonaní príkazu, sa zobrazí zoznam obrázkov. Tu je snímka obrazovky:
Formát cesty JSON výstupu sa dá ľahko získať spustením príkazu. Každý riadok vo výstupe sa približuje k obrázku kontajnera, ktorý používa pod v mennom priestore „kube-system“. Formát výstupu je znázornený šablónou cesty JSON, ktorá sa používa v príkaze. V tomto príklade šablóna „.items[].spec.containers [].image“ vracia obrázok kontajnera, ktorý používa každý modul v priestore názvov.
Krok 5: Získajte zoznam obrázkov všetkých menných priestorov šablóny Go
V tomto kroku sa naučíme proces načítania zoznamu obrázkov všetkých menných priestorov, ktoré používajú moduly, ktoré používajú výstupný formát „go template“ v klastri Kubernetes. Na tento účel používame nasledujúci príkaz:
~$ kubectl dostať strúčiky --all-namespaces -O go-template --šablóna = '{{range .ite ms}}{{range .spec.containers}}{{.image}} {{end}}{{end}}'Predtým, ako prejdeme na výstup, poďme najprv diskutovať o parametroch príkazu, aby ste mali predstavu o tom, ako môžeme použiť rôzne parametre v našom príkaze. Môžeme začať s novými parametrami, o ktorých sa predtým nehovorilo:
-o go-template: To ukazuje, že výstupný formát musí byť v súlade so zápisom „go-template“.
– -template=”{{rozsah. položky}} {{rozsah. spec.containers}}{{.image}} {{end}}{{end}}”: Toto poskytuje šablónu, ktorá sa má použiť pre výstup. Táto šablóna prechádza zoznamom modulov, pričom pre každý z nich získa obrázok kontajnera. Výsledkom je medzerami oddelený zoznam obrázkov kontajnerov, ktorý používajú všetky pody vo všetkých menných priestoroch v klastri.
Po vykonaní predchádzajúceho príkazu získate nasledujúci výstup:
Toto sú všetky kroky, pomocou ktorých môžeme načítať zoznam obrázkov, ktoré používajú moduly v našom kontajneri Kubernetes.
Záver
Dospeli sme k záveru, že pomocou nástroja príkazového riadka kubectl môžeme ľahko získať zoznam uložených obrázkov v kontajneri v našej aplikácii Kubernetes. V Kubernetes môžeme získať zoznam obrázkov rôznymi spôsobmi. Každá metóda je jasne vysvetlená v daných krokoch. Voľba „–all namespace“ získa obrázky všetkých menných priestorov, ktoré používa modul, ktoré sú uložené v kontajneri a dajú sa ľahko získať spustením príkazov. Ak chcete získať zoznam obrázkov, môžete postupovať podľa všetkých krokov vašej aplikácie spustením príkazov v nástroji príkazového riadka kubectl.