Anda dah belajar 25 minit. Rehat sekejap bantu otak anda.
Pecutan selesai! Fokus yang hebat. Regangkan badan seminit?
Helaian rujukan Kubernetes
Arahan yang anda dah belajar, di satu tempat.
Tinjau keadaan
kubectl get podsTunjuk dulang saya dan keadaannya.kubectl get pods -o wideTunjuk juga IP dan node setiap pod.kubectl get deployment shop -o yamlTunjuk seluruh objek, spec dan status.kubectl get pods -l app=shopHanya pod dengan label app=shop.kubectl get pods -APod dalam semua namespace.kubectl describe pod trayKenapa dulang ini belum sedia? Baca Events.kubectl explain deployment.spec.replicasApa maksud replicas?kubectl wait --for=condition=Ready pod/tray --timeout=60sTunggu sehingga dulang sedia.kubectl versionKubernetes versi mana yang saya guna?
Ubah kluster
kubectl apply -f shop.yamlPasang pesanan yang tertulis dalam shop.yaml.Risiko: Hati-hatikubectl apply -f shop.yaml --dry-run=serverMinta kluster semak, tanpa ubah apa-apa.Risiko: Hati-hatikubectl diff -f shop.yamlLihat apa yang apply akan ubah dulu.Risiko: Hati-hatikubectl create deployment shop --image=nginx:1.29-alpine --replicas=3Arahan tetap: sentiasa 3 dulang nginx.Risiko: Hati-hatikubectl create deployment shop --image=nginx:1.29-alpine --dry-run=client -o yamlCetak YAML, tiada yang dicipta.Risiko: Hati-hatikubectl create namespace foodBuat zon baharu bernama food.Risiko: Hati-hatikubectl delete pod trayAmbil satu dulang.Risiko: Boleh hilang kerjakubectl delete -f shop.yamlBuang apa yang fail itu buat.Risiko: Boleh hilang kerjakubectl scale deployment shop --replicas=5Kini mahu 5. Pengurus buat 2 lagi.Risiko: Hati-hatikubectl expose deployment shop --port=80Beri kedai nombor pesanan shop.Risiko: Hati-hatikubectl run tray --image=nginx:1.29-alpineSatu dulang, tanpa pengurus.Risiko: Hati-hatikubectl label pod tray tier=frontTampal pelekat tier=front pada dulang.Risiko: Hati-hatikubectl create role deployer --verb=get,list,patch --resource=deploymentsKad untuk baca dan patch Deployment.Risiko: Hati-hatikubectl create clusterrole node-reader --verb=get,list --resource=nodesKad untuk semua zon, dan benda tanpa zon.Risiko: Hati-hatikubectl create rolebinding ci-bot-deployer --role=deployer --serviceaccount=default:ci-botBeri bot CI kad deployer di sini.Risiko: Hati-hatikubectl create serviceaccount ci-botMula-mula, buat lencana bot itu.Risiko: Hati-hatikubectl autoscale deployment shop --cpu=50% --min=3 --max=103 hingga 10 dulang, sasar CPU separuh sibuk.Risiko: Hati-hatikubectl create configmap settings --from-literal=GREETING=HaiNota yang kata GREETING ialah Hai.kubectl create configmap settings --from-literal=GREETING=Hai --dry-run=client -o yamlCetak YAML, tiada yang dicipta.kubectl create secret generic till --from-literal=PASSWORD=practice-onlySecret bernama till dengan satu kunci, PASSWORD.Risiko: Hati-hatikubectl get secret till -o jsonpath={.data.PASSWORD}Tunjuk teks base64. Sesiapa yang boleh baca boleh nyahkodnya.Risiko: Hati-hatikubectl set resources deployment big --requests=cpu=100mTempah satu persepuluh CPU, bukan 64.Risiko: Hati-hatikubectl set resources deployment shop --limits=memory=128MiHadkan setiap dulang kepada 128Mi memori.Risiko: Hati-hatikubectl create job tally-now --from=cronjob/nightlyKira pinggan sekarang, dengan resepi malam ini.Risiko: Hati-hati
Rollout
kubectl set image deployment/shop web=nginx:1.30-alpineTukar dulang ke versi 1.30, sedikit demi sedikit.Risiko: Hati-hatikubectl rollout status deployment/shopBeritahu bila semua dulang baharu sedia.kubectl rollout history deployment/shopVersi apa yang kedai ini pernah ada?kubectl rollout undo deployment/shopKembali ke versi baik terakhir.Risiko: Hati-hatikubectl rollout restart deployment/shopDulang baharu, resepi sama.Risiko: Hati-hati
Nyahpepijat
kubectl logs deployment/oops --previousApa yang ia kata sebelum rosak?kubectl exec client -- wget -qO- http://shopDari pod client, minta halaman kedai.Risiko: Hati-hatikubectl port-forward svc/shop 8080:80localhost:8080 kini sampai ke pod kedai.kubectl debug -it tray --image=busybox:1.37 --target=webBawa kotak alat ke dalam dulang.Risiko: Hati-hatikubectl top podsSiapa guna paling banyak?kubectl eventsApa yang berlaku dalam zon ini baru-baru ini?kubectl get events --field-selector reason=FailedSchedulingHanya nota tentang pod yang tiada node.
Saya di mana?
kubectl config get-contextsSaya sedang bercakap dengan kluster mana?kubectl config use-context kind-devKembali ke kluster latihan saya.Risiko: Hati-hatikubectl config set-context --current --namespace=foodMulai sekarang, bekerja di zon food.Risiko: Hati-hatikubectl auth can-i delete pods --as=system:serviceaccount:default:ci-botBolehkah bot CI padam pod?kubectl auth whoamiSiapa saya dalam kluster ini?kubectl config current-contextSaya di mana? kind-dev, bagus.kubectl cluster-infoSapa pejabat pengurus.kind create cluster --name dev --config kind-dev.yamlBuka medan selera dev dengan 3 gerai. kubectl kini menghala ke kind-dev.kind delete cluster --name devTutup medan selera latihan untuk malam ini.Risiko: Boleh hilang kerja
Node
kubectl cordon dev-workerTiada dulang baharu di gerai ini.Risiko: Hati-hatikubectl uncordon dev-workerGerai terima dulang semula.Risiko: Hati-hatikubectl drain dev-worker --ignore-daemonsetsPindah semua dulang keluar dari gerai ini.Risiko: Boleh hilang kerjakubectl taint nodes dev-worker2 gpu=yes:NoScheduleHanya pod GPU di gerai ini.Risiko: Hati-hati
Pakej dan overlay
kubectl kustomize overlays/prodTunjuk versi prod sebelum di-apply.helm template shop ./kedai --set replicaCount=3Tunjuk YAML untuk 3 replika.helm install shop ./kedaiPasang chart kedai sebagai release shop.Risiko: Hati-hati