Kubernetes dla każdego – sztuka konteneryzacji
kubectl cluster-info informacje o klasterze
kubectl version --short wersja klienta lokalnego oraz klastra
kubectl --dry-run -o yaml zamienia polecenie imperatywne na deklaratywne
kubectl edit bezpośrednia edycja obiektów utworzonych w kubernetesie
kubectl describe szczegóły określonego zasobu lub grupy zasobów
node/minicubepodsnodes
kubectl api-versions obsługiwane wersje API na serwerze w postaci grupa/wersjakubectl options lista opcji które mogą być użyte z polecaniami
kubectl config modyfikacja pliku konfiguracyjnego $HOME/.kube/config
view pokaż zawartość plikuget-contexts lista dostępnych kontekstówcurrent-context obecnie ustawiony kontekstset-credentials dodanie danych dostępowych uzytkownikaset-cluster połączenie z klastremset-context <Context/ClusterName> dodanie kontekstuuse-context ustawienie domyslnego kontekstukubectl run Uruchomienie określonego obrazu w klastrze
kubectl run nginx --image nginx Uruchomienie pojedyńczej instancji nginx
kubectl run hello --image=hello-world
kubectl create Utworzenie zasobu z pliku
kubectl create -f nginx.yaml Utworzenie poda korzystając z danych pliku nginx.yaml
kubectl get nodes wyświetlenie nodów
kubectl get pods wyświetlenie podów
--all-namespaces-o wide pokazuje dadatkowo informacje o nodach na których jest uruchomiony-w monitoruje na bieżącokubectl logs <PodName> Logi z poda
-c <ContainerName>--tail=X X ostatnich linijek--since=X ostatnie X sekund--follow śledzenie logów - zwróć logi i czekaj na nowe-p logi sprzed restartem podakubectl attach <PodName> podłączenie się pod główny proces pierwszego kontenera
kubectl apply -f pod.yaml Uruchomienie/utworzenie obiektu z pliku, apply nadpisuje obiekty (sposób idempotentny jesli dany obiekt już istnieje ale powinien zostac zaktualizowany to go nadpisze)
kubectl delete -f pod.yaml Usunięcie poda
kubectl exec -it <PodName> /bin/bash interaktywne podpięcie się do kontenera w podzie
kubectl exec <PodName> -- wget -q0- httl://localhost:8080 zwróci stronę z localhost:8080
kubectl proxy tworzy proxy pomiędzy naszym środowiskiem a API Serwerem Kubernetesa
kubectl get deployments
kubectl get services
--v={0-9} Ustawia logowanie na poziomie {0-9} (inaczej wypisuje operacje jakie zostają wykonane pod spodem polecenia)-o=jsonapiVersion: apps/v1
kind: Deployment
metadata:
name: bb-demo
namespace: default
spec:
replicas: 1
selector:
matchLabels:
bb: web
template:
metadata:
labels:
bb: web
spec:
containers:
- name: bb-site
image: bulletinboard:1.0
---
apiVersion: v1
kind: Service
metadata:
name: bb-entrypoint
namespace: default
spec:
type: NodePort
selector:
bb: web
ports:
- port: 8080
targetPort: 8080
nodePort: 30001