แแแขแแ แแแขแจแ แฃแแแ แแแ แกแแชแแแแแ แ แแแขแแ แแขแฃแ แแ, แแแแ แแ แแแแฏแแ แฃแแแ แขแแแแกแ แ แฉแแแ แงแแแแแแ แฆแแ แแแฃแแแ. แแฃแแแ
แฃแแแ แขแแแแกแ แแ แซแแแแแ Kubernetes-แแแ แแฃแจแแแแแกแแแแก
แแแกแแฌแงแแกแแกแแแแก, แแแแแ แงแแแแแแ แแแ แขแแแ แแ แกแแกแแ แแแแแ แแแฅแแแแแแ Kubernetes-แแแ แแฃแจแแแแแกแแก. แจแแแแแแ แแ แซแแแแแ แแซแแแแ แแ แซแแแแแแก แแแกแ แฃแแแแแก kubectl
bash shell-แจแ:
echo "source <(kubectl completion bash)" >> ~/.bashrc
แแแขแแแแแแแขแ kubectl
แฉแแแฌแแ แแแ .bashrc แคแแแแจแ แแ แแแขแแแแขแฃแ แแ แแแแฅแขแแฃแ แแแแ แงแแแแ แฏแแ แแ, แ แแแแกแแช แญแฃแ แแ แแแแฌแงแแแ. แแก แแฉแฅแแ แแแก แแ แซแแแ แแ แซแแแแแแแแก แแ แแแ แแแแขแ แแแแก แแแ แแคแแก, แ แแแแ แแชแแ all-namespaces
. แแแแแขแแแแแ แแแขแแแแแ แจแ
แแแแฃแแแกแฎแแแแ แแแฎแกแแแ แแแ แแ CPU แแแแแขแแแ แกแแฎแแแแ แกแแแ แชแแจแ
แแฃ แแแแแแแชแแ แแ แแกแฌแแ แแ แแ แแก แแแฌแแ แแแ, แแแแแแแแแ, แแก แงแแแแ แฌแแแก แฎแกแแแก แแฎแแ แแแแจแแ แก แแแแแชแแแแ แแแแแกแแแ, แแแแ แแ แแ แแกแแแแก แฎแฃแ แแแก แแแก, แแแจแแ แแแแกแขแแ แก แแฅแแก แแแฎแกแแแ แแแแก แแแแแแแ. แแ แแฃ แแแแแแแชแแแก แแ แแฅแแก แแแงแแแแแฃแแ แแแฎแกแแแ แแแแก แแแแแขแ แแแแแแแแแแก แแ แแก, แแแแ แจแแแซแแแแ แแแแแแฌแแแแก แแแแแซแแก แฃแแแแ แแกแแแ.
แแแแก แแแแแแแ แแกแแชแแแแแแแ, Kubernetes แแแซแแแแ แกแแจแฃแแแแแแก แแแแงแแแแ แแแแฃแแแกแฎแแแแ แจแแแฆแฃแแแแแ แกแแฎแแแแ แกแแแ แชแแก แกแแคแฃแซแแแแแ. แแกแแแ แแฌแแ แแแ yaml แคแแแแจแ แแแแแ แแขแฃแแ แกแแฎแแแแแแก แกแแแ แชแแกแแแแก. แแฅ แแ แแก แแกแแแ แคแแแแแก แแแแแแแแ:
apiVersion: v1
kind: LimitRange
metadata:
name: mem-limit-range
spec:
limits:
- default:
memory: 512Mi
defaultRequest:
memory: 256Mi
type: Container
แจแแฅแแแแแ แแกแแแ แแแแแ แแ แแแแแ แแแ แแแแแกแแแแ แกแแฎแแแแ แกแแแ แชแแก. แแแแแแแแแ, แกแแฎแแแแ แกแแแ แชแแจแ limit-example
. แแฎแแ แแ แกแแฎแแแแ แกแแแ แชแแจแ แแแแแแแแแฃแ แแแแแกแแแแ แแแแขแแแแแ แก แแฅแแแแ 512 Mi แแแแแขแ, แแฃ แแ แแแแขแแแแแ แแกแแแแก แแแแแขแแแแ แแ แแ แแก แแแงแแแแแฃแแ แกแฎแแ แแแแแแแแฃแแแฃแ แ แแแแแขแ.
แแแแแแก แจแแแ แแแแแ Kubernetes-แแก แซแแแ แแแ แกแแแแจแ
Kubelet แแแแฃแแแกแฎแแแแแ แแฌแงแแแก แแแแแแก แจแแแ แแแแแแก, แ แแแแกแแช var/lib/docker แแแแแแแก แฎแแแแแกแแฌแแแแแ แแแกแแแก แกแแแ แชแแก 90%. แแก แจแแกแแแแจแแแแแ, แแฃแแชแ, แกแแแแ Kubernetes 1.7 แแ แแงแ แแแแฃแแแกแฎแแแแ แแแแแขแ แแแแแงแแแแแฃแแ แแแแแแแแก แ แแแแแแแแแแ, แ แแช แจแแแกแแแแแแแ แคแแแแแแแก แกแแกแขแแแแจแ แคแแแแแแแก แ แแแแแแแแแก.
แแแขแแแชแแฃแ แแ แแฅแแแแ แแแแขแแแแแ แ var/lib/docker แจแแแซแแแแ แแแแแแงแแแแก แแแกแแแก แกแแแ แชแแก แแฎแแแแ 50%, แแแแ แแ แจแแแซแแแแ แแแแแฌแฃแ แแก แแแแแแแ, แ แแช แแ แแแแแแแแก แจแแฃแฅแแแแก แแฃแจแแแก.
Kubelet-แแก แซแแแ แแแ แกแแแแจแ 1.4-แแแ 1.6-แแแ แแแแแฌแแแ แแแแแแขแแ แแก แแ แแจแ:
--eviction-hard
=memory.available<100Mi,nodefs.available<10%,nodefs.inodesFree<5%
1.7 แแ แจแแแแแ แแแ แกแแแแจแ แแก แแ แแจแ แแแงแแแแแฃแแแ แแแแฃแแแกแฎแแแแแ. แแฃแแชแ, แฌแแแ แแแ แกแแแแ แแ แแแแแขแ แแแแแแ inode แแแแแขแก.
แแแแแแฃแแ... แแแขแแ แ, แแแแ แแ แซแแแแ แ แแแแแแแแ แแแ แแฃแแแ แแแขแแแ
Minikube แแ แแก แฃแแแ แขแแแแกแ แแแ แแแแแแแแ แแแ Kubernetes แแแแกแขแแ แแก แแแกแแจแแแแแ. แแแ แแแจแแแแฃแแแ แแแ แขแแแ แแ แซแแแแแแ:
minikube start
แแ แแ แซแแแแแแก แแแจแแแแ แแฌแแแแก แ แแแแฃแ Kubernetes แแแแกแขแแ แก, แ แแแแแแช แแฃแจแแแแก แแฅแแแแก แแแแ แแขแแ.
แฎแ แแแ แแ แแก แแก, แแฃ แ แแแแ แฃแแแ แแแแจแแแแ แแแแแแแชแแ แแ แแแฃแจแแแ แแแ แแแแแแแแ แแแแ แแ แแแแกแขแแ แแ. แแฃ แแแแแ แแขแฃแ แแแกแขแ แฃแฅแชแแแก แแ แแแแชแแแ, Docker-แแก แกแฃแ แแแ แแจแแแแแแ แแฅแแแแก แแแแแแฃแขแแ แแ แแ แแ แ แแแแกแขแแ แแ.
แแแแกแแแแแก, แ แแ Docker แแแซแฃแแแ แกแฃแ แแแ แแแแแแขแแแแก แแแแแแแแ แแ Kubernetes แแแแกแขแแ แจแ, แแแแแ แแแแฅแแแแก แแซแแแแ แจแแแแแแ แแ แซแแแแแ:
eval $(minikube docker-env)
แแฎแแ แฉแแแ แจแแแแแซแแแ แจแแแฅแแแแ แแแแแแแชแแแแ แแแแแแแแ แแ Kubernetes แแแแกแขแแ แแ.
แแ แแแกแชแแ kubectl-แก แฌแแแแแ แงแแแแแก
แแก แแจแแแ แแ แฉแแแก, แแแแ แแ แแฃ แ แแแแแแแแ แแฃแแแ แแงแแแแแก แแ แแกแ แแ แแแแแ แแแแกแขแแ แก แแแแแกแ แแแแแแแชแแแแแกแแแแก (แ แแกแแแแกแแช แจแแแฅแแแ Kubernetes), แแฅแแแ แฃแแ แแแแ แแ แฃแแแ แแแกแชแแ แงแแแแแก kubectl
. แฃแแฏแแแแกแแ แแแแแแงแแ แแ แซแแแแแแแ, แแแแแแแญแแ แแแแแแฃแ แแแแแแแก แกแแแฃแแแ แ แกแแฎแแแแแแก แกแแแ แชแ แแ แจแแแฆแฃแแแ แฌแแแแแ RBAC แแแแแขแแแแก แแแแแงแแแแแแ.
แแฅแแแ แจแแแแซแแแแ แแแแแแแ แแแแแแฃแแ แแแแแกแแแแก แฌแแแแแแก, แฌแแแแแฎแแแก, แจแแฅแแแแก, แฌแแจแแแก แแ แกแฎแแ แแแแ แแชแแแแแก แฃแคแแแแแแแก แแแแแญแแแแ. แแแแ แแ แแแแแแ แ แแก แแ แแก, แ แแ แจแแแฆแฃแแแก แฌแแแแแ แกแแแแฃแแแแแแแแ, แ แแช แแแก แแฎแแแแ แแแแแแแกแขแ แแขแแ แแแก แแซแแแแก. แแ แแแแ แฉแแแ แแแแแแกแฎแแแแแแ แแแ, แแแกแแช แจแแฃแซแแแ แแแแกแขแแ แแก แแแแแแแกแขแ แแ แแแ แแ แแแ, แแแกแแช แฃแแ แแแแ แจแแฃแซแแแ แแแกแจแ แแแแแแแแแ.
แแแ แแแฃแฏแแขแแก แแแ แแแ
แ แแแแ แฃแแ แฃแแแแแแงแแ แแฃแแแ แแแขแแก แแแแกแขแแ แจแ แแแแแแแชแแแก แจแแคแแ แฎแแแแก แแ แ? PodDisruptionBudget แแ แแกแแ PodDisruptionBudget.
แแแแกแขแแ แแแ แแแ แแแแฃแแแ แแแแแฎแแแแแ แแ แแแแแซแแแ แแชแแแแ. แแ แแคแแ แ แแแแก, แแก แแ แแก แ แแแแแแ. แงแแแแแ แแแแแแแแแ แแ แแแ แแแขแ แแแแแแแแแ แฃแแแ แจแแแชแแแแแก PDB-แก (PodDisruptionBudget). แแก แแฅแแแแแ แแแ แขแแ yaml แคแแแแจแ, แ แแแแแแช แแแแแแงแแแแแ แแแแกแขแแ แแ. แแแแแ แแขแฃแแ PDB-แแก แแแคแแ แแแก แแ แแแแ แแแแแกแแแฆแแ แแแ แแขแแแแขแแแแก แกแแแแฅแขแแ แแแแ.
แจแแแแจแแแ: PDB แแแฃแฏแแขแ แแฎแแแแแแแแแจแ แแแแฆแแแ แแฎแแแแ แแแจแแ, แ แแแแกแแช แแแฃแฏแแขแแก แแแ แฆแแแแ แจแแฅแชแแแแแแ (
แแแแแแแแ PDB:
apiVersion: policy/v1beta1
kind: PodDisruptionBudget
metadata:
name: app-a-pdb
spec:
minAvailable: 2
selector:
matchLabels:
app: app-a
แแ แ แซแแ แแแแแ แแแ แแแแขแ แแ matchLabels
ะธ minAvailable
. แแแ แแแแ แแแ แแแแขแ แ แแแแกแแแฆแแ แแแก, แ แแแแ แแแแแแแชแแแแแ แแ แชแแแแแแ แแแฃแฏแแขแ. แแแแแแแแแ, แแฃ แแ แแแฅแแก แแแแแแแแแ แแขแแแแขแแแแ app: app-a
ะธ app: app-b
, แแแจแแ แแก PDB แแ แชแแแแแแ แแฎแแแแ แแแ แแแแแ.
แแแ แแแแขแ แแก minAvailable
แแแแแแแแกแฌแแแแแฃแแแ แแแแแซแแก แแแชแแแก (แแแฌแแแแแแกแแก). แแแแแแแแแ, แฉแแแแก แแแแแแแแจแ, แแแชแแแก แแ แแก, แงแแแแ แแแกแขแแแชแแ แแแแแกแแฎแแแแฃแแแ app: app-a
, แแแ แแ แแ แ.
แแก แกแแจแฃแแแแแแก แแแซแแแแ แแแแแขแ แแแแ แแแแแแแชแแแก แ แแแแแแ แแแกแขแแแชแแ แฃแแแ แแงแแก แแแจแแแแฃแแ แแแแแกแแแแ แแ แแก.
แแแแแชแฎแแแแก แฏแแแแ แแแแแแแก แแแแแขแแ แแแแ
แแกแแแ แแแแแขแแ แแแแ แจแแกแแซแแแแแแแ แแ แ แแแแ: แแแแแงแแคแแแก แแ แกแแชแแชแฎแแแกแฃแแแ แแแแแแแก แขแแกแขแแแแก แแแแแงแแแแแแ.
แแแ แแแแ แแแแแ (แแแแแงแแคแแ) แแแแกแแแฆแแ แแแก แแแแขแแแแแ แแก แแแแแงแแคแแแก แขแ แแคแแแแก แแแกแแฆแแแแ.
แแแแ แ (แกแแชแแชแฎแแ) แแแแฉแแแแแแก, แแ แแก แแฃ แแ แ แแแแขแแแแแ แ แฏแแแกแแฆแ แแ แกแแญแแ แแแแก แฎแแแแฎแแ แแแฌแงแแแแก.
แจแแกแแแแแแกแ แแแแคแแแฃแ แแชแแแแ แฃแแ แแแแ แแแแขแแแ yaml-แก แแแแแแแแแแกแแแแก. แแฅ แจแแแแซแแแแ แแแฃแแแแแ แแแแแแ, แแแแแแแแแแแก แแ แ แแ แแแแแแแ แแแแแ แชแแแแแก แ แแแแแแแแ. แแฎแแแแ แแแขแ แแแขแแแ แแแ แจแแกแแฎแแ
แขแแแแแ แงแแแแแแแแ
แแแแแแแแ แแฃแแแ แแแขแแก แแ แ-แแ แแ แคแฃแแแแแแแขแฃแ แ แแแแชแแคแชแแแ. แแกแแแ แกแแจแฃแแแแแแก แแซแแแแก แแแแแฅแขแแแก แแแแแกแฃแคแแแ แแแฃแแแแจแแ แแแแ แแ แแแแแแแก, แแกแแแ แจแแฅแแแแ แแแแฎแแแแแแ แแขแแแแขแแแแก แกแแคแฃแซแแแแแ. Kubernetes-แจแ แจแแแแซแแแแ แแแแแแขแแแแแช แแ แแแฎแแแแแ แแ แฃแงแฃแ แแ แแแแแแแแแก แแแแแ แแขแฃแแ แขแแแแแแกแแแแก.
แแฅแแแ แจแแแแซแแแแ แแแแแแแแ แแแแฅแแแก แงแแแแแคแแ แ แขแแแแแแ, แแแแ แแ แแแ แแ แแแแแแแแ แแฅแแแแ แแ แแแแแ แแแ แแแแก แจแแฅแแแ แแแแแ แแแแกแขแแ แแ แแ แแแ แแแแแแก แแแกแแจแแแแแ.
แแแฅแแแ, แแงแแแแแ แแแแแ แแแแกแขแแ แก dev
ะธ qa
. แแก แแแจแแแแก, แ แแ แแฅแแแ แจแแแแซแแแแ แแฅแแแแแ แแแแแแแชแแ app-a
, แแ แแแ แแฃแแแ แแฃแจแแแแก แแ แแแ แแแ แแแแจแ qa
ะธ dev
. แแ แจแแแแฎแแแแแจแ, แฉแแแ แจแแแแแซแแแ แชแแแแ แฌแแแแแ แแแแแแแชแแแก แแแกแขแแแชแแแแ แแแแแ แแขแฃแ แแแ แแแแจแ แจแแกแแแแแแกแ แแแ แแแแขแ แแก แแแแแแแแแ environment
. แแแแแแแแแ, app: app-a
ะธ environment: dev
แแ แแ แแแ แแแแกแแแแก แแ app: app-a
ะธ environment: qa
แแแแ แแกแแแแก.
แแก แกแแจแฃแแแแแแก แแแซแแแแ แจแแฎแแแแแ แแแแแแแชแแแก แแ แแแ แแแกแขแแแชแแแแ, แแแแแแแแแ, แฉแแแขแแ แแ แขแแกแขแแ แแแ แแ แแแ แแฃแแแ.
แแแฌแแกแ แแแแ แกแแแแแแ
Kubernetes แแ แแก แซแแแแแ แแซแแแแ แ แกแแกแขแแแ, แแแแ แแ แแแแแกแแแแ แกแแกแขแแแแก แจแแฃแซแแแ แกแแแแแแแ แแแแแแขแแแ แแแก แซแแแแแ แแแแ แ แแ แแชแแกแแ. Kubelet แแฌแแ แแแแแก แงแแแแ แแ แแชแแกแก แแ แแแแฌแแแแก แแฅแแแ แแแแ แแแแแแแแฃแ, แแกแแแ แ แแแแ แช แกแแแฃแแแ แแ แแชแแกแก.
แ แ แแฅแแ แฃแแแ, แแ แแ แแแแแ แกแแ แแแกแ แแ แจแแแแแแแแก แกแแกแขแแแแก แแ Kubernetes แจแแฅแแแแแแ แแแแกแแแแก, แ แแ แแแแแแแ แแฅแแแก แแชแแแแแฃแแ. แแแแ แแ แแฃ แแ แแ แกแแ แแแกแแก แแแชแแแแ แแแแแแแ แแแแแฉแแแแแ, แแฃแแแแแขแ แแฌแงแแแก แแแฎแ แฉแแแแก.
แแฃ แ แแแแ แแแแแแแ แฌแแจแแแ แแแแแแแแแแก (แแแแขแแแแแ แ, แกแฃแ แแแ, แ แแช แแ แฃแแแ แแงแแก), แฃแแ แแแแ แแแ แฌแแฃแแแแ, แ แแ แแแแแแแแ แกแ แฃแแ แแแกแฃแคแแแแแแ.
แแแแชแแแ Go
แแแแแแ แ แ แฉแแแ แแแแแก แจแแแแแแฎแแ. แแกแฌแแแแแ Go แแ แแแ แแแแ แแแแก แแแ.
Kubernetes แแแแแแแแ แแแฃแแแ Go-แจแ, แงแแแแ แแแคแแ แแแแแ แแฌแแ แแแ Go-แจแ แแ แแแแแแขแแก แแแแแแแแแแ แแกแแแ แแคแแชแแแแฃแ แแ แแ แแก แแฎแแ แแแญแแ แแแ.
แแแกแ แแแแแงแแแแแ แจแแกแแซแแแแแแแ แกแฎแแแแแกแฎแแ แแ แกแแแแขแแ แแกแ แแแแแแแแกแแแแก. แแแแแแแแแ, Kubernetes แกแแกแขแแแแก แแแคแแ แแแแแ แแฅแแแแ แแแแแแแแแแ. แแกแ แ แแ, แจแแแแซแแแแ แแแแแแงแแแแ แแฅแแแแ แกแแแฃแแแ แ แแ แแแ แแแแแ แแแแแชแแแแแแก แจแแกแแแ แแแแแแแ, แแแแแแแชแแแแแก แแแกแแงแแแแแแแ แแ แฃแแ แแแแ แแแแขแแแแแ แแแแก แแแกแแกแฃแคแแแแแแแแ.
Go-แก แแ แแแ แแแแ แแแแก แแแแก แจแแกแฌแแแแ แแ แแแแแแข-แแ-แก แแแฃแคแแแแ แแแแแ แงแแแแแแ แแแแจแแแแแแแแแ แ แฉแแแแ, แ แแแแแแช แจแแแแซแแแแ แแแกแชแแ Kubernetes-แแก แแฎแแ แแแแฎแแแ แแแแแแก.
แกแฎแแ แ แ แฌแแแแแแฎแ:
แแแขแแกแแแแแ แแแแก แกแแแ แแแแ Kubernetes-แจแ แแ แ แแแแ แแแแแแแงแแแแ แแกแแแ แแคแแฅแขแฃแ แแ .Kubernetes แแฃแจแ แแแแแซแแแ: แแแแ แ แแแขแแ แ แแ แ แแแแแแแแ แแแแ ?25 แกแแกแแ แแแแแ แแแกแขแ แฃแแแแขแ Kubernetes-แแก แแแแแแแแแแกแ แแ แแแ แแแแกแแแแก .
แฌแงแแ แ: www.habr.com