Krok 1: Spusťte server Kubernetes
V tomto kroku spustíme server Kubernetes, což je minikube, který obsahuje pody v kontejneru. Cluster minikube můžeme spustit spuštěním následujícího příkazu:
~$ spustit minikubePo provedení příkazu se v naší aplikaci spustí místní cluster minikube.
Minikube využívá VirtualBox k sestavení lokálně dostupného virtuálního stroje. Můžeme rychle nasadit naše příkazy nebo služby v clusterech Kubernetes. Poté je lokálně otestujeme pomocí clusteru minikube Kubernetes.
Krok 2: Zobrazte seznam všech modulů společně s obrázky v clusteru
Pro spuštění všech těchto příkazů musí být Kubectl nainstalován na vašem místním systému. V tomto kroku se naučíme, jak zobrazit seznam obrázků, které používají pody v clusterech a jsou uloženy v našem kontejneru. V našem nástroji příkazového řádku Kubectl můžeme spustit následující příkaz, abychom získali seznam uložených obrázků.
~$ kubectl získat lusky --all-namespaces -Ó jsonpath = '{range .items[]}{'\n'}{.metadata.name}{':\t'}{rozsah .spec.containers[]}{.image}{', '}{end}{end }' | \> seřadit
Po provedení příkazu se výstup zobrazí jako na následujícím snímku obrazovky:
Tento příkaz načte seznam podů, které jsou přítomné v clusteru, a poté načte všechny obrázky, které se nacházejí v této cestě. Po nalezení obrázků příkaz také tyto obrázky seřadí v pořadí podle abecedy. Nakonec počítá počet obrázků, které jsou přítomné v našem clusteru. Tento příkaz vrátí výstup ve formátu cesty JSON. Pojďme si jednotlivé části příkazu probrat jednu po druhé:
– -všechny jmenné prostory: Můžeme snadno načíst seznam podů ve všech jmenných prostorech v našem clusteru Kubernetes. Zde jsou uvedeny všechny obrázky lusků.
– o jsonpath=': Tento parametr udává formát výstupu. Formát cesty JSON je podle daného příkazu a zobrazuje název podu a obrázky kontejneru a také výstupní formát. Seznam je oddělen tabulátory a každý pod je oddělen vložením nového řádku.
|: Jak vidíte, příkazy používají „|“ charakter. Slouží k přenosu výstupu na předávací příkaz.
seřadit: Tento parametr seřadí obrázky v určitém pořadí.
Toto je úplné vysvětlení příkazu. Snad chápete účel tohoto příkazu. Jak můžeme vidět na snímku obrazovky, seznam podů a obrázků je zobrazen a oddělen čárkami.
Krok 3: Získejte seznam obrázků pro konkrétní pod
V tomto kroku se dozvíme pouze o načítání konkrétních obrázků pod. Za tímto účelem znovu spustíme příkaz, který určuje název podu v cestě JSON. Spusťte následující příkaz k načtení obrázků konkrétního modulu.
~$ kubectl dostat lusky --all-namespaces -Ó jsonpath = '{.items[].spec.containers[].image}' -l aplikace =nginxV tomto příkazu vezmeme modul s názvem „app=ngnix“.
Po provedení příkazu se ve výstupním formátu cesty JSON zobrazí seznam všech obrázků kontejneru, které používá modul s názvem „app-ngnix“.
Tímto způsobem můžeme získat seznam obrázků, které používají konkrétní pody ve všech jmenných prostorech v naší aplikaci Kubernetes.
Krok 4: Získejte seznam obrázků v konkrétním jmenném prostoru v clusteru
Toto je čtvrtý krok našeho článku, kde se dozvíme, jak můžeme získat seznam obrázků pro konkrétní jmenný prostor v našem clusteru Kubernetes. V našem nástroji příkazového řádku Kubectl spustíme následující příkaz:
~$ kubectl dostat lusky -- jmenný prostor být systémem -Ó jsonpath = '{.items[].spec.containers[].image}'V tomto příkazu chceme načíst obrázky jmenného prostoru, jehož název je „kube-system“, který používají pody v našem clusteru Kubernetes.
Ve výstupu, který se vytvoří při provedení příkazu, se zobrazí seznam obrázků. Zde je snímek obrazovky:
Formát cesty JSON výstupu lze snadno získat spuštěním příkazu. Každý řádek ve výstupu se blíží obrazu kontejneru, který používá pod v jmenném prostoru „kube-system“. Formát výstupu je zobrazen pomocí šablony cesty JSON, která se používá v příkazu. V tomto příkladu šablona „.items[].spec.containers [].image“ vrací obrázek kontejneru, který používá každý pod v oboru názvů.
Krok 5: Získejte seznam obrázků všech jmenných prostorů šablony Go
V tomto kroku se naučíme proces načítání seznamu obrázků všech jmenných prostorů, které používají pody, které používají výstupní formát „go template“ v clusteru Kubernetes. K tomu použijeme následující příkaz:
~$ kubectl dostat lusky --all-namespaces -Ó go-šablona --šablona = '{{range .ite ms}}{{range .spec.containers}}{{.image}} {{end}}{{end}}'Než přejdeme k výstupu, pojďme nejprve diskutovat o parametrech příkazu, abyste měli představu, jak můžeme použít různé parametry v našem příkazu. Můžeme začít s novými parametry, o kterých jsme dříve nemluvili:
-o go-template: To ukazuje, že výstupní formát musí být v souladu se zápisem „go-template“.
– -template=”{{rozsah. položky}} {{rozsah. spec.containers}}{{.image}} {{end}}{{end}}”: Tím získáte šablonu, která se použije pro výstup. Tato šablona prochází seznamem podů a načte obrázek kontejneru pro každý z nich. Výsledkem je mezerami oddělený seznam obrázků kontejnerů, který používají všechny pody ve všech jmenných prostorech v clusteru.
Po provedení předchozího příkazu získáte následující výstup:
Toto jsou všechny kroky, pomocí kterých můžeme načíst seznam obrázků, které používají pody v našem kontejneru Kubernetes.
Závěr
Došli jsme k závěru, že seznam uložených obrázků v kontejneru v naší aplikaci Kubernetes můžeme snadno získat pomocí nástroje příkazového řádku kubectl. V Kubernetes můžeme získat seznam obrázků různými metodami. Každá metoda je v daných krocích jasně vysvětlena. Volba „–all namespace“ získá obrázky všech jmenných prostorů, které modul používá a které jsou uloženy v kontejneru a lze je snadno načíst spuštěním příkazů. Chcete-li získat seznam obrázků, můžete postupovat podle všech kroků pro vaši aplikaci spuštěním příkazů v nástroji příkazového řádku kubectl.