рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдХреБрдмреЗрд░рдиреЗрдЯ: рд╕реЗрд╡рд╛рдПрдВ

рдЫрд╣ рдорд╣реАрдиреЗ рдкрд╣рд▓реЗ, рд╣рдордиреЗ рдЕрдкрдиреА рд╕рднреА рд╕реНрдЯреЗрдЯрд▓реЗрд╕ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рдкреНрд░рд╡рд╛рд╕ рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдореЗрдВ рдкреВрд░рд╛ рдХрд┐рдпрд╛ред рдкрд╣рд▓реА рдирдЬрд╝рд░ рдореЗрдВ, рдХрд╛рд░реНрдп рдХрд╛рдлреА рд╕рд░рд▓ рд╣реИ: рдЖрдкрдХреЛ рдПрдХ рдХреНрд▓рд╕реНрдЯрд░ рддреИрдирд╛рдд рдХрд░рдиреЗ, рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╡рд┐рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЛ рд▓рд┐рдЦрдиреЗ рдФрд░ рдЬрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╣рдорд╛рд░реА рд╕реЗрд╡рд╛ рдХреЗ рдХрд╛рдо рдореЗрдВ рд╕реНрдерд┐рд░рддрд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рдЬреБрдиреВрди рдХреЗ рдХрд╛рд░рдг, рдореБрдЭреЗ рддреБрд░рдВрдд рдпрд╣ рд╕рдордЭрдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ рдХрд┐ k8 рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╡рд┐рднрд┐рдиреНрди рд╡рд┐рдлрд▓рддрд╛ рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рддрд╛ рд╣реИред рдЕрдзрд┐рдХрд╛рдВрд╢ рдкреНрд░рд╢реНрди рдореЗрд░реЗ рдкрд╛рд╕ рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣рд░ рдЪреАрдЬ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЗред рдЗрди рдлрд┐рд╕рд▓рди рдореБрджреНрджреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ kubernetes рдореЗрдВ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рд╕рдВрдЪрд╛рд▓рди рд╣реИред


рдкреНрд░рд▓реЗрдЦрди рд╣рдореЗрдВ рдмрддрд╛рддрд╛ рд╣реИ:


  • рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд░реЛрд▓ рдЖрдЙрдЯ рдХрд░реЗрдВ
  • рд╕реЗрдЯ рд▓реАрдирд┐рдВрдЧ / рддрддреНрдкрд░рддрд╛ рдХреЗ рдирдореВрдиреЗ
  • рдПрдХ рд╕реЗрд╡рд╛ рдмрдирд╛рдПрдБ
  • рдлрд┐рд░ рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░реЗрдЧрд╛: рд▓реЛрдб рд╕рдВрддреБрд▓рди, рд╡рд┐рдлрд▓рддрд╛, рдЖрджрд┐ред

рд▓реЗрдХрд┐рди рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ, рд╕рдм рдХреБрдЫ рдХреБрдЫ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╣реИред рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред


рд╕рд┐рджреНрдзрд╛рдВрдд рдХреА рдмрд┐рдЯ


рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдкрд╛рдардХ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдбрд┐рд╡рд╛рдЗрд╕ рдФрд░ рдЗрд╕рдХреА рд╢рдмреНрджрд╛рд╡рд▓реА рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реИ; рд╣рдо рдХреЗрд╡рд▓ рдпрд╛рдж рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдПрдХ рд╕реЗрд╡рд╛ рдХреНрдпрд╛ рд╣реИред


рд╕реЗрд╡рд╛ k8s рдХрд╛ рд╕рд╛рд░ рд╣реИ, рдЬреЛ рдЙрдиреНрд╣реЗрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЪреВрд▓реНрд╣рд╛ рдФрд░ рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИред


рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╣рдордиреЗ рдЕрдкрдирд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛:


apiVersion: apps/v1 kind: Deployment metadata: name: webapp spec: selector: matchLabels: app: webapp replicas: 2 template: metadata: labels: app: webapp spec: containers: - name: webapp image: defaultxz/webapp command: ["/webapp", "0.0.0.0:80"] ports: - containerPort: 80 readinessProbe: httpGet: {path: /, port: 80} initialDelaySeconds: 1 periodSeconds: 1 

 $ kubectl get pods -l app=webapp NAME READY STATUS RESTARTS AGE webapp-5d5d96f786-b2jxb 1/1 Running 0 3h webapp-5d5d96f786-rt6j7 1/1 Running 0 3h 

рдЕрдм, рдЗрд╕реЗ рдПрдХреНрд╕реЗрд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдПрдХ рд╕реЗрд╡рд╛ рдмрдирд╛рдиреА рд╣реЛрдЧреА рдЬрд┐рд╕рдореЗрдВ рд╣рдо рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВ рдХрд┐ рд╣рдо рдХрд┐рди рдЪреИрдирд▓реЛрдВ (рдПрдХреНрд╕реЗрд╕рд░) рддрдХ рдкрд╣реБрдБрдЪрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ рдХрд┐рди рдкреЛрд░реНрдЯреНрд╕ рдкрд░ рд╣реИрдВ:


 kind: Service apiVersion: v1 metadata: name: webapp spec: selector: app: webapp ports: - protocol: TCP port: 80 targetPort: 80 

 $ kubectl get svc webapp NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE webapp ClusterIP 10.97.149.77 <none> 80/TCP 1d 

рдЕрдм рд╣рдо рдХреНрд▓рд╕реНрдЯрд░ рдореЗрдВ рдХрд┐рд╕реА рднреА рдорд╢реАрди рд╕реЗ рдЕрдкрдиреА рд╕реЗрд╡рд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:


 curl -i http://10.97.149.77 HTTP/1.1 200 OK Date: Mon, 24 Sep 2018 11:55:14 GMT Content-Length: 2 Content-Type: text/plain; charset=utf-8 

рдпрд╣ рд╕рдм рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ



рдмрд╣реБрдд рд╕рд░рд▓реАрдХреГрдд:


  • рдЖрдкрдиреЗ kubectl рдкрд░рд┐рдирд┐рдпреЛрдЬрди рдЪрд╢реНрдорд╛ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдерд╛
  • рдЬрд╛рджреВ рд╣реЛрддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рд╡рд┐рд╡рд░рдг рдЗрд╕ рд╕рдВрджрд░реНрдн рдореЗрдВ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рд╣реИ
  • рдирддреАрдЬрддрди, рдЖрд╡реЗрджрди рдХреЗ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдиреЛрдб рдХреБрдЫ рдиреЛрдбреНрд╕ рдкрд░ рдирд┐рдХрд▓реЗ
  • рдПрдХ рдмрд╛рд░ рдкреНрд░рддреНрдпреЗрдХ рдХреНрдпреВрдмрд▓реЗрдЯ рдЕрдВрддрд░рд╛рд▓ (рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдб рдкрд░ k8s рдПрдЬреЗрдВрдЯ) рдЕрдкрдиреЗ рдиреЛрдб рдкрд░ рдЪрд▓рдиреЗ рд╡рд╛рд▓реЗ рд╕рднреА рдкреЙрдбреНрд╕ рдХреА рд▓реАрдирд┐рдВрдЧ / рддрддреНрдкрд░рддрд╛ рдХреЗ рдирдореВрдиреЗ рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рдХрд░рддрд╛ рд╣реИ, рдпрд╣ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рдПрдкреЗрд╕реЗрд╡рд░ (k8s рджрд┐рдорд╛рдЧ рдХреЛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕) рднреЗрдЬрддрд╛ рд╣реИ
  • рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдб рдкрд░ рдХреНрдпреВрдм-рдкреНрд░реЙрдХреНрд╕реА рдХреЛ рд╕реЗрд╡рд╛рдУрдВ рдФрд░ рдЪреВрд▓реНрд╣рд╛ рдореЗрдВ рд╕рднреА рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдкрд╕реЗрд╡рд░ рд╕реЗ рд╕реВрдЪрдирд╛рдПрдВ рдорд┐рд▓рддреА рд╣реИрдВ рдЬреЛ рд╕реЗрд╡рд╛рдУрдВ рдореЗрдВ рднрд╛рдЧ рд▓реЗрддреЗ рд╣реИрдВ
  • рдХреНрдпреВрдм-рдкреНрд░реЙрдХреНрд╕реА рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд╕рдмрд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╡рд┐рдиреНрдпрд╛рд╕ рдореЗрдВ рд╕рднреА рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ (iptables, ipvs)

рд╕рд░рд▓рддрд╛ рдХреЗ рд▓рд┐рдП, рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкреНрд░реЙрдХреНрд╕реА рд╡рд┐рдзрд┐ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ - iptablesред Iptables рдореЗрдВ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╣рдорд╛рд░реЗ рд╡рд░реНрдЪреБрдЕрд▓ IP 10.97.149.77 рдХреЗ рд▓рд┐рдП рд╣реИ:


 -A KUBE-SERVICES -d 10.97.149.77/32 -p tcp -m comment --comment "default/webapp: cluster IP" -m tcp --dport 80 -j KUBE-SVC-BL7FHTIPVYJBLWZN 

рдЯреНрд░реИрдлрд╝рд┐рдХ KUBE-SVC-BL7FHTIPVYJBLWZN рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЗрдВ рдЬрд╛рддрд╛ рд╣реИ , рдЬрд┐рд╕рдореЗрдВ рдЗрд╕реЗ 2 рдЕрдиреНрдп рд╢реНрд░реГрдВрдЦрд▓рд╛рдУрдВ рдореЗрдВ рд╡рд┐рддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ


 -A KUBE-SVC-BL7FHTIPVYJBLWZN -m comment --comment "default/webapp:" -m statistic --mode random --probability 0.50000000000 -j KUBE-SEP-UPKHDYQWGW4MVMBS -A KUBE-SVC-BL7FHTIPVYJBLWZN -m comment --comment "default/webapp:" -j KUBE-SEP-FFCBJRUPEN3YPZQT 

рдпреЗ рд╣рдорд╛рд░реА рдлрд▓реА рд╣реИрдВ:


 -A KUBE-SEP-UPKHDYQWGW4MVMBS -p tcp -m comment --comment "default/webapp:" -m tcp -j DNAT --to-destination 10.244.0.10:80 -A KUBE-SEP-FFCBJRUPEN3YPZQT -p tcp -m comment --comment "default/webapp:" -m tcp -j DNAT --to-destination 10.244.0.11:80 

рдЪреВрд▓реНрд╣реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреА рд╡рд┐рдлрд▓рддрд╛ рдХрд╛ рдкрд░реАрдХреНрд╖рдг


рдореЗрд░рд╛ рд╡реЗрдмрдПрдк рдкрд░реАрдХреНрд╖рдг рдПрдкреНрд▓рд┐рдХреЗрд╢рди "рдПрд░рд░ рд░реИрд╢" рдореЛрдб рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИ, рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ "/ рдЧрд▓рдд" URL рдХреЛ рдЦреАрдВрдЪрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред


рдкрд░реАрдХреНрд╖рд╛ рдХреЗ рдмреАрдЪ рдореЗрдВ ab -c 50 -n 20,000 рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдПрдХ рд╢реНрд░рд╡рдг рдкрд░ "/ рдЧрд▓рдд" рдирд┐рдХрд╛рд▓рд╛ рдЧрдпрд╛:


 Complete requests: 20000 Failed requests: 3719 

рдпрд╣рд╛рдВ рдмрд┐рдВрджреБ рд╡рд┐рд╢рд┐рд╖реНрдЯ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдирд╣реАрдВ рд╣реИ (рдЙрдирдХреА рд╕рдВрдЦреНрдпрд╛ рд▓реЛрдб рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╣реЛрдЧреА), рд▓реЗрдХрд┐рди рд╡реЗ рд╣реИрдВред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рд╣рдордиреЗ "рдЦрд░рд╛рдм" рдХреЛ рд╕рдВрддреБрд▓рди рд╕реЗ рдмрд╛рд╣рд░ рдлреЗрдВрдХ рджрд┐рдпрд╛, рд▓реЗрдХрд┐рди рд╕реЗрд╡рд╛ рдХреЗ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреЗ рд╕рдордп рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ред рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХрд╛ рдХрд╛рд░рдг рд╕рдордЭрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рдлреА рдЖрд╕рд╛рди рд╣реИ: рддрддреНрдкрд░рддрд╛ рдкрд░реАрдХреНрд╖рдг рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб рдПрдХ рдмрд╛рд░ рдХреНрдпреВрдмрд▓реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ + рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рдкреНрд░рд╕рд╛рд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдЫреЛрдЯрд╛ рд╕рдордп рдЬреЛ рдХрд┐ рдкрд░реАрдХреНрд╖рдг рдХрд╛ рдЬрд╡рд╛рдм рдирд╣реАрдВ рджрд┐рдпрд╛ред


рдХреНрдпрд╛ рдЖрдИрдкреАрд╡реАрдПрд╕ рдХреНрдпреВрдм-рдкреНрд░реЙрдХреНрд╕реА (рдкреНрд░рд╛рдпреЛрдЧрд┐рдХ) рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛?


рд╕рдЪ рдореЗрдВ рдирд╣реАрдВ! рдпрд╣ рдкреНрд░реЙрдХреНрд╕реА рдЕрдиреБрдХреВрд▓рди рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИ, рдПрдХ рдХрд╕реНрдЯрдо рдмреИрд▓реЗрдВрд╕рд┐рдВрдЧ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рд╡рд┐рдлрд▓рддрд╛ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред


рдХреИрд╕реЗ рд╣реЛ?


рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдХреЗрд╡рд▓ рдПрдХ рдмреИрд▓реЗрдВрд╕рд░ рджреНрд╡рд╛рд░рд╛ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдкреБрди: рдкреНрд░рдпрд╛рд╕ (рдкреБрдирдГ рдкреНрд░рдпрд╛рд╕) рдХрд░ рд╕рдХрддрд╛ рд╣реИред рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, http рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рдПрдХ L7 рдмреИрд▓реЗрдВрд╕рд░ рдЪрд╛рд╣рд┐рдПред рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдХреЗ рд▓рд┐рдП рдЗрд╕ рддрд░рд╣ рдХреЗ рдмреИрд▓реЗрдиреНрд╕рд░ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкреВрд░реНрдг рд░реВрдк рд╕реЗ рдпрд╛ рддреЛ рдЗрдирдЧреНрд░реЗрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ (рдХреНрд▓рд╕реНрдЯрд░ рдХреА рдЪрд╛рд▓ рдореЗрдВ рдПрдХ рдмрд┐рдВрджреБ рдХреЗ рд░реВрдк рдореЗрдВ рдирд┐рд╣рд┐рдд рд╣реИ, рд▓реЗрдХрд┐рди рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕реЗ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ), рдпрд╛ рдПрдХ рдЕрд▓рдЧ рдкрд░рдд рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд░реВрдк рдореЗрдВ - рдПрдХ рд╕реЗрд╡рд╛ рдЬрд╛рд▓, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, istio ред


рд╣рдорд╛рд░реЗ рдЙрддреНрдкрд╛рджрди рдореЗрдВ, рд╣рдордиреЗ рдЕрднреА рддрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрдЯрд┐рд▓рддрд╛ рдХреА рд╡рдЬрд╣ рд╕реЗ рдпрд╛ рддреЛ рдЗрдирдЧреНрд░реЗрд╕ рдпрд╛ рд╕рд░реНрд╡рд┐рд╕ рдореЗрд╖ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╢реБрд░реВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИред рдЗрд╕ рддрд░рд╣ рдХреЗ рд╕рд╛рд░, рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдЙрди рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдорджрдж рдХрд░рддреЗ рд╣реИрдВ рдЬрд╣рд╛рдВ рдЖрдкрдХреЛ рдЕрдХреНрд╕рд░ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рд▓реЗрдХрд┐рди рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рдЖрдк "рднреБрдЧрддрд╛рди" рдирд┐рдпрдВрддреНрд░рдгреАрдпрддрд╛ рдФрд░ рд╕рд░рд▓ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗред рдЖрдк рдпрд╣ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рдордп рд╡реНрдпрддреАрдд рдХрд░реЗрдВрдЧреЗ рдХрд┐ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рд╕реЗрд╡рд╛ рдХреЗ рд▓рд┐рдП рд░рд┐рдЯрд░реНрди рдЯрд╛рдЗрдордЖрдЙрдЯ рдХреИрд╕реЗ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдПред


рд╣рдо рдХреИрд╕реЗ?


рд╣рдо рд╣реЗрдбрд▓реЗрд╕ k8s рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдРрд╕реА рд╕реЗрд╡рд╛рдУрдВ рдореЗрдВ рд╡рд░реНрдЪреБрдЕрд▓ рдЖрдИрдкреА рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ рдФрд░ рддрджрдиреБрд╕рд╛рд░, рдХреНрдпреВрдм-рдкреНрд░реЙрдХреНрд╕реА рдФрд░ рдЖрдИрдкреАрдЯреЗрдмрд▓реНрд╕ рдЙрдирдХреЗ рдХрд╛рдо рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВред рдРрд╕реА рдкреНрд░рддреНрдпреЗрдХ рд╕реЗрд╡рд╛ рдХреЗ рд▓рд┐рдП, рдЖрдк DNS рдпрд╛ рдПрдкреАрдЖрдИ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд▓рд╛рдЗрд╡ рдЪреВрд▓реНрд╣реЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред


рдЕрдиреНрдп рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП, рд╣рдо рджреВрдд рдХреЗ рд╕рд╛рде рдПрдХ рдлреБрдЯрдкрд╛рде рдХрдВрдЯреЗрдирд░ рдмрдирд╛рддреЗ рд╣реИрдВред Evoy рд╕рдордп-рд╕рдордп рдкрд░ DNS рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рднреА рдЖрд╡рд╢реНрдпрдХ рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдкреЙрдбреНрд╕ рдХреА рдПрдХ рдЕрдк-рдЯреВ-рдбреЗрдЯ рд╕реВрдЪреА рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ, рдФрд░ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд, рдпрд╣ рдПрдХ рддреНрд░реБрдЯрд┐ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдЕрдиреНрдп рдкреЙрдбреНрд╕ рдХреЛ рдХреНрд╡реЗрд░реА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╛рд░-рдмрд╛рд░ рдкреНрд░рдпрд╛рд╕ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИред рдЖрдк рдЗрд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдб рдкрд░ DaemonSet рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдлрд┐рд░ рдпрджрд┐ рдпрд╣ рдЖрд╡реГрддреНрддрд┐ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддреА рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╕рднреА рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХрд╛рдо рдХрд░рдирд╛ рдмрдВрдж рдХрд░ рджреЗрдВрдЧреЗред рдЪреВрдВрдХрд┐ рдЗрд╕ рдкреНрд░реЙрдХреНрд╕реА рджреНрд╡рд╛рд░рд╛ рд╕рдВрд╕рд╛рдзрди рдХреА рдЦрдкрдд рдХрд╛рдлреА рдХрдо рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдордиреЗ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╛рдЗрдбрдХрд╛рд░ рдХрдВрдЯреЗрдирд░ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ред


рдпрд╣ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдмрд┐рд▓реНрдХреБрд▓ рд╡реИрд╕рд╛ рд╣реА рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ istio рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд╕рдВрддреБрд▓рди рд╕рд╛рджрдЧреА рдХреА рдУрд░ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рд╣реЛ рдЧрдпрд╛ рд╣реИ (istio рд╕реАрдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рдХреЗ рдХреАрдбрд╝реЗ рдореЗрдВ рднрд╛рдЧ рд▓реЗрдВ)ред рд╢рд╛рдпрдж рдпрд╣ рд╕рдВрддреБрд▓рди рдмрджрд▓ рдЬрд╛рдПрдЧрд╛, рдФрд░ рд╣рдо istio рдЬреИрд╕реА рдХрд┐рд╕реА рдЪреАрдЬрд╝ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрдВрдЧреЗред


рд╣рдо okmeter.io рдкрд░ рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдиреЗ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд░реВрдЯ рд▓рд┐рдпрд╛ рд╣реИ, рдФрд░ рд╣рдо рдЗрд╕рдХреЗ рдЖрдЧреЗ рд╡рд┐рддрд░рдг рдореЗрдВ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдХрд░рддреЗ рд╣реИрдВред рд╣рдорд╛рд░реА рд╕реЗрд╡рд╛ рдореЗрдВ k8 рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рд░рд╛рд╕реНрддреЗ рдореЗрдВ рд╣реИ, рджреЗрдЦрддреЗ рд░рд╣реЗрдВ!

Source: https://habr.com/ru/post/hi424229/


All Articles