á¡ááºáá¬áááºááŸá¬ á¡ááá¯ážá¡áá¬ážá
á¬áá±ááœá± á¡áá»á¬ážááŒá®ážááŸááá±ááá·áº áá
áºáá«áá
áºáá¶ááŸá¬ á¡ááá¯ážááŸááºážáá¯á¶ážá¡ááŒá¶áá¬ááºá áááºááá¯ážá¡ááŸááá¯á¶ážáá«áá²á á¡áááºážá¡ááœá²á·
Kubernetes ááŸáá·áº áá¯ááºáá±á¬ááºááẠá¡ááá¯ážááŸááºážáá¯á¶áž ááœáŸááºááŒá¬ážáá»ááº
á
áááºáááºá Kubernetes ááŸáá·áº áá¯ááºáá±á¬ááºáá¬ááœáẠá¡ááá¯ážááŸááºážáá¯á¶ážááŸáá·áº á¡á¡áá¯á¶ážáááºáá¯á¶ážáá¯ááºáá±á¬ááºáá»ááºááŒá
áºááá¯ááºáááºá á¡á±á¬ááºáá« command ááẠcommand completion ááᯠááœáá·áºáá±ážáááºá kubectl
bash shell ááœááº-
echo "source <(kubectl completion bash)" >> ~/.bashrc
Autofill kubectl
.bashrc ááá¯ááºááœáẠá
á¬áá±ážáááºááŒá
áºááŒá®áž shell ááᯠá
áááºáá»áááºááá¯ááºáž á¡ááá¯á¡áá»á±á¬áẠactivated áá±ážáááºááŒá
áºáááºá áááºážááẠááŸááºáá»á¬ážáá±á¬ command áá»á¬ážááŸáá·áº parameters áá»á¬ážáá²á·ááá¯á·áá±á¬ á
á¬ááá¯ááºááŒááºážááᯠááŒááºáááºá
á±áááºá all-namespaces
. áá±á¬ááºáááºá¡áá±ážá
áááºá¡áá»ááºáá»á¬ážáá²ááœááº
áá°áááºážááŸááºáá¬ááºááŸáá·áº CPU ááẠnamespace ááœáẠááá·áºáááºáá»ááºáá»á¬ážááŸááááºá
á¥ááá¬á¡á¬ážááŒáá·áº á¡ááá®áá±ážááŸááºážááᯠááŸá¬ážááœááºážá áœá¬áá±ážáá¬ážáá«áá áááºážááẠáá±áá¬áá±á·á áºááá¯á· áá»áááºáááºááŸá¯á¡áá áºáá áºáá¯ááᯠá áá¹ááá·áºááá¯ááºážááœáá·áºáá±á¬áºáááºáž áááºážááᯠáááºáá±á¬á¡áá«á០áááááºáá«á ááá¯á·áá±á¬áẠá¡á á¯á¡áá±ážááœáẠááŸááºáá¬ááºááá¯á ááá·áºááŸá¯ááŸááááºá á¡áá¯á¶ážáá»ááŸá¯á¡ááœááºáž á¡ááá®áá±ážááŸááºážááœáẠááŸááºáá¬ááºááá·áºáááºáá»áẠááá¬ážááŸááá«áá áááºážááẠnode áá»áá¯á·ááœááºážááŸá¯ááᯠááŒá áºá á±ááá¯ááºáááºá
áááºážááá¯áá¬ááœááºáááºá Kubernetes ááẠááá·áºá¡á¬áž namespace á¡ááá¯áẠáá¯á¶áá±ááá·áºáááºáá»ááºáá»á¬ážááᯠáááºááŸááºááœáá·áºááŒá¯áááºá áááºážááá¯á·ááᯠáááá»áá±á¬ namespace á¡ááœáẠyaml ááá¯ááºááœáẠáá±ážáá¬ážáááºá á€áááºááŸá¬ á€áá²á·ááá¯á·áá±á¬ááá¯ááºá á¥ááá¬áá áºáá¯ááŒá áºáááºá
apiVersion: v1
kind: LimitRange
metadata:
name: mem-limit-range
spec:
limits:
- default:
memory: 512Mi
defaultRequest:
memory: 256Mi
type: Container
ááá¯áá²á·ááá¯á·áá±á¬ yaml ááá¯áááºáá®ážááŒá®ážáááºááá·áº namespace ááá¯áááá¯á¡áá¯á¶ážááŒá¯áá«á á¥ááá¬á¡á¬ážááŒáá·áºá namespace ááᯠlimit-example
. ááᯠá€ááœááºááááºáá¬á¡ááœáẠá¡ááŒá¬ážááá·áºáááºáá»ááºáá
áºáá¯ááᯠáááºáá±á¬ááºážááááºááŸááºáá«á ááᯠဠnamespace ááœáẠá¡áá¯á¶ážááŒá¯áá¬ážáá±á¬ áááºááá·áºááœááºááááºáá¬áááᯠ512Mi ááá·áºáááºáá»ááºááŸááá«áááºá
Kubernetes áá¬ážááŸááºážá¡áá±á¬ááºážáá»á¬ážááœáẠá¡ááŸáá¯ááºá á¯áá±á¬ááºážááŒááºážá
áá¯á¶áá±á¡á¬ážááŒáá·áº Kubelet ááẠáááºááá·áºá¡áá»áááºááœáẠá¡ááŸáá¯ááºá á¯áá±á¬ááºážááŒááºážááᯠá áááºáááºá var/lib/docker áááá¯ááºáá±á¬ disk space á 90% ááᯠáá°áá¬ážáááºá ááá¯á·áá±á¬áº Kubernetes 1.7 áááá¯ááºáá®á¡áá áááºážááẠááá¯ááºá áá áºááŸá ááá¯ááºá¡áá±á¡ááœááºááŸáá·áº ááá¯ááºáá®áá±á¬ á¡áá¯á¶ážááŒá¯ááá·áº inode á¡áá±á¡ááœááºá¡áá±á«áº áá¯á¶áá±ááá·áºáááºáá»ááºáááŸááá±á
ááŒá áºááá¯ááºáá»á±ááŸááá±á¬ áááºáááœááºááááºáᬠvar/lib/docker disk space á 50% ááá¯áᬠá¡áá¯á¶ážááŒá¯ááá¯ááºááŒá®áž á¡áá¯ááºááá¬ážáá»á¬ážá¡ááœáẠááŒá¿áá¬ááŒá áºá á±ááá·áº inode áá»á¬áž áá¯ááºáá¯á¶ážááœá¬ážááá¯ááºáááºá
kubelet áá¬ážááŸááºážá¡áá±á¬ááºáž 1.4 á០1.6 ááœáẠá€á¡áá¶ááᯠááá·áºááá«áááº-
--eviction-hard
=memory.available<100Mi,nodefs.available<10%,nodefs.inodesFree<5%
1.7 ááŸáá·áº áá±á¬ááºááá¯ááºážáá¬ážááŸááºážáá»á¬ážááœáẠá€á¡áá¶ááᯠáá¯á¶áá±áááºááŸááºáá¬ážáááºá ááá¯á·áá±á¬áºáááºáž ááááºáá¬ážááŸááºážáá»á¬ážááẠinode ááá·áºáááºáá»ááºááᯠá á±á¬áá·áºááŒáá·áºááá±áá«á
Minikube... áá±ážáááºáá±á¬áºáááºáž á¡á¬ážáá±á¬ááºážááá·áº áá±áááœááºáž Kubernetes
Minikube ááẠáá±áááœááºáž Kubernetes á¡á á¯á¡áá±ážááᯠáá¯ááºáá±á¬ááºááẠá¡ááœááºáá°áá¯á¶ážáááºážáááºážááŒá áºáááºá áááºážááᯠááá¯ážááŸááºážáá±á¬ á¡áááá·áºááŒáá·áº á áááºáááº-
minikube start
á€á¡áááá·áºááᯠáá¯ááºáá±á¬ááºááŒááºážááŒáá·áº ááá·áºááœááºáá»á°áá¬áá±á«áºááœáẠá¡ááŸááºááááºáááºáááºáá±ááá·áº Kubernetes á¡á á¯á¡áá±ážááᯠááŒá áºáá±á«áºá á±áááºá
ááŸáá·áºááœááºááŸá¬ á¡ááá®áá±ážááŸááºážááᯠáááºáá±á¬ááºáá¯á¶ááŸáá·áº áááºážááᯠááá¯á¡á á¯á¡áá±ážááœáẠá ááºááœááºážá áá¯ááºáá±á¬ááºáááẠááŒá áºáááºá á¡ááá¡áá» ááœáŸááºááŒá¬ážáá¬ážááŒááºážáááŸááá«áá Docker áá¯ááºáá¯á¶ááẠá¡á á¯á¡áá±ážáá±á«áºááœááºááá¯ááºáá² ááá·áºááœááºáá»á°áá¬áá±á«áºááœáẠáááºáá±á¬ááºáááºááŒá áºáááºá
Docker ááẠáá¯á¶á¡á¬áž áá±áááœááºáž Kubernetes á¡á á¯á¡áá±ážááá¯á· ááœááºážá¡á¬ážáá±ážáááºá docker á ááºá¡á¬áž á¡á±á¬ááºáá« command ááᯠáá±ážáááº-
eval $(minikube docker-env)
ááᯠáá»áœááºá¯ááºááá¯á·ááẠáá±áááœááºáž Kubernetes á¡á á¯á¡áá±ážááœáẠá¡ááá®áá±ážááŸááºážáá»á¬ážááᯠáááºáá±á¬ááºááá¯ááºáá«ááŒá®á
áá°ááá¯ááºážááᯠkubectl áááºááœáá·áºááá±ážáá«áá²á·á
áááºážááẠáááºááŸá¬ážáá¯á¶ááááºá ááá¯á·áá±á¬áº á¡áááºážáá»á¬ážá
áœá¬ááẠáááºážááá¯á·á á¡ááºááºáá®áá±ážááŸááºážá¡ááœáẠáá°áá®áá±á¬á¡á
á¯á¡áá±ážááᯠá¡áá¯á¶ážááŒá¯áá±áá«á (ááá¯á¡áá¬ááẠKubernetes á¡ááœáẠáááºáá®ážáá¬ážááá·áºá¡áá¬ááŒá
áºáááº)á áááºááẠáá°ááá¯ááºážááᯠáá±ážáá¯á¶áá»áŸááá kubectl
. ááœáŸááºááŒá¬ážáá»ááºáá»á¬ážááᯠááœá²áá¯ááºááŒááºážá áááºážááá¯á·áá
áºáá¯á
á®ááᯠáááºážáááá¯ááºááá¯áẠnamespace áááºááŸááºááŒááºážááŸáá·áº RBAC áá°áá«ááá»á¬ážááᯠá¡áá¯á¶ážááŒá¯á áááºáá±á¬ááºááœáá·áºááᯠááá·áºáááºááŒááºážááẠááá¯áá±á¬ááºážáááºá
pod áá áºáá¯á á®á¡ááœáẠáááºáá±á¬ááºááŒáá·áºááŸá¯áááºá áááºáááºá áááºáá®ážáááºá áá»ááºááẠááŸáá·áº á¡ááŒá¬ážáá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááᯠáááºááŸááºáá±ážááŒááºážááŒáá·áº áááºááẠá áááºááŸá¯ááºááœá±ážááá¯ááºáááºá ááá¯á·áá±á¬áº á¡áááá¡áá»ááºááŸá¬ áá»áŸáá¯á·ááŸááºáá»ááºáá»á¬áž áááºáá±á¬ááºááœáá·áºááᯠááá·áºáááºáááºááŒá áºááŒá®áž áááºážááᯠá á®áá¶ááá·áºááœá²áá°áá»á¬ážáᬠááœáá·áºááŒá¯ááŒááºážááŒá áºáááºá á€áááºážááŒáá·áº á¡á á¯á¡ááœá²á·ááᯠá á®áá¶ááá·áºááœá²ááá¯ááºáá°áá»á¬ážááŸáá·áº áááºážááᯠááá¯ážááá¯ážááŸááºážááŸááºáž á¡áá¯á¶ážáá»ááá¯ááºáá°áá»á¬ážá¡ááŒá¬áž ááœá²ááŒá¬ážááá¯ááºáááºááŒá áºáááºá
Pod Budgets ááᯠá á®áá¶áá«á
Kubernetes á¡á á¯á¡áá±ážááŸá á¡ááºááá®áá±ážááŸááºážá¡ááœáẠá ááºáááºáá»áááºáááŸáá á±ááẠáááºááá¯á·ááŒá¯áá¯ááºááááºáááºážá PodDisruptionBudget ááŸáá·áº áá±á¬ááºáá áºááŒááẠPodDisruptionBudgetá
á¡á á¯á¡áá±ážáá»á¬ážááᯠá¡áá«á¡á¬ážáá»á±á¬áºá áœá¬ á¡ááºááááºáá¯ááºáá¬ážááŒá®áž node áá»á¬ážááᯠááŸááºážáá¬ážáááºá áááºá¡áá¬á០ááááºááŒá²áá°ážá áá«á¡ááŸááºááá¬ážáá²á áá¬áááá áºáá¯áááºááá¯áá±á¬ á¡áá¯á¶ážáá»ááŸá¯ááá¯ááºážááœáẠPDB (PodDisruptionBudget) áá«áááºááá·áºáááºá áááºážááᯠá¡á á¯á¡áá±ážááá¯á· á¡áá¯á¶ážáá»ááá·áº ááá¯ážááŸááºážáá±á¬ yaml ááá¯ááºááŒáá·áº áááºáá®ážáá¬ážáááºá PDB áá áºáá¯áá¯á ááœáŸááºážááŒá¯á¶á§áááá¬ááᯠáá¶ááááºááœá±ážáá»ááºáá°áá»á¬ážá០áá¯á¶ážááŒááºáááºá
ááŸááºáá»ááº: áááºáá»ááºáá»áá¯ážáá±á¬ááºááŸá¯ááᯠáá±á¬ááºááŒááºááŸáá·áºááá¯ááºááŸáᬠPDB áááºáá»ááºááᯠááá·áºááœááºážá
ááºážá
á¬ážááẠ(
á¥ááᬠPDB-
apiVersion: policy/v1beta1
kind: PodDisruptionBudget
metadata:
name: app-a-pdb
spec:
minAvailable: 2
selector:
matchLabels:
app: app-a
á¡ááá parameter ááŸá
áºáá¯ááŸááááºá matchLabels
О minAvailable
. ááá ááá·áºáááºáá»ááºááẠáááºááá·áº áááºáá»ááºá¡ááœáẠá¡áá¯á¶ážáá»áááºááᯠáááºááŸááºáá±ážááẠá á¥ááá¬á¡á¬ážááŒáá·áºá áá»áœááºá¯ááºááœáẠá¡ááœáŸááºážáá»á¬ážááŒáá·áº ááŒáá·áºáá»ááºáá¬ážáá»áŸáẠapp: app-a
О app: app-b
ááá¯á·áá±á¬áẠဠPDB ááẠááááá
áºáá¯ááŸáá·áºáᬠáááºááá¯ááºáááºááŒá
áºáááºá
parameter ááẠminAvailable
node ááá¯ááŸááºážáááºážááŒááºáž (ááá·áºááŸááºážáá±áž) áá±á¬á¡áá«ááá·áºááœááºážá
ááºážá
á¬ážáááºá á¥ááá¬á¡á¬ážááŒáá·áºá áá»áœááºá¯ááºááá¯á·áá¥ááá¬ááœááºá á¡ááœááºáá¯ááºáá±á
ááºá¡ááœááºážá ááŒá
áºáááºá¡á¬ážáá¯á¶ážááᯠááŸááºáá¯ááºáá¶ááááºá app: app-a
ááŸá
áºáá¯ááŸááœá²á
áááºážááẠááá·áºá¡á¬áž áááºááŸááºá¡áá»áááºá¡ááœááºáž á¡ááá®áá±ážááŸááºážá áááºáá»áŸáá¯ááºáá±á¬ááºááá·áºáááºááᯠááááºážáá»á¯ááºááá¯ááºá á±áá«áááºá
áá»áŸá±á¬ááºááœáŸá¬áá»ááºážáá¬áá±ážá á±á¬áá·áºááŒáá·áº
ááá¯ááá¯á·áá±á¬ á á±á¬áá·áºááŒáá·áºááŒááºážááᯠáááºážáááºážááŸá áºáá»áá¯ážááŒáá·áº ááŒá áºááá¯ááºáááº- Readiness ááá¯á·ááá¯áẠLiveness tests ááᯠá¡áá¯á¶ážááŒá¯ááŒááºážá
ááááá¯á¶áž á á¯á¶á ááºážá á áºáá±ážááŸá¯ (á¡áááºááá·áº) ááẠáááºážááŒá±á¬ááºážáááºáá¶ááẠááœááºááááºáá¬á á¡áááºááá·áºááŒá áºááŸá¯ááᯠáá¯á¶ážááŒááºáááºá
áá¯ááá (á¡áááºááŸááºáááºááŸá¯) ááẠááœááºááááºáá¬áá»ááºážáá¬ááŒááºážááŸááááŸá ááá¯á·ááá¯áẠááŒááºáááºá áááºááẠááá¯á¡ááºááŒá±á¬ááºáž ááŒááááºá
áááºááá¯ááºáᬠconfigurations áá»á¬ážááᯠááŒáá·áºáá»ááºáááºá¡ááœáẠyaml ááœáẠááá¯ážááŸááºážá
áœá¬ááá·áºááœááºážáá¬ážáááºá ááá¯áá±áá¬ááœáẠá¡áá»áááºáá¯ááºááŒááºážá ááŸá±á¬áá·áºááŸá±ážáá»áááºáá»á¬ážááŸáá·áº ááŒááºáááºá
ááºážáááºááŸá¯á¡áá±á¡ááœááºááᯠáááºáááºááŸááºááá¯ááºáááºá áááºážááá¯á·á¡ááŒá±á¬ááºáž á¡áá±ážá
áááºááᯠááŒáá·áºáá«á
Tag ááœá±á áá±áá¬ááá¯ááºážááŸá¬ááŸááááºá
á¡ááœáŸááºážáá»á¬ážááẠKubernetes ááŸá á¡ááŒá±áá¶ááá±á¬ááá¬ážáá»á¬ážáá²á០áá áºáá¯ááŒá áºáááºá áááºážááá¯á·ááẠá¡áá¬ááá¹áá¯áá»á¬ážá¡á¬áž á¡áá»ááºážáá»ááºáž ááœááºáááºá áœá¬ áááºááœááºááŒá±á¬ááá¯ááá¯ááºá á±ááá·áºá¡ááŒáẠá¡ááœáŸááºážáá»á¬ážáá±á«áºááœáẠá¡ááŒá±áá¶á á á¯á¶á ááºážáá±ážááŒááºážááŸá¯áá»á¬ážááᯠáááºáá®ážáá±ážáááºá Kubernetes ááœáẠáááºááẠáááá¯ááºážááá·áºáá¶ááá¯á·ááœá¬ážá áááºáááºááŸááºááŸááºáááºáá»á¬ážá¡ááœáẠááœá²áá»á¬ážááá¯ááẠááŒáá·áºááŸá¯ááá¯ááºáááºá
áááºáá»á¬ážááŒáá·áº áááºááá·áºá¡áá¬ááá¯áááᯠáááºáá¯ááºááá¯ááºáááºá ááá¯á·áá±á¬áº ááá°áá¬áá±á¬ááºážáá áºáá¯ááẠáá°áá®áá±á¬á¡á á¯á¡áá±ážááœáẠáááá¯ááááºáá»á¬ážááᯠáá¯ááºáá±á¬ááºááẠáááºáááºážáá»ááºáá»á¬ážá áœá¬ááᯠáááºáá®ážáá±ážáááá·áºáááºá
áá°áá®áá±á¬á¡á
á¯á¡áá±ážááᯠáááºá¡áá¯á¶ážááŒá¯áááºááá¯áá«á
áá¯á· dev
О qa
. ááá¯ááá¯áááºááŸá¬ áááºááẠáá»áŸá±á¬ááºááœáŸá¬áá
áºáá¯áááá¯ááºáááºá app-a
áááºáááºážáá»áẠááŸá
áºáá¯áá¯á¶ážááœáẠáá
áºááŒáá¯ááºááẠáá¯ááºáá±á¬ááºáááºá qa
О dev
. á€ááá
á¹á
ááœááºá áá»áœááºá¯ááºááá¯á·ááẠááá·áºáá»á±á¬áºáá±á¬ ááá·áºáááºáá±á¬ááºááᯠáááºááŸááºááŒááºážááŒáá·áº áá®ážááŒá¬ážáááºáááºážáá»ááºáá
áºáá¯ááŸá á¡ááá®áá±ážááŸááºáž instance ááᯠáá®ážááŒá¬ážá
á®áááºáá±á¬ááºááá¯ááºáááºá environment
á á¥ááá¬á¡á¬ážááŒáá·áº, app: app-a
О environment: dev
áááºáááºážáá»ááºáá
áºáá¯á¡ááœááºááŸáá·áº app: app-a
О environment: qa
áá¯áááá¡ááœááºá
áááºážááẠáááºááẠá¡ááá®áá±ážááŸááºážá á á¶ááá°áá¬ááŸá áºáá¯áá¯á¶ážááᯠáááºáá±á¬ááºááŒáá·áºááŸá¯ááá¯ááºá á±áááºá á¥ááá¬á¡á¬ážááŒáá·áºá á ááºážáááºááŸá¯ááᯠáá áºááŒáá¯ááºáááºáá¯ááºáá±á¬ááºáááºá
á ááºážáá¯á¶ážáá«á
Kubernetes ááẠá¡ááœááºá¡á áœááºážáááºáá±á¬ á áá áºáá áºáá¯ááŒá áºáá±á¬áºáááºáž áááºááá·áºá áá áºáááᯠáá±á¬ááºáá¯á¶ážááœáẠáá¯ááºáááºážá ááºáá»á¬ážá áœá¬ááŒáá·áº ááŒáá¯áá»ááºááœá¬ážááá¯ááºáááºá Kubelet ááẠáááºáááºááŸááºáá±ážááá·áº áá¯ááºáááºážá ááºá¡á¬ážáá¯á¶ážááᯠáá¯ááºáá±á¬ááºááŒá®áž áááºážááŸáá·áº áááºážáááá¯ááºááá¯áẠá á áºáá±ážááŸá¯áá»á¬áž áá¯ááºáá±á¬ááºáááºá
áá¯ááºáá«áááºá ááááá²á·áááºáá±á¬ááºááŸá¯áá áºáá¯á á áá áºááᯠááŸá±á¬áá·áºááŸá±ážá á±ááŸá¬ ááá¯ááºáá«áá°ážá Kubernetes á á¡ááŒá±áá¶ááá± á áá±ážáá»ááá¯á· áá®ááá¯ááºážáá¯ááºáá¬ážáá«áááºá áá«áá±ááá·áº áá áºáááºážáááºáá±á¬ááºááŸá¯áá áºáá¯á¡á á¬áž áá±á«áºáá¬áá²á·áááºáá±á¬á· kubelet áᬠáá°ááœááºáá¬áá«áááºá
á¡áááºá áááºááẠá¡áá¯á¶ážáá»ááŸá¯ (ááœááºááááºáá¬á áá¯á¶á áááºááá¯á·áááºááŒá áºá á±) á¡ááŒá±á¬ááºážáá áºáá¯áá¯ááŒá±á¬áá·áº áá»ááºáá áºáá«á ááŒá®ážááŒáá·áºá á¯á¶áá±á¬ ááŸááºážáááºážááŸá¯ááŒá¯áá¯ááºááẠáá±áá»á¬áá«á á±á
ááœá¬ážáá±á¬á· ááœá±á·áááºá
áá»áœááºá¯ááºááá¯á·ááẠá¡ááá á¡ááŒá¶áá¬ááºááᯠáá±á¬ááºáá¯á¶ážá¡ááŒá Ạááááºážáááºážáá²á·áááºá Go áááá¯ááááºážáááºážáá¬áá¬á áá¬ážááᯠáá±á·áá¬áá«á
Kubernetes ááᯠGo ááœáẠáá®ááœááºáá¬ážááŒá®ážá ááá¯ážáá»á²á·ááŸá¯áá»á¬ážá¡á¬ážáá¯á¶ážááᯠGo ááœáẠáá±ážáá¬ážáá¬ážááŒá®áž client-go client á á¬ááŒáá·áºááá¯ááºááá¯áááºáž ááá¬ážáááºáá¶á·ááá¯ážáá¬ážáááºá
ááœá²ááŒá¬ážááŒá®áž á áááºáááºá á¬ážá áá¬áá±á¬ááºážáá²á·á¡áá¬ááœá±á¡ááœáẠá¡áá¯á¶ážááŒá¯ááá¯ááºáá«áááºá á¥ááá¬á¡á¬ážááŒáá·áºá Kubernetes á áá áºááᯠááá·áºá¡ááá¬á¡ááœáẠáá»á²á·ááœááºáááºá ááá¯á·ááŒá±á¬áá·áº áááºááẠáá±áá¬á á¯áá±á¬ááºážáááºá á¡ááá®áá±ážááŸááºážáá»á¬ážááᯠá¡áá¯á¶ážáá»ááẠááá¯á·ááá¯áẠááœááºááááºáá¬áá»á¬ážááᯠááŸááºážááẠááá·áºááá¯ááºááá¯ááºáááá¯ááááºáá»á¬ážááᯠá¡áá¯á¶ážááŒá¯ááá¯ááºáááºá
Go áááá¯ááááºážáááºážáá¬áá¬á áá¬ážááᯠáááºáá°ááŒá®áž áááá¯ááºážááá·áºááœá¬ážááŒááºážááᯠáá»áœááºážáá»áœááºážáá»ááºáá»áẠáááºááŒá±á¬ááºááŒááºážááẠKubernetes áá¯á¶ážá áœá²áá°á¡áá áºáá»á¬ážá¡ááœáẠáááºáá±ážááá¯ááºáá±á¬ á¡áá±ážááŒá®ážáá¯á¶áž á¡ááŒá¶áá¬ááºááŒá áºááá¯ááºáááºá
áá¬áááºá áá¬ááŸááá±ážáá²á:
Kubernetes ááœáẠá¡á±á¬áºááá¯á áá±ážáá»á²á·ááŒááºáž á¡ááá·áºáá¯á¶ážááá·áºááŸáá·áº áááºážááá¯á·ááᯠáááá±á¬ááºá áœá¬ á¡áá¯á¶ážááŒá¯áááºáž .Kubernetes á¡áá¯ááºááá¬áž áá¯á¶ááŸááºáá»á¬áž- á¡áá±ážá¡ááœá² á¡áá»á¬ážá¡ááŒá¬áž ááá¯á·ááá¯áẠá¡ááŒá®ážá¡áááºážááẠ?25 Kubernetes ááá¯á¡áá¯á¶ážáá»ááŒááºážááŸáá·áº á á®áá¶ááá·áºááœá²ááŒááºážá¡ááœáẠá¡áá¯á¶ážáááºáá±á¬áááááá¬áá»á¬áž .
source: www.habr.com