Kubernetes ááᯠá¡ááŒáá·áºá¡ááá»áœááºážáá»ááºá
á±áááºá á¡á
á¯ááá¯ááºá¡áááºážá¡ááŒá
áºáá»á¬ážááᯠááá¯ááºážáá¬ááẠááá°áá®áá±á¬áááºážáááºážáá»á¬ážááᯠáááááºááá¯á¡ááºáááº-
áá±á¬ááºážáá«áž
á¡ááá¯ááºážá¡áá¬ááᯠá ááºážá á¬ážááá¯á· áá¬ááŒá±á¬áá·áº á¡áá±ážááŒá®ážáá¬áá²á
ááá¯á·áá±á¬áº á¡á±á¬ááºáá«áá±ážááœááºážáá»á¬ážááᯠáááºáááºáž á ááºážá á¬ážááá·áºáááºá
- áá±á¬áºáá»á°ážáá»á¬ážááŸáá·áº á¡ááá®áá±ážááŸááºážáá»á¬ážááᯠáááºáá²á·ááá¯á· á áá±ážáá»ááááºáááºážá
- ááœááºááááºáá¬áá»á¬ážááᯠáááºáááºááŒá®áž áááá±á¬ááºá áœá¬ áááºááá¯á·ááááºážááááºážááá¯ááºáááºáááºážá
- á¡áá¯á¶ážááŒá¯áá°áá»á¬ážáá¶á០áá¯ááºááŸáá·áº á¡áá¯ááºáá»á¬áž á¡áááºáááŒáẠááŒá±á¬ááºážáá²ááŸá¯áá»á¬ážááᯠáááºááá¯á·áá¯á¶á·ááŒááºáááºáááºážá
á¡áááºážá¡ááŒá áºáá»á¬ážááŸáá·áº á áœááºážáá±á¬ááºáááºááᯠáááºáá»ááºáá®á á±ááẠKubernetes á¡á á¯á¡áá±ážáá»á¬ážááᯠááŒááºáááºáááºááŸááºááŒááºážááẠá áááºáá±á«áºááŸá¯ááŒá áºááŒá®áž Kubernetes á á¡ááœááºážááá¯ááºážáá¯ááºáá±á¬ááºááŸá¯áá»á¬ážááá¯ááºáᬠáá»áœááºážáá»ááºáá°áá»á¬áž ááá¯á¡ááºáá«áááºá ááá·áºáá»áŸá±á¬ááºááœáŸá¬ ááá¯á·ááá¯áẠáááºáá±á¬ááºááŸá¯áá»á¬ážá á¡áá¯ááºáááºááẠáá áºáá±á·áá¬áá¯á¶áž ááá¯á·ááá¯áẠáá áºáá¬áá®á¡ááœááºážááẠá¡áááºá¡áá»ááŸáááá¯ááºáááºá ááá¯á·ááŒá±á¬áá·áº áááºáá»ááºáá®ááŸá¯ááᯠáááºáááºáá¯ááºáá±á¬ááºáá±ááá·áº áá¯ááºáááºážá ááºáá áºáá¯á¡ááŒá Ạá¡áá±á¬ááºážáá¯á¶ážáá°ááá«áááºá
Kubernetes á¡ááá¯á¡áá»á±á¬áẠá¡ááá¯ááºážá¡áᬠá¡ááá·áºáá»á¬áž
áááá±á¬ááºáá±á¬ á¡á±á¬áºááá¯á áá±ážáá»á²á·ááŒááºážááẠá¡ááá·áºááŸá áºááá·áºááŒá¬áž ááŸáááŸáá¯ááºážááŸá¯ ááá¯á¡ááºáááº-
- á¡áá»á¬ážááá¯áẠPod á¡ááá·áº (Horizontal Pod Autoscalerá HPA) ááŸáá·áº áá±á«ááºááá¯áẠá¡á±á¬áºááá¯á áá±ážáááááᬠ(Vertical Pod Autoscalerá VPA) á¡áá«á¡ááẠPod á¡ááá·áºá áááºážááẠááá·áºááœááºááááºáá¬áá»á¬ážá¡ááœáẠáááŸáááá¯ááºáá±á¬á¡áááºážá¡ááŒá áºáá»á¬ážááᯠá¡ááá¯ááºážá¡áá¬áá áºáá¯á¡áá áá»á²á·ááœááºáá±áááºá
- Cluster Autoscaler (CA) á០á á®áá¶ááá·áºááœá²ááá·áº Cluster á¡ááá·áºá á¡á á¯á¡áá±ážá¡ááœááºáž node á¡áá±á¡ááœááºááᯠááá¯ážááẠááá¯á·ááá¯áẠáá»áŸá±á¬á·áá»áá±ážáááºá
Horizontal Autoscaler (HPA) module
áá¬áááºá¡ááŒá¶ááŒá¯áá¬ážááá·áºá¡ááá¯ááºáž HPA ááẠpod áá¯á¶á
á¶áá°áá»á¬ážá á¡áá±á¡ááœááºááᯠááá¯ááºážáá¬áááºá áá¯á¶á
á¶áá° á¡áá±á¡ááœááºááᯠááŒá±á¬ááºážáá²áááºá¡ááœáẠá¡á
áá»áá¯ážááŸá¯áá»á¬ážá¡ááŒá
Ạáá°á¡áá»á¬ážá
á¯ááẠCPU ááŸáá·áº memory load ááᯠá¡áá¯á¶ážááŒá¯ááŒáááºá ááá¯á·áá±á¬áº áááºážááᯠá¡ááŒá±áá¶á á
áá
áºá¡á¬áž á¡ááá¯ááºážá¡áá¬ááŒáá·áº ááá¯ááºážáá¬ááá¯ááºáááºá
á¡ááá·áºááŒáá·áº HPA áááºáááºááŸá¯ áá¯á¶ááŒááºáž-
- HPA ááẠáááºáááºááŸá¯á¡ááœááºáž áááºááŸááºáá¬ážáá±á¬ áááºááá áºáááºááá¯ážáá»á¬ážááᯠá áá¹ááá·áº 30 ááŒá¬ážáá¬ážáá»ááºááœáẠá ááºáááºáááŒáẠá á áºáá±ážáááºá
- áááºááŸááºáá¬ážáá±á¬á¡ááá·áºááá¯á·áá±á¬ááºááŸááá«á HPA ááẠáá±á¬áºáá»á°ážá¡áá±á¡ááœááºááᯠááá¯ážááŒáŸáá·áºááẠááŒáá¯ážáááºážáááºá
- HPA ááẠdeployment/replication controller á¡ááœááºáž áá¯á¶áá°á¡áá±á¡ááœááºááᯠá¡ááºááááºáá¯ááºáááºá
- ááá¯á·áá±á¬áẠááŒáá·áºáá»ááºááŒááºáž/áá¯á¶áá°áá°ážááŒááºáž ááááºážáá»á¯ááºáááááá¬ááẠááá¯á¡ááºááá·áº áááºáá±á¬ááºáž module áá»á¬ážááᯠááŒáá·áºáá»ááºáááºá
áááºááá
áºá¡ááá·áºáá
áºáá¯áá±á¬ááºáá±á¬á¡áá« HPA ááẠáá±á¬áºáá»á°ážá¡áá¯á¶ážááŒá¯ááŸá¯áá¯ááºáááºážá
ááºááᯠá
áááºáááºá
HPA ááá¯á¡áá¯á¶ážááŒá¯áá±á¬á¡áá«á á¡á±á¬ááºáá«ááá¯á·ááá¯á ááºážá á¬ážáá«á
- áá°áááºáž HPA á á áºáá±ážááá·áºáá¬áááẠá áá¹ááá·áº 30 ááŒá áºáááºá á¡áá¶ááŒáá·áºáááºááŸááºáá¬ážáááºá horizontal-pod-autoscaler-sync-period controller áááºáá±áá»á¬ááœááºá
- áá°áááºážááœá±áá»áá¯ážá¡ááŸá¬ážááẠ10% ááŒá áºáááºá
- áá±á¬áºáá»á°ážá¡áá±á¡ááœáẠáá±á¬ááºáá¯á¶ážááá¯ážáá¬ááŒá®ážáá±á¬ááºá HPA ááẠáááºááá áºáá»á¬ážááᯠáá¯á¶ážáááá áºá¡ááœááºáž áááºááŒáááºáá¬ááẠáá»áŸá±á¬áºááá·áºáááºá á€ááŒá¬ážáá¬áááᯠá¡áá¶ááŒáá·áº áááºááŸááºáááºá horizontal-pod-autoscaler-upscale-delay.
- modules á¡áá±á¡ááœááºááᯠáá±á¬ááºáá¯á¶ážáá»áŸá±á¬á·áá»ááŒá®ážáá±á¬ááºá HPA ááẠáááºááŒáááºááẠáá«ážáááá áºá á±á¬áá·áºáááºá á€ááŒá¬ážáá¬áááᯠá¡áá¶ááŒáá·áº áááºááŸááºáááºá horizontal-pod-autoscaler-downscale-delay.
- HPA ááẠreplication controllers áá»á¬ážááẠááŒáá·áºáá»ááºááá·áºá¡áá¬áá»á¬ážááŸáá·áº á¡áá±á¬ááºážáá¯á¶ážá¡áá¯ááºáá¯ááºáááºá á¡áá»á¬ážááá¯áẠá¡á±á¬áºááá¯á áá±ážáá»á²á·ááŒááºážááẠáá¯á¶áá°ááœá¬ážááŸá¯ ááááºážáá»á¯ááºáááááá¬áá»á¬ážááᯠááá¯ááºááá¯ááºá á®áá¶ááá·áºááœá²ááá·áº ááŸááá·áºááœááºážáá¶ááŒááºážááŸáá·áº ááá¯ááºáá®ááŸá¯áááŸááá«á ááŒáá·áºáá»ááºááŒááºážááŒáá·áºá áá¯á¶áá°á¡áá±á¡ááœááºááẠááŒáá·áºáá»ááºááá·áºá¡áá¬áá»á¬ážáá±á«áºááœáẠááá¯ááºááá¯ááºáá°áááºáááºá
pods áá»á¬ážááᯠáá±á«ááºááá¯áẠá¡ááá¯á¡áá»á±á¬áẠá¡ááœááºá¡á á¬áž áá»á²á·ááŒááºážá
áá±á«ááºááá¯áẠá¡á±á¬áºááá¯á áá±ážáá»á²á·ááŒááºáž (VPA) ááẠááŸáááŒá®ážáá¬áž pods áá»á¬ážááá¯á· CPU á¡áá»ááẠááá¯á·ááá¯áẠmemory ááᯠ(ááá¯á·) ááá¯áááºážáááºá ááá¯ááºáá¶ááá¯áẠááá¯á·ááá¯áẠááá¯ááºáá¶áá²á· á¡ááœááºáá»á¬ážá¡ááœáẠááá·áºáá»á±á¬áºáá±á¬áºáááºáž á¡áááá¡á¬ážááŒáá·áº ááá¯ááºáá¶ááá¯ááºáááºáá±á¬ááºááŸá¯áá»á¬ážá¡ááœáẠáááºááœááºáá«áááºá ááá¯á·áá±á¬áºáááºážá áááºááẠáááŠážááœá²áá±áá±ážáá¬ážáá±á¬ á¡áááºážá¡ááŒá áºáá»á¬ážá ááá¬áááᯠá¡ááá¯á¡áá»á±á¬áẠáá»áááºááŸááááºááá¯á¡ááºáá«á ááá¯ááºáá¶áá²á· module áá»á¬ážá¡ááœáẠVPA ááá¯áááºáž á¡áá¯á¶ážááŒá¯ááá¯ááºáááºá
VPA ááẠOOM (áááºááá¯áá®áááŸá) ááŒá
áºáááºáá»á¬ážááᯠáá¯á¶á·ááŒááºáááºá CPU á¡áá»áááºááŸáá·áº áááºááá¯áá®ááᯠááŒá±á¬ááºážáá²ááŒááºážááẠpods áá»á¬ážááᯠááŒááºáááºá
áááºááẠááá¯á¡ááºáááºá ááŒááºáááºá
áááºááá·áºá¡áá«á VPA ááẠááœá²áá±áá¯á¶ážá
áœá²ááŸá¯áááºáá»ááºááᯠáá±ážá
á¬ážááẠ(
module áá
áºáá¯á
á®á¡ááœáẠá¡áááºážáá¯á¶ážááŸáá·áº á¡ááŒáá·áºáá¯á¶ážá¡áááºážá¡ááŒá
áºáá»á¬ážááᯠáááºáááºááŸááºááá¯ááºáááºá ááá¯á·ááŒá±á¬áá·áº áááºááẠá¡áá»á¬ážáá¯á¶ážááœá²áá±áá»áá¬ážáá±ážáá±á¬ áááºááá¯áá®ááá¬áááᯠ8 GB á¡áá ááá·áºáááºááá¯ááºáááºá ááœááºááááºáá¬áá
áºáá¯áá»áŸáẠáááºááá¯áá® 8 GB áááºááá¯á ááœá²áá±ááá±ážááá¯ááºáá«á áááºááŸá node áá»á¬ážááẠá¡áá¯á¶ážáááºáá«áááºá á¡áá±ážá
ááẠáááºááŸááºáá»ááºáá»á¬ážááŸáá·áº áááºáááºááŸá¯ ááá¹ááá¬ážáá»á¬ážááᯠááœáẠáá±á¬áºááŒáá¬ážáá«áááºá
ááá¯á·á¡ááŒáẠVPA ááœáẠá áááºáááºá á¬ážá áá¬áá±á¬ááºážáá±á¬ á¡ááŒá¶ááŒá¯áá»ááºáá¯ááºáá±á¬ááºáá»áẠ(VPA Recommender) ááŸááááºá áááºážááẠáááá¯ááºážááá¯ááºáᬠáááºááá áºáá»á¬ážááᯠá¡ááŒá±áá¶á áá¬ááºáááºáááºááŒááºáá±á¬ á¡ááºáááá¯áá®áááºááᯠá¡ááŒá±áá¶á ááŸááºáá¬ááºá¡áá áºááŸáá·áº CPU á¡áá»áááºáááºááá¯ážáá»á¬ážááᯠá¡ááŒá¶ááŒá¯áááºá¡ááœáẠáá±á¬áºáá»á°ážá¡á¬ážáá¯á¶ážá á¡áááºážá¡ááŒá áºá¡áá¯á¶ážááŒá¯ááŸá¯ááŸáá·áº OOM ááŒá áºáááºáá»á¬ážááᯠá á±á¬áá·áºááŒáá·áºáááºá pod handle ááá¯áá°ááŒá®áž á¡ááŒá¶ááŒá¯áá¬ážáá±á¬ á¡áááºážá¡ááŒá áºáááºááá¯ážáá»á¬ážááᯠááŒááºáá±ážááá·áº API áá áºáá¯áááºáž ááŸááá«áááºá
VPA Recommender ááẠáááºážááŒá Ạ"ááá·áºáááº" ááᯠááŒá±áá¬áá¶ááá¬ážáááºááŸá¬ ááŸááºáá¬ážááá¯ááºáá«áááºá áááºážááẠnode áá»á¬ážá¡ááœááºáž á¡áááºážá¡ááŒá áºáá»á¬ážááᯠáá±á¬áºáá»á°ážá¡á¬áž áááºáá«ážááŒá®ážá¡á¯ááºááŒááºáž ááŒá áºá á±ááá¯ááºáááºá ááŒá®ážáá¬ážáá±á¬ memory ááá¯á·ááá¯áẠCPU áá¯á¶ážá áœá²ááŸá¯ááᯠááŸá±á¬ááºááŸá¬ážááẠnamespace á¡ááá·áºááœáẠááá·áºáááºáá»ááºáááºááŸááºááŒááºážááẠááá¯áá±á¬ááºážáááºá
á¡ááá·áºááŒáá·áº VPA áááºáááºááŸá¯ á¡á á®á¡á ááº-
- VPA ááẠáááºáááºá ááºá¡ááœááºáž áááºááŸááºáá¬ážáá±á¬ áááºááá áºáááºááá¯ážáá»á¬ážááᯠ10 á áá¹ááá·áºá¡ááœááºáž áá¯á¶ááŸááºá á áºáá±ážáááºá
- áááºááŸááºáá¬ážáá±á¬á¡ááá·áºááá¯á·áá±á¬ááºááŸááá«áá VPA ááẠááœá²áá±áá»áá¬ážáá±ážááá·áº á¡áááºážá¡ááŒá áºááá¬áááᯠááŒá±á¬ááºážáá²ááẠááŒáá¯ážáááºážáááºá
- VPA ááẠááŒáá·áºáá»ááºááŒááºáž/áá¯á¶áá°áá°ážááŒááºáž ááááºážáá»á¯ááºáááááá¬á¡ááœááºáž á¡áááºážá¡ááŒá áºá¡áá±á¡ááœááºááᯠá¡ááºááááºáá¯ááºáááºá
- áá±á¬áºáá»á°ážáá»á¬ážááᯠááŒááºáááºá áááºáá±á¬á¡áá«á á¡áááºážá¡ááŒá áºá¡áá áºáá»á¬ážá¡á¬ážáá¯á¶ážááᯠáááºáá®ážáá¬ážáá±á¬ ááŒá áºáááºáá»á¬ážááœáẠá¡áá¯á¶ážááŒá¯áá«áááºá
VPA ááẠááá¯á¡ááºáá±á¬ á¡áááºážá¡ááŒá
áºááá¬áááᯠáá±á«ááºážááá·áºáááºá
VPA ááá¯á¡áá¯á¶ážááŒá¯ááá·áºá¡áá« á¡á±á¬ááºáá«á¡áá»ááºáá»á¬ážááᯠáááááŒá¯áá«á
- á¡ááœááºá¡á á¬ážáá»á²á·ááœááºááŒááºážááẠPod ááááŒá áºááá±ááŒááºáááºá áááºááẠááá¯á¡ááºáááºá á¡ááŒá±á¬ááºážá¡áá²áá»á¬ážááŒá¯áá¯ááºááŒá®ážáá±á¬áẠááááºáááŒáááºáá¯ááºáá±á¬ááºááŸá¯áá»á¬ážááᯠááŸá±á¬ááºááŸá¬ážááẠáááºážááẠááá¯á¡ááºáá«áááºá áá¯á¶ááŒááºá áááºáá»áááŸá¯á¡ááœááºá á¡áá áºááœá²áá±áá±ážáá¬ážáá±á¬ á¡áááºážá¡ááŒá áºáá»á¬ážá¡áá±á«áº á¡ááŒá±áá¶á áá±á¬áºáá»á°ážáá»á¬ážááᯠááŒááºáááºá áááºááŒá®áž node áá»á¬ážáá áºáá»áŸá±á¬áẠááŒáá·áºáá±áá«áááºá
- VPA ááŸáá·áº HPA ááẠáá áºáá¯ááŸáá·áºáá áºáᯠáááá¬ááááŒá áºáá±ážáááŒáá·áº áá°áá®áá±á¬ pods áá»á¬ážááœáẠáá¯ááºáá±á¬ááºááááá«á á¡áááºá áááºááẠáá°áá®áá±á¬á¡á á¯á¡áá±ážááœáẠá áá±ážáá»á²á·ááá·áºááá¹ááá¬ážááŸá áºáá¯áá¯á¶ážááᯠá¡áá¯á¶ážááŒá¯áá±áá«áá áááºááááºáááºáá»á¬ážááẠáááºážááá¯á·ááᯠáá°áá®áá±á¬á¡áá¬ááá¹áá¯áá±á«áºááœáẠactivated ááá¯ááºá á±ááẠáá¬ážáá®ážáá¬ážááŒá±á¬ááºáž áá±áá»á¬áá«á á±á
- VPA áá±ážááœá¬ážáá»á¬ážááẠááááºááŸáá·áº áááºááŸáá¡áá¯á¶ážááŒá¯ááŸá¯á¡áá±á«áºá¡ááŒá±áá¶á á¡áááºážá¡ááŒá áºáá»á¬ážá¡ááœáẠáá±á¬ááºážááá¯ááŸá¯áá»á¬ážááᯠááœááºááááºáá¬ááŒáá·áº ááŸááá±ážáááºá áááºážááẠá¡áááºážá¡ááŒá áºá¡áá¯á¶ážááŒá¯ááŸá¯ ááá·áºáááºáá»ááºáá»á¬ážááᯠááááºááŸááºáá¬ážáá±á á¡ááá®áá±ážááŸááºážáá»á¬áž ááŸááºáááºá áœá¬ á¡áá¯ááºááá¯ááºááŒááºážááŸáá·áº á¡áááºážá¡ááŒá áºáá»á¬ážááᯠááá¯ááá¯ááá°áá¬áááºááŸáá·áºá¡áá»áŸ ááŒá¿áá¬áá»á¬áž ááŸáááá¯ááºáááºá áááºážááẠKubernetes á¡á¬áž ဠpod ááᯠááááºááœá¬ážá á±áááºá
- VPA ááẠááœá¶á·ááŒáá¯ážááá¯ážáááºááŸá¯á á¡á
á±á¬ááá¯ááºážá¡ááá·áºááœáẠááŸááá±áá±ážáááºá ááá±ážáá±á¬á·áá±á¬á¡áá¬áááºááœáẠá
áá
áºááẠá¡ááŒá±á¬ááºážá¡áá²á¡áá»áá¯á·ááŸááá¬ááá¯ááºá
á±ááẠááŒáá¯áááºááŒááºáááºáá¬ážáá«á á¡ááŒá±á¬ááºážááᯠáááºááá¯ááºáá«áááºá
ááááŒá®ážáá¬áž ááá·áºáááºáá»ááºáá»á¬áž Оááœá¶á·ááŒáá¯ážááá¯ážáááºáá±ážá¡á á®á¡á ááºáá»á¬áž . ááá¯á·ááŒá±á¬áá·áºá VPA ááŸáá·áº HPA á áá°ážááœá²áá¯ááºáá±á¬ááºááŸá¯ááᯠá¡áá±á¬ááºá¡áááºáá±á¬áºááẠá¡á á®á¡á ááºáá»á¬ážá¡ááŒáẠáááºážááá¯á·á¡ááœáẠáá±á«ááºááá¯ááºá¡ááá¯á¡áá»á±á¬áẠá¡ááá¯ááºážá¡áá¬áá°áá«ááá áºáá¯ááŸáá·áºá¡áá° áá±á¬áºáá»á°ážáá»á¬áž ááŒáá·áºáá»ááºááŒááºáž (á¥ááá¬á á¡áá°ážáá¶áááẠ'VPA ááá¯á¡ááºáááº')á
Kubernetes á¡á á¯á¡áá±ážááᯠá¡ááá¯á¡áá»á±á¬áẠá¡ááœááºá¡á á¬ážááŒáŸáá·áºááŒááºážá
Cluster Autoscaler (CA) ááẠá á±á¬áá·áºááá¯ááºážáá±áá±á¬ pods á¡áá±á¡ááœááºá¡áá±á«áº á¡ááŒá±áá¶á node á¡áá±á¡ááœááºááᯠááŒá±á¬ááºážáá²áá«áááºá á áá áºááẠááá¯ááºážáá¶á·áá¬ážáá±á¬ áá±á¬áºáá»á°ážáá»á¬ážááᯠá¡áá«á¡á¬ážáá»á±á¬áºá áœá¬ á á áºáá±ážááẠ- á¡áááºážá¡ááŒá áºáá»á¬áž ááá¯ááá¯ááá¯á¡ááºáá«áá á¡á á¯á¡áá±ážááẠáááºááŸááºáá¬ážáá±á¬ ááá·áºáááºáá»ááºáá»á¬ážááẠááá»á±á¬áºááœááºáá«á á¡á á¯á¡áá±ážá¡ááœááºá¡á á¬ážááᯠááá¯ážá á±áááºá CA ááẠcloud áááºáá±á¬ááºááŸá¯áá±ážáá°ááŸáá·áº áááºááœááºáááºá áááºážá០áá±á¬ááºááẠnode áá»á¬ážááᯠáá±á¬ááºážááá¯áááºá ááá¯á·ááá¯áẠidle áá»á¬ážááᯠáá¯ááºáá±ážáá«áááºá ááááá¯á¶áž áá±áá¯áá»áááŸáááá¯ááºáá±á¬ CA áá¬ážááŸááºážááᯠKubernetes 1.8 ááœáẠááááºáááºáá²á·áááºá
SA áááºáááºááŸá¯á¡ááá·áºááŒáá·áºá¡á á®á¡á ááº-
- CA ááẠ10 á áá¹ááá·áºá áá¯á¶áá±á¡ááœá¬á¡áá±ážááœáẠááá¯ááºážáá¶á·áá¬ážáá±á¬ module áá»á¬ážááᯠá á áºáá±ážáááºá
- á¡á á¯áá áºáᯠááá¯á·ááá¯áẠáá áºáá¯áááºááá¯áá±á¬ pods áá»á¬ážááẠáááºážááá¯á·ááá¯ááœá²áá±ááẠáá¯á¶áá±á¬ááºáá±á¬áááŸáááá¯ááºáá±á¬á¡áááºážá¡ááŒá áºáá»á¬ážáááŸááá±á¬ááŒá±á¬áá·áº á¡ááá·áºá¡áá±á¡áá¬ážááœááºááŸááá±áá«áá áááºážááẠáá±á¬ááºááẠnode áá áºáᯠááá¯á·ááá¯áẠáá áºáá¯áááºááá¯áá±á¬ node áá»á¬ážááᯠáá±á¬ááºáá¶á·áá±ážááẠááŒáá¯ážá á¬ážáááºá
- cloud áááºáá±á¬ááºááŸá¯áá±ážáá°á ááá¯á¡ááºáá±á¬ node ááᯠááœá²áá±áá±ážáá±á¬á¡áá«á áááºážááẠá¡á á¯á¡áá±ážááœáẠáá«áááºááŒá®áž pods áá»á¬ážááᯠáááºáá±á¬ááºááŸá¯áá±ážááẠá¡áááºááá·áºááŒá áºáá±áá«ááŒá®á
- Kubernetes á¡á á®á¡á ááºááœá²áá°ááẠááá¯ááºážáá¶á·áá¬ážáá±á¬ pods áá»á¬ážááᯠnode á¡áá áºááá¯á· ááŒáá·áºáá±áááºá á€ááŒá®ážáá±á¬ááºááœáẠá¡áá»áá¯á·áá±á¬ module áá»á¬ážááẠá á±á¬áá·áºááá¯ááºážáá±ááá·áºá¡ááŒá±á¡áá±ááœáẠáá»ááºááŸááá±áá«áá áá¯ááºáááºážá ááºááᯠáááºáá«ááá²áá² áá¯ááºáá±á¬ááºááŒá®áž node á¡áá áºáá»á¬ážááᯠá¡á á¯á¡áá±ážááá¯á· áá±á«ááºážááá·áºáááºááŒá áºáááºá
cloud ááŸá á¡á
á¯á¡áá±ážáá»á¬áž á á¡ááá¯á¡áá»á±á¬áẠá
á®áá¶áá±á¬ááºááœááºáá±ážááŒááºážá
CA ááá¯á¡áá¯á¶ážááŒá¯áá±á¬á¡áá« á¡á±á¬ááºáá«ááá¯á·ááᯠááá·áºááœááºážá ááºážá á¬ážáá«á
- CA ááẠCPU load ááá«áááºáá² á¡á á¯á¡áá±ážááŸá pods áá»á¬ážá¡á¬ážáá¯á¶ážááœáẠáá¯ááºáá±á¬ááºáááºáá±áá¬ááŸáááŒá±á¬ááºáž CA ááŸáá±áá»á¬á á±áááºá áááºážááẠá¡á á¯á¡áá±ážááœáẠáááá¯á¡ááºáá±á¬ node áá»á¬ážáááŸáááŒá±á¬ááºáž áá±áá»á¬á á±áááºáááºáž ááŒáá¯ážá á¬ážáááºá
- CA ááẠá áá¹ááá·áº 30 ááá·áºá¡ááŒá¬ááœáẠá áá±ážááá¯á¡ááºááŒá±á¬ááºáž á á¬áááºážááœááºážáááºá
- node áá áºáᯠáááá¯á¡ááºáá±á¬á·áááºááŸáá·áºá CA ááẠá áá áºá¡á¬áž áá»á²á·ááœááºááŒááºážáááŒá¯áá® 10 áááá áºá á±á¬áá·áºááá¯ááºážááẠáá¯á¶áá±áááºááŸááºáááºá
- á¡á±á¬áºááá¯á áá±ážáá»á²á·ááŒááºážá áá áºááœáẠáá»á²á·ááœááºááŒááºážááá¯ááºáᬠááá±á¬ááá¬ážáá»á¬ážááŸááááºá áááºážááá¯á·ááẠnode á¡áá áºáá»á¬ážááá·áºááá·áº node áá»á¬ážá¡á¯ááºá á¯ááá¯ááœá±ážáá»ááºááŒááºážá¡ááœáẠááá°áá®áá±á¬áá»á°áá¬áá»á¬ážááŒá áºáááºá
- ááœá±ážáá»ááºááŸá¯ááᯠáá¬áááºááá áœá¬áá¯á¶ážáá«á cluster-autoscaler.kubernetes.io/safe-to-evict (ááŸááº). á¡áááºá áááºááẠpods á¡áá»á¬ážá¡ááŒá¬ážááᯠááá·áºááœááºážáá«á ááá¯á·ááá¯áẠá¡áá»á¬ážá¡ááŒá¬ážááẠnode áá»á¬ážá¡á¬ážáá¯á¶ážááœáẠááŒáá·áºáá»á²áá±áá«áá áááºááẠá¡á á¯á¡áá±ážááᯠáá»á²á·ááœááºááá¯ááºá áœááºáž áá¯á¶ážááŸá¯á¶ážááœá¬ážáááºááŒá áºáááºá
- á¡áá¯á¶ážááŒá¯áá«
PodDisruptionBudgets pods áá»á¬ážááᯠáá»ááºáá áºááŒááºážá០áá¬ááœááºáááºá áááºá á¡ááá®áá±ážááŸááºážá á¡á áááºá¡ááá¯ááºážáá»á¬ážááᯠáá¯á¶ážááá»ááºááœááºá á±ááá¯ááºáááºá
Kubernetes autoscalers áá»á¬ážááẠá¡áá»ááºážáá»ááºáž á¡ááŒááºá¡ááŸáẠáá¯á¶á·ááŒááºáá¯á¶
ááŒá®ážááŒáá·áºá á¯á¶áá±á¬áááá¬áááŒá áºáááºá¡ááœááºá áá±á«á·ááºá¡ááá·áº (HPA/VPA) ááŸáá·áº á¡á á¯á¡áá±ážá¡ááá·áº ááŸá áºáá¯á áá¯á¶ážááœáẠá¡ááá¯á¡áá»á±á¬áẠá¡ááá¯ááºážá¡áá¬ááᯠá¡áá¯á¶ážááŒá¯ááá·áºáááºá áááºážááá¯á·ááẠáá áºáŠážááŸáá·áºáá áºáŠáž ááá¯ážááŸááºážá áœá¬ áááºáá¶áááºáááº-
- HPAs ááá¯á·ááá¯áẠVPAs áá»á¬ážááẠááŸáááŒá®ážáá¬áž pods áá»á¬ážááá¯á· ááœá²áá±áá±ážáá¬ážáá±á¬ pod áá¯á¶á á¶áá°áá»á¬áž ááá¯á·ááá¯áẠá¡áááºážá¡ááŒá áºáá»á¬ážááᯠá¡ááºááááºáá¯ááºáá«á
- á á®á áá±ážááŸááºážá¡ááœáẠáá¯á¶áá±á¬ááºáá±á¬ node áá»á¬ážáááŸááá«áá CA ááẠá á±á¬áá·áºááá¯ááºážáá±ááá·áºá¡ááŒá±á¡áá±ááœáẠpods ááŸááá±áááºááᯠáááááŒá¯áááá«áááºá
- CA ááẠnode á¡áá áºáá»á¬ážááá¯ááœá²áá±áá±ážáááºá
- áá±á¬áºáá»á°ážáá»á¬ážááᯠnode á¡áá áºáá»á¬ážááá¯á·ááŒáá·áºáá±áááºá
áá°ážáá±á«ááºážáá¯ááºáá±á¬ááºáá±á¬ Kubernetes á
áá±ážáá¯ááºá
áá
áº
Kubernetes á¡á±á¬áºááá¯á áá±ážáá»á²á·ááŒááºážááœáẠá¡ááŒá áºáá»á¬ážáá±á¬á¡ááŸá¬ážáá»á¬áž
á¡á±á¬áºááá¯á áá±ážáá»ááŒááºážááᯠá¡áá±á¬ááºá¡áááºáá±á¬áºááẠááŒáá¯ážáááºážáá±á¬á¡áá«ááœáẠááŒá¿áá¬áá»á¬ážá áœá¬ ááŒá áºááœá¬ážáá±á·ááŸááááºá
HPA ááŸáá·áº VPA ááẠáááºááá áºáá»á¬ážááŸáá·áº á¡áá»áá¯á·áá±á¬ áááá¯ááºážááá¯ááºáᬠá¡áá»ááºá¡áááºáá»á¬ážá¡áá±á«áº áá°áááºáááºá ááá¯á¶áá±á¬ááºáá±á¬á¡áááºážá¡ááŒá áºáá»á¬ážááᯠááœá²áá±áá»áá¬ážáá«áá áá±á¬áºáá»á°ážáá»á¬ážááẠáá±ážáááºááœá¬ážáááºááŒá áºááŒá®áž áááºááá áºáá»á¬ážááᯠáá¯ááºáá±ážááá¯ááºáááºááá¯ááºáá«á á€ááá á¹á ááœááºá á¡ááá¯á¡áá»á±á¬áẠá¡ááœááºá¡á á¬ážááŒá±á¬ááºážáá²ááŒááºážááẠáááºááá·áºá¡áá«áá»áŸ ááŒá áºáá¬áááºááá¯ááºáá«á
á¡ááá¯ááºážá¡áᬠáá¯ááºáá±á¬ááºáá»ááºááá¯ááºááá¯ááºá á¡áá»áááºá¡ááááá¯ááºááá¶áá«áá°ážá áá»áœááºá¯ááºááá¯á·ááẠáá±á¬áºáá»á°ážáá»á¬ážááŸáá·áº á¡á á¯á¡áá±ážáá»á¬ážááᯠáá»ááºááŒááºá áœá¬ á¡ááá¯ááºážá¡áá¬ááᯠá¡ááá¯ááŸáááẠ- áá¯á¶ážá áœá²áá°áá»á¬ážááẠááŒá¿áá¬áá»á¬áž ááá¯á·ááá¯áẠáá¡á±á¬ááºááŒááºááŸá¯áá»á¬ážááᯠáááááá¬ážáááá®á ááá¯á·ááŒá±á¬áá·áº á¡á á±á·áá»á¬ážááŸáá·áº á¡á á¯á¡áá±ážá¡ááœáẠáá»ááºážáá»áŸ á¡ááá¯ááºážá¡áá¬ááᯠááá·áºááœááºážá ááºážá á¬ážááá·áºáááºá
á á¶ááŒá¡ááŒá±á¡áá± - 4 áááá áº
- 30 á áá¹ááá·áºá áá áºááŸááºáááºááá áºáá»á¬ážááᯠá¡ááºááááºáá¯ááºáá«- 30-60 á áá¹ááá·áºá
- 30 á áá¹ááá·áºá HPA ááẠáááºááá áºáááºááá¯ážáá»á¬ážááᯠá á áºáá±ážáááº- á áá¹ááá·áº ááá
- 2 á áá¹ááá·áºá¡á±á¬ááºá Pods áá»á¬ážááá¯áááºáá®ážááŒá®áž 1 á áá¹ááá·áºá á±á¬áá·áºáá«á
- 2 á áá¹ááá·áºá¡á±á¬ááºá CA ááẠá á±á¬áá·áºááá¯ááºážáá±áá±á¬ áá±á¬áºáá»á°ážáá»á¬ážááᯠááŒááºááŒá®áž áá¶á·ááá¯ážááŸá¯ áá¯á¶ááŸááºáá»á¬ážááá¯á· áá±á«áºááá¯ááŸá¯áá»á¬áž áá±ážááá¯á·áááº- 1 á áá¹ááá·áºá
- á áááá áºá cloud áááºáá±á¬ááºááŸá¯áá±ážáá°á node áá»á¬ážááá¯ááœá²áá±áá±ážáááºá K3 áá»á¬ážááẠáááºážááá¯á· á¡áááºááá·áºááŒá áºáááºá¡áá á á±á¬áá·áºáááº- 8 áááá áºá¡áá (á¡áá»ááºáá»á¬ážá áœá¬áá±á«áº áá°áááºá)á
á¡ááá¯ážáá¯á¶ážááŒá áºááẠ(ááá¯ááá¯áááºááœá±á·áá»áá±á¬) áá¬ááºáááºáž - 12 áááá áº
- 30 á áá¹ááá·áºá áá áºááŸááºáááºááá áºáá»á¬ážááᯠá¡ááºááááºáá¯ááºáá«á
- 30 á áá¹ááá·áºá HPA ááẠáááºááá áºáááºááá¯ážáá»á¬ážááᯠá á áºáá±ážáááºá
- 2 á áá¹ááá·áºá¡á±á¬ááºá pods áá»á¬ážááá¯áááºáá®ážááŒá®áž standby state ááá¯ááá·áºáá«á
- 2 á áá¹ááá·áºá¡á±á¬ááºá CA ááẠá á±á¬áá·áºááá¯ááºážáá±áá±á¬ modules áá»á¬ážááá¯ááŒááºááŒá®áž nodes áá»á¬ážááá¯áá¶á·ááá¯ážáá±ážáááºá¡ááœáẠáá±á«áºááá¯ááŸá¯áá»á¬ážááŒá¯áá¯ááºáááºá
- 10 áááá áºá cloud áááºáá±á¬ááºááŸá¯áá±ážáá°á node áá»á¬ážááá¯ááœá²áá±áá±ážáááºá K8 áá»á¬ážááẠá¡áááºááá·áºááŒá áºáááºá¡áá á á±á¬áá·áºáááºá á á±á¬áá·áºááá¯ááºážáá»áááºááẠáá±á¬ááºážáá»áá°ááŸá±á¬áá·áºááŸá±ážááŸá¯á OS ááŸá±á¬áá·áºááŸá±ážááŸá¯ááŸáá·áº áá¶á·ááá¯ážááŸá¯áááááá¬áá»á¬ážáá²á·ááá¯á·áá±á¬ á¡áá»ááºáá»á¬ážá áœá¬áá±á«áºááœáẠáá°áááºáááºá
áá»áœááºá¯ááºááá¯á·á CA ááŸáá·áº cloud áááºáá±á¬ááºááŸá¯áá±ážáá°áá»á¬ážá á¡ááá¯ááºážá¡áá¬ááá¹ááá¬ážáá»á¬ážááᯠááá±á¬ááœá±ážáá«ááŸáá·áºá cloud áááºáá±á¬ááºááŸá¯áá±ážááá·áºá¡ááºáá»ááºááẠnode ááŒáá·áºáá±ááŸá¯á¡ááŒá±áá¶ááŒáá·áº áá¯ááºáá±á¬ááºáá±áá»áááºááœáẠáá±á¬ááºáá áºáá¯ááẠKubernetes á¡á á¯á¡áá±ážá¡ááœááºážááœáẠáá¯ááºáá±á¬ááºáááºá áááºá pods ááá¯á·ááá¯áẠapplication ááœááºáá¬ááŒá áºáá±áááºááááá«á á€á áá áºáá»á¬ážááẠááŒáá¯ááºáá°áááºáááºáááºá
Kubernetes ááœáẠá áá±ážáá»á²á·ááŒááºážááᯠá á®áá¶ááá·áºááœá²áááºáž
- Kubernetes ááẠá¡áááºážá¡ááŒá áºá á®áá¶ááá·áºááœá²ááŸá¯ááŸáá·áº á á¯á ááºážááŸá¯áááááá¬áá áºáá¯ááŒá áºáááºá pods ááŸáá·áº cluster á¡áááºážá¡ááŒá áºáá»á¬ážááᯠá á®áá¶ááá·áºááœá²ááŒááºážá¡ááœáẠáá¯ááºáá±á¬ááºááŸá¯áá»á¬ážááẠKubernetes ááᯠáá»áœááºážáá»ááºááá¯ááºááá¯ááºá á±áááºá¡ááœáẠá¡ááá ááŸááºááá¯ááºáá áºáá¯ááŒá áºáááºá
- HPA ááŸáá·áº VPA ááá¯á·ááᯠááá·áºááœááºážá ááºážá á¬ážááŒá®áž pod scalability á áá¯áá¹ááááᯠáá¬ážáááºáá«á
- ááá·áº pods ááŸáá·áº containers áá»á¬ážáááá¯á¡ááºáá»ááºáá»á¬ážááᯠáá±á¬ááºážá áœá¬áá¬ážáááºááŸáᬠCA ááá¯á¡áá¯á¶ážááŒá¯ááá·áºáá«áááºá
- á¡á á¯á¡ááœá²á·áá áºáá¯á¡á¬áž á¡áá±á¬ááºážáá¯á¶ážáá¯á¶á á¶áááºááŸááºáááºá ááá°áá®áá±á¬á áá±ážá áá±ážá áá áºáá»á¬áž á¡áá°áááœáá¯ááºáá±á¬ááºáá¯á¶ááᯠáá¬ážáááºááẠááá¯á¡ááºáááºá
- á¡áá»áááºá¡ááá¯ááºážá¡áá¬ááᯠááá·áºááŸááºážááá·áºá¡áá« á¡ááá¯ážáá¯á¶ážááŸáá·áº á¡áá±á¬ááºážáá¯á¶ážááŒá áºáááºáá»á¬ážááᯠáááááá«á
source: www.habr.com