рддрдкрд╛рдИрдВрд▓рд╛рдИ Kubernetes рдЖрд╡рд╢реНрдпрдХ рдирд╣реБрди рд╕рдХреНрдЫ

рддрдкрд╛рдИрдВрд▓рд╛рдИ Kubernetes рдЖрд╡рд╢реНрдпрдХ рдирд╣реБрди рд╕рдХреНрдЫ
рдХреЗрдЯреА рд╕реНрдХреБрдЯрд░рдорд╛ред рджреГрд╖реНрдЯрд╛рдиреНрдд freepik, рдШреБрдордиреНрддреЗ рд▓реЛрдЧреЛ рдмрд╛рдЯ HashiCorp

Kubernetes рдХрдиреНрдЯреЗрдирд░ рдЖрд░реНрдХреЗрд╕реНрдЯреНрд░рд╛ рдХреЛ 300-рдкрд╛рдЙрдВрдб рдЧреЛрд░рд┐рд▓реНрд▓рд╛ рд╣реЛред рдпрд╕рд▓реЗ рд╡рд┐рд╢реНрд╡рдХреЛ рд╕рдмреИрднрдиреНрджрд╛ рдареВрд▓реЛ рдХрдиреНрдЯреЗрдирд░ рдкреНрд░рдгрд╛рд▓реАрд╣рд░реВрдорд╛ рдХрд╛рдо рдЧрд░реНрджрдЫ, рддрд░ рдорд╣рдБрдЧреЛ рдЫред

рд╕рд╛рдирд╛ рдЯреЛрд▓реАрд╣рд░реВрдХрд╛ рд▓рд╛рдЧрд┐ рд╡рд┐рд╢реЗрд╖ рд░реВрдкрдорд╛ рдорд╣рдБрдЧреЛ, рдЬрд╕рд▓рд╛рдИ рдзреЗрд░реИ рд╕рдорд░реНрдерди рд╕рдордп рд░ рдПрдХ рдард╛рдбреЛ рд╕рд┐рдХрд╛рдЗ рд╡рдХреНрд░ рдЖрд╡рд╢реНрдпрдХ рдкрд░реНрджрдЫред рдпреЛ рд╣рд╛рдореНрд░реЛ рдЪрд╛рд░ рдЬрдирд╛рдХреЛ рдЯреЛрд▓реАрдХреЛ рд▓рд╛рдЧрд┐ рдзреЗрд░реИ рдУрднрд░рд╣реЗрдб рд╣реЛред рддреНрдпрд╕реИрд▓реЗ рд╣рд╛рдореАрд▓реЗ рд╡рд┐рдХрд▓реНрдк рдЦреЛрдЬреНрди рдерд╛рд▓реНрдпреМрдВ - рд░ рдкреНрд░реЗрдордорд╛ рдкрд░реНрдпреМрдВ Nomad.

рддрдкрд╛рдИ рдХреЗ рдЪрд╛рд╣рдиреБрд╣реБрдиреНрдЫ

рд╣рд╛рдореНрд░реЛ рдЯреЛрд▓реАрд▓реЗ рдзреЗрд░реИ рд╕рд╛рдорд╛рдиреНрдп рдХрд╛рд░реНрдпрд╕рдореНрдкрд╛рджрди рдЕрдиреБрдЧрдорди рд░ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рд╕реЗрд╡рд╛рд╣рд░реВрд▓рд╛рдИ рд╕рдорд░реНрдерди рдЧрд░реНрджрдЫ: Go рдорд╛ рд▓реЗрдЦрд┐рдПрдХрд╛ рдореЗрдЯреНрд░рд┐рдХреНрд╕рдХрд╛ рд▓рд╛рдЧрд┐ API рдЕрдиреНрддреНрдп рдмрд┐рдиреНрджреБрд╣рд░реВ, Prometheus рдирд┐рд░реНрдпрд╛рддрд╣рд░реВ, рд▓рдЧ рдкрд╛рд░реНрд╕рд░рд╣рд░реВ рдЬрд╕реНрддреИ Logstash рд░ Gollum, рд╕рд╛рдереИ рдбрд╛рдЯрд╛рдмреЗрд╕рд╣рд░реВ рдЬрд╕реНрддреИ InfluxDB рд╡рд╛ Elasticsearchред рдпреА рдкреНрд░рддреНрдпреЗрдХ рд╕реЗрд╡рд╛рд╣рд░реВ рдЖрдлреНрдиреИ рдХрдиреНрдЯреЗрдирд░рдорд╛ рдЪрд▓реНрдЫрдиреНред рд╣рд╛рдореАрд▓рд╛рдИ рдпреЛ рд╕рдмреИ рдЪрд▓рд╛рдЙрдирдХреЛ рд▓рд╛рдЧрд┐ рдПрдХ рд╕рд░рд▓ рдкреНрд░рдгрд╛рд▓реА рдЪрд╛рд╣рд┐рдиреНрдЫред

рд╣рд╛рдореАрд▓реЗ рдХрдиреНрдЯреЗрдирд░ рдЕрд░реНрдХреЗрд╕реНрдЯреНрд░реЗрд╕рдирдХреЛ рд▓рд╛рдЧрд┐ рдЖрд╡рд╢реНрдпрдХрддрд╛рд╣рд░реВрдХреЛ рд╕реВрдЪреАрдХреЛ рд╕рд╛рде рд╕реБрд░реБ рдЧрд░реНрдпреМрдВ:

  • рдзреЗрд░реИ рдореЗрд╕рд┐рдирд╣рд░реВрдорд╛ рд╕реЗрд╡рд╛рд╣рд░реВрдХреЛ рд╕реЗрдЯ рдЪрд▓рд╛рдЙрдБрджреИред
  • рдЪрд▓рд┐рд░рд╣реЗрдХреЛ рд╕реЗрд╡рд╛рд╣рд░реВрдХреЛ рдЕрд╡рд▓реЛрдХрдиред
  • рд╕реЗрд╡рд╛рд╣рд░реВ рдмреАрдЪ рд▓рд┐рдЩреНрдХрд╣рд░реВред
  • рдпрджрд┐ рд╕реЗрд╡рд╛ рддрд▓ рдЬрд╛рдиреНрдЫ рднрдиреЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдкреБрди: рд╕реБрд░реБ рдЧрд░реНрдиреБрд╣реЛрд╕реНред
  • рд╕рд╛рдиреЛ рдЯреЛрд▓реАрджреНрд╡рд╛рд░рд╛ рдкреВрд░реНрд╡рд╛рдзрд╛рд░ рдорд░реНрдорддрд╕рдореНрднрд╛рд░ред

рдердк рд░реВрдкрдорд╛, рдирд┐рдореНрди рдЪреАрдЬрд╣рд░реВ рд░рд╛рдореНрд░реЛ рд╣реБрдиреЗрдЫ, рддрд░ рдЖрд╡рд╢реНрдпрдХ рдердкрд┐рдиреЗ рдЫреИрди:

  • рдЯреНрдпрд╛рдЧ рдЧрд░реНрдиреЗ рдореЗрд╕рд┐рдирд╣рд░реВ рддрд┐рдиреАрд╣рд░реВрдХреЛ рдХреНрд╖рдорддрд╛рд╣рд░реВрдорд╛ рдЖрдзрд╛рд░рд┐рдд рдЫрдиреН (рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рднрд╛рд░реА I/O рд╕реЗрд╡рд╛рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рджреНрд░реБрдд рдбрд┐рд╕реНрдХрд╣рд░реВ рднрдПрдХрд╛ рдореЗрд╕рд┐рдирд╣рд░реВ рдЯреНрдпрд╛рдЧ рдЧрд░реНрдиреЗ)ред
  • рдЕрд░реНрдХреЗрд╕реНрдЯреНрд░реЗрдЯрд░рдмрд╛рдЯ рд╕реНрд╡рддрдиреНрддреНрд░ рд░реВрдкрдорд╛ рд╕реЗрд╡рд╛рд╣рд░реВ рдЪрд▓рд╛рдЙрдиреЗ рдХреНрд╖рдорддрд╛ (рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рд╡рд┐рдХрд╛рд╕рдХреЛ рдХреНрд░рдордорд╛)ред
  • рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди рд░ рдЧреЛрдкреНрдп рд╕рд╛рдЭрд╛ рдЧрд░реНрди рд╕рд╛рдЭрд╛ рдард╛рдЙрдБред
  • рдореЗрдЯреНрд░рд┐рдХреНрд╕ рд░ рд▓рдЧрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдЕрдиреНрддрд┐рдо рдмрд┐рдиреНрджреБред

рдХрд┐рди Kubernetes рд╣рд╛рдореНрд░реЛ рд▓рд╛рдЧрд┐ рд╕рд╣реА рдЫреИрди

рд╣рд╛рдореАрд▓реЗ Kubernetes рд╕рдБрдЧ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдЧрд░реНрджрд╛, рд╣рд╛рдореАрд▓реЗ рдзреНрдпрд╛рди рджрд┐рдпреМрдВ рдХрд┐ рд╣рд╛рдореАрд▓реЗ рддрд░реНрдХрдХреЛ рдмрдвреНрджреЛ рдЬрдЯрд┐рд▓ рддрд╣рд╣рд░реВ рдердкреНрджреИрдЫреМрдВ рдЬрд╕рдорд╛ рд╣рд╛рдореА рдзреЗрд░реИ рдирд┐рд░реНрднрд░ рдЫреМрдВред

рдЙрджрд╛рд╣рд░рдгрдХреЛ рд░реВрдкрдорд╛, Kubernetes рд▓реЗ рдмрд┐рд▓реНрдЯ-рдЗрди рд╕реЗрд╡рд╛ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рдирд╣рд░реВ рдорд╛рд░реНрдлрдд рд╕рдорд░реНрдерди рдЧрд░реНрджрдЫ рдХрдиреНрдлрд┐рдЧрдореНрдпрд╛рдкреНрд╕ред рд╡рд┐рд╢реЗрд╖ рдЧрд░реА рдзреЗрд░реИ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди рдлрд╛рдЗрд▓рд╣рд░реВ рдорд░реНрдЬ рдЧрд░реНрджрд╛ рд╡рд╛ рдкреЛрдбрдорд╛ рдердк рд╕реЗрд╡рд╛рд╣рд░реВ рдердкреНрджрд╛ рддрдкрд╛рдИрдВ рдЪрд╛рдБрдбреИ рдЕрд▓рдорд▓рдорд╛ рдкрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред Kubernetes (рд╡рд╛ рд╣реЗрд▓рдо рдпрд╕ рдЕрд╡рд╕реНрдерд╛рдорд╛) рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдЪрд╛рд╕реЛрд╣рд░реВ рдЕрд▓рдЧ рдЧрд░реНрди рдмрд╛рд╣реНрдп рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рдирд╣рд░реВ рдЧрддрд┐рд╢реАрд▓ рд░реВрдкрдорд╛ рд▓рд╛рдЧреВ рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред рддрд░ рдпрд╕рд▓реЗ рддрдкрд╛рдИрдВрдХреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд░ рдХреБрдмрд░реНрдиреЗрдЯреНрд╕ рдмреАрдЪрдХреЛ рдХрдбрд╛, рд▓реБрдХреЗрдХреЛ рдпреБрдЧреНрдордирдорд╛ рдкрд░рд┐рдгрд╛рдо рджрд┐рдиреНрдЫред рдпрджреНрдпрдкрд┐, Helm рд░ ConfigMaps рдЕрддрд┐рд░рд┐рдХреНрдд рд╡рд┐рдХрд▓реНрдкрд╣рд░реВ рд╣реБрдиреН, рддреНрдпрд╕реИрд▓реЗ рддрдкрд╛рдИрдВрд▓реЗ рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрдкрд░реНрджреИрдиред рддрдкрд╛рдИрдВ рдХреЗрд╡рд▓ рдбрдХрд░ рдЫрд╡рд┐рдорд╛ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред рдЬреЗ рд╣реЛрд╕реН, рдпреЛ рдпреЛ рдмрд╛рдЯреЛ рддрд▓ рдЬрд╛рди рд░ рдЕрдирд╛рд╡рд╢реНрдпрдХ рдЕрдореВрд░реНрддрддрд╛рд╣рд░реВ рдирд┐рд░реНрдорд╛рдг рдЧрд░реНрди рдкреНрд░рд▓реЛрднрди рд╣реЛ рдЬреБрди рддрдкрд╛рдЗрдБ рдкрдЫрд┐ рдкрдЫреБрддрд╛рдЙрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред

рдердк рд░реВрдкрдорд╛, Kubernetes рдЗрдХреЛрд╕рд┐рд╕реНрдЯрдо рджреНрд░реБрдд рд░реВрдкрдорд╛ рд╡рд┐рдХрд╕рд┐рдд рд╣реБрдБрджреИрдЫред рдЙрддреНрдХреГрд╖реНрдЯ рдЕрднреНрдпрд╛рд╕рд╣рд░реВ рд░ рдирд╡реАрдирддрдо рдЙрдкрдХрд░рдгрд╣рд░реВрд╕рдБрдЧ рдЕрджреНрдпрд╛рд╡рдзрд┐рдХ рд░рд╣рди рдзреЗрд░реИ рд╕рдордп рд░ рдКрд░реНрдЬрд╛ рд▓рд╛рдЧреНрдЫред Kubectl, minikube, kubeadm, рд╣реЗрд▓реНрдо, рдЯрд┐рд▓рд░, kops, oc - рд╕реВрдЪреА рдЬрд╛рд░реА рд░ рдЬрд╛рд░реА рдЫред рдпреА рд╕рдмреИ рдЙрдкрдХрд░рдгрд╣рд░реВ рдЖрд╡рд╢реНрдпрдХ рдкрд░реНрджреИрди рдЬрдм рддрдкрд╛рдЗрдБ рд╕реБрд░реБ рдЧрд░реНрджреИ рд╣реБрдиреБрд╣реБрдиреНрдЫ, рддрд░ рддрдкрд╛рдЗрдБрд▓рд╛рдИ рдерд╛рд╣рд╛ рдЫреИрди рддрдкрд╛рдЗрдБ рдХреЗ рдЪрд╛рд╣рд┐рдиреНрдЫ, рддреНрдпрд╕реИрд▓реЗ рддрдкрд╛рдЗрдБ рд╕рдмреИ рдХреБрд░рд╛ рдмрд╛рд░реЗ рд╕рдЪреЗрдд рд╣реБрди рдЖрд╡рд╢реНрдпрдХ рдЫред рдпрд╕ рдХрд╛рд░рдгрд▓реЗ рдЧрд░реНрджрд╛, рд╕рд┐рдХрд╛рдЗ рд╡рдХреНрд░ рдзреЗрд░реИ рдард╛рдбреЛ рдЫред

Kubernetes рдХрд╣рд┐рд▓реЗ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ

рд╣рд╛рдореНрд░реЛ рдХрдореНрдкрдиреАрдорд╛, рдзреЗрд░реИ рдорд╛рдирд┐рд╕рд╣рд░реВ Kubernetes рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдЫрдиреН рд░ рдпрд╕рд╕рдБрдЧ рдзреЗрд░реИ рдЦреБрд╕реА рдЫрдиреНред рдпреА рдЙрджрд╛рд╣рд░рдгрд╣рд░реВ Google рд╡рд╛ Amazon рджреНрд╡рд╛рд░рд╛ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдЫрдиреН, рдЬрд╕рд╕рдБрдЧ рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рд╕рдорд░реНрдерди рдЧрд░реНрдиреЗ рд╕реНрд░реЛрддрд╣рд░реВ рдЫрдиреНред

Kubernetes рд╕рдБрдЧ рдЖрдЙрдБрдЫ рдЖрд╢реНрдЪрд░реНрдпрдЬрдирдХ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ, рдЬрд╕рд▓реЗ рд╕реНрдХреЗрд▓рдорд╛ рдХрдиреНрдЯреЗрдирд░ рдЕрд░реНрдХреЗрд╕реНрдЯреНрд░реЗрд╕рдирд▓рд╛рдИ рдЕрдЭ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдмрдирд╛рдЙрдБрдЫ:

рдкреНрд░рд╢реНрди рдпреЛ рд╣реЛ рдХрд┐ рддрдкрд╛рдИрд▓рд╛рдИ рд╕рд╛рдБрдЪреНрдЪреИ рдпреА рд╕рдмреИ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рдЪрд╛рд╣рд┐рдиреНрдЫред рддрдкрд╛рдИрдВ рдХреЗрд╡рд▓ рдЕрдореВрд░реНрддрд╣рд░реВрдорд╛ рднрд░ рдкрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрди; рддрдкрд╛рдИрдВрд▓реЗ рд╣реБрдб рдореБрдирд┐ рдХреЗ рднрдЗрд░рд╣реЗрдХреЛ рдЫ рдкрддреНрддрд╛ рд▓рдЧрд╛рдЙрдиреБ рдкрд░реНрдЫ.

рд╣рд╛рдореНрд░реЛ рдЯреЛрд▓реАрд▓реЗ рдзреЗрд░реИрдЬрд╕реЛ рд╕реЗрд╡рд╛рд╣рд░реВ рдЯрд╛рдврд╛рдмрд╛рдЯ рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫ (рдореБрдЦреНрдп рдкреВрд░реНрд╡рд╛рдзрд╛рд░рд╕рдБрдЧ рдирдЬрд┐рдХрдХреЛ рдЬрдбрд╛рдирдХреЛ рдХрд╛рд░рдг), рддреНрдпрд╕реИрд▓реЗ рд╣рд╛рдореАрд▓реЗ рд╣рд╛рдореНрд░реЛ рдЖрдлреНрдиреИ Kubernetes рдХреНрд▓рд╕реНрдЯрд░ рдмрдврд╛рдЙрди рдЪрд╛рд╣рдБрджреИрдиреМрдВред рд╣рд╛рдореА рдХреЗрд╡рд▓ рд╕реЗрд╡рд╛ рдкреНрд░рджрд╛рди рдЧрд░реНрди рдЪрд╛рд╣рдиреНрдЫреМрдВред

рдмреНрдпрд╛рдЯреНрд░реАрд╣рд░реВ рд╕рдорд╛рд╡реЗрд╢ рдЫреИрдирдиреН

рдШреБрдордиреНрддреЗ рдЖрд░реНрдХреЗрд╕реНрдЯреНрд░рд╛рдХреЛ 20% рд╣реЛ рдЬрд╕рд▓реЗ рдЖрд╡рд╢реНрдпрдХ рдкрд░реНрдиреЗ 80% рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫред рдпрд╕рд▓реЗ рдЧрд░реНрдиреЗ рд╕рдмреИ рдбрд┐рдкреНрд▓реЛрдпрдореЗрдиреНрдЯрд╣рд░реВ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдЧрд░реНрдиреЗ рд╣реЛред Nomad рд▓реЗ рдбрд┐рдкреНрд▓реЛрдпрдореЗрдиреНрдЯрдХреЛ рдЦреНрдпрд╛рд▓ рд░рд╛рдЦреНрдЫ, рддреНрд░реБрдЯрд┐рд╣рд░реВрдХреЛ рдЕрд╡рд╕реНрдерд╛рдорд╛ рдХрдиреНрдЯреЗрдирд░рд╣рд░реВ рдкреБрди: рд╕реБрд░реБ рдЧрд░реНрджрдЫ ... рд░ рдпреЛ рд╣реЛред

Nomad рдХреЛ рд╕рдореНрдкреВрд░реНрдг рдмрд┐рдиреНрджреБ рдпреЛ рдХреЗ рдЧрд░реНрдЫ рдиреНрдпреВрдирддрдо: рдХреБрдиреИ рджрд╛рдиреЗрджрд╛рд░ рдЕрдзрд┐рдХрд╛рд░ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рд╡рд╛ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдиреЗрдЯрд╡рд░реНрдХ рдиреАрддрд┐рд╣рд░реВ, рдпреЛ рд╡рд┐рд╢реЗрд╖ рд░реВрдкрдорд╛ рдбрд┐рдЬрд╛рдЗрди рдЧрд░рд┐рдПрдХреЛ рдЫред рдпреА рдХрдореНрдкреЛрдиреЗрдиреНрдЯрд╣рд░реВ рдмрд╛рд╣реНрдп рд░реВрдкрдорд╛ рдкреНрд░рджрд╛рди рдЧрд░рд┐рдПрдХрд╛ рдЫрдиреН рд╡рд╛ рд╣реЛрдЗрдирдиреНред

рдорд▓рд╛рдИ рд▓рд╛рдЧреНрдЫ Nomad рд▓реЗ рдкреНрд░рдпреЛрдЧрдХреЛ рд╕рд╣рдЬрддрд╛ рд░ рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдмреАрдЪрдХреЛ рдЙрддреНрддрдо рд╕рдореНрдЭреМрддрд╛ рдлреЗрд▓рд╛ рдкрд╛рд░реЗрдХреЛ рдЫред рдпреЛ рд╕рд╛рдирд╛, рд╕реНрд╡рддрдиреНрддреНрд░ рд╕реЗрд╡рд╛рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд░рд╛рдореНрд░реЛ рдЫред рдпрджрд┐ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдердк рдирд┐рдпрдиреНрддреНрд░рдг рдЪрд╛рд╣рд┐рдиреНрдЫ рднрдиреЗ, рддрдкрд╛рдИрдВрд▓реЗ рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рдЖрдлреИрдВ рдЙрдард╛рдЙрдиреБ рдкрд░реНрдиреЗ рд╣реБрдиреНрдЫ рд╡рд╛ рдлрд░рдХ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрдкрд░реНрдЫред рдШреБрдордиреНрддреЗ рд╣реЛ рдмрд╕ рдЕрд░реНрдХреЗрд╕реНрдЯреНрд░реЗрдЯрд░ред

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

рдврд┐рд▓реЛ рдЬреЛрдбрд┐рдПрдХреЛ рдХрдореНрдкреЛрдиреЗрдиреНрдЯрдХреЛ рдШреБрдордиреНрддреЗ рдЗрдХреЛрд╕рд┐рд╕реНрдЯрдо

рдШреБрдордиреНрддреЗрдХреЛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╢рдХреНрддрд┐ рдпрд╕рдХреЛ рдЗрдХреЛрд╕рд┐рд╕реНрдЯрдо рд╣реЛред рдпреЛ рдЕрдиреНрдп - рдкреВрд░реНрдг рд░реВрдкрдорд╛ рд╡реИрдХрд▓реНрдкрд┐рдХ - рдЙрддреНрдкрд╛рджрдирд╣рд░реВ рдЬрд╕реНрддреИ рдзреЗрд░реИ рд░рд╛рдореНрд░реЛрд╕рдБрдЧ рдПрдХреАрдХреГрдд рд╣реБрдиреНрдЫ рдХрдиреНрд╕реБрд▓рд░ (рдХреБрдЮреНрдЬреА-рдореВрд▓реНрдп рд╕реНрдЯреЛрд░) рд╡рд╛ рд╡рд╛рд▓реНрдЯ (рдЧреЛрдкреНрдп рдкреНрд░рд╢реЛрдзрди)ред Nomad рдлрд╛рдЗрд▓ рднрд┐рддреНрд░ рдпреА рд╕реЗрд╡рд╛рд╣рд░реВрдмрд╛рдЯ рдбрд╛рдЯрд╛ рдирд┐рдХрд╛рд▓реНрдиреЗ рд╕реЗрдХреНрд╕рдирд╣рд░реВ рдЫрдиреН:

template {
  data = <<EOH
LOG_LEVEL="{{key "service/geo-api/log-verbosity"}}"
API_KEY="{{with secret "secret/geo-api-key"}}{{.Data.value}}{{end}}"
EOH

  destination = "secrets/file.env"
  env         = true
}

рдпрд╣рд╛рдБ рд╣рд╛рдореА рдХреБрдЮреНрдЬреА рдкрдвреНрдЫреМрдВ service/geo-api/log-verbosity рдХрдиреНрд╕реБрд▓рдмрд╛рдЯ рд░ рдпрд╕рд▓рд╛рдИ рд╕рдЮреНрдЪрд╛рд▓рдирдХреЛ рдХреНрд░рдордорд╛ рд╡рд╛рддрд╛рд╡рд░рдгреАрдп рдЪрд░рдорд╛ рдЙрдЬрд╛рдЧрд░ рдЧрд░реНрдиреБрд╣реЛрд╕реН LOG_LEVELред рд╣рд╛рдореА рдЪрд╛рдмреА рдкрдирд┐ рдкреНрд░рд╕реНрддреБрдд рдЧрд░реНрджрдЫреМрдВ secret/geo-api-key рдХреЛ рд░реВрдкрдорд╛ рднрд▓реНрдЯ рдмрд╛рдЯ API_KEYред рд╕рд░рд▓ рддрд░ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА!

рдпрд╕рдХреЛ рд╕рд░рд▓рддрд╛рдХреЛ рдХрд╛рд░рдг, Nomad рдПрдкреАрдЖрдИ рдорд╛рд░реНрдлрдд рдЕрдиреНрдп рд╕реЗрд╡рд╛рд╣рд░реВрд╕рдБрдЧ рд╕рдЬрд┐рд▓реИ рд╡рд┐рд╕реНрддрд╛рд░ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рдХрд╛рд░реНрдпрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдЯреНрдпрд╛рдЧрд╣рд░реВ рд╕рдорд░реНрдерд┐рдд рдЫрдиреНред рд╣рд╛рдореА рдореЗрдЯреНрд░рд┐рдХреНрд╕рдХреЛ рд╕рд╛рде рд╕рдмреИ рд╕реЗрд╡рд╛рд╣рд░реВ рдЯреНрдпрд╛рдЧ рдЧрд░реНрдЫреМрдВ trv-metricsред рдпрд╕ рддрд░реАрдХрд╛рд▓реЗ рдкреНрд░реЛрдореЗрдерд┐рдпрд╕рд▓реЗ рдХрдиреНрд╕реБрд▓ рдорд╛рд░реНрдлрдд рдпреА рд╕реЗрд╡рд╛рд╣рд░реВ рд╕рдЬрд┐рд▓реИ рдлреЗрд▓рд╛ рдкрд╛рд░реНрди рд╕рдХреНрдЫрдиреН рд░ рдЖрд╡рдзрд┐рдХ рд░реВрдкрдорд╛ рдЕрдиреНрддрд┐рдо рдмрд┐рдиреНрджреБ рдЬрд╛рдБрдЪ рдЧрд░реНрди рд╕рдХреНрдЫрдиреН /metrics рдирдпрд╛рдБ рдбрд╛рдЯрд╛рдХреЛ рд▓рд╛рдЧрд┐ред рдЙрд╣реА рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫ, рдЙрджрд╛рд╣рд░рдг рдХреЛ рд▓рд╛рдЧреА, рд▓рдЧ рдХреЛ рд▓рд╛рдЧреА, рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рд▓реЛрдХреА.

рдПрдХреНрд╕реНрдЯреЗрдиреНрд╕рд┐рдмрд┐рд▓рд┐рдЯреАрдХрд╛ рдзреЗрд░реИ рдЕрдиреНрдп рдЙрджрд╛рд╣рд░рдгрд╣рд░реВ рдЫрдиреН:

  • рд╣реБрдХ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдЬреЗрдирдХрд┐рдиреНрд╕рдХреЛ рдХрд╛рдо рдЪрд▓рд╛рдЙрдиреБрд╣реЛрд╕реН, рд░ рд╕реЗрд╡рд╛ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди рдкрд░рд┐рд╡рд░реНрддрди рд╣реБрдБрджрд╛ рдХрдиреНрд╕реБрд▓рд▓реЗ Nomad рдХрд╛рдордХреЛ рдкреБрди: рдкреНрд░рдпреЛрдЧрдХреЛ рдирд┐рдЧрд░рд╛рдиреА рдЧрд░реНрджрдЫред
  • Ceph рд▓реЗ Nomad рдорд╛ рд╡рд┐рддрд░рд┐рдд рдлрд╛рдЗрд▓ рдкреНрд░рдгрд╛рд▓реА рдердкреНрдЫред
  • fabio рд▓реЛрдб рд╕рдиреНрддреБрд▓рдирдХреЛ рд▓рд╛рдЧрд┐ред

рдпреЛ рд╕рдмреИ рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫ рдЬреИрд╡рд┐рдХ рд░реВрдкрдорд╛ рдкреВрд░реНрд╡рд╛рдзрд╛рд░ рд╡рд┐рдХрд╛рд╕ рд╡рд┐рдХреНрд░реЗрддрд╛рд╕рдБрдЧ рдХреБрдиреИ рд╡рд┐рд╢реЗрд╖ рдЬрдбрд╛рди рдмрд┐рдирд╛ред

рдЙрдЪрд┐рдд рдЪреЗрддрд╛рд╡рдиреА

рдХреБрдиреИ рдкрдирд┐ рдкреНрд░рдгрд╛рд▓реА рдкреВрд░реНрдг рд╣реБрдБрджреИрдиред рдо рддреБрд░реБрдиреНрддреИ рдЙрддреНрдкрд╛рджрдирдорд╛ рдирдпрд╛рдБ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рдкреНрд░рд╕реНрддреБрдд рдЧрд░реНрди рд╕рд┐рдлрд╛рд░рд┐рд╕ рдЧрд░реНрджрд┐рдиред рдирд┐рд╕реНрд╕рдиреНрджреЗрд╣ рддреНрдпрд╣рд╛рдБ рдмрдЧрд╣рд░реВ рд░ рд╣рд░рд╛рдЗрд░рд╣реЗрдХреЛ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рдЫрдиреН, рддрд░ рдЙрд╣реА Kubernetes рдорд╛ рд▓рд╛рдЧреВ рд╣реБрдиреНрдЫред

рдХреБрдмреЗрд░рдиреЗрдЯрдХреЛ рддреБрд▓рдирд╛рдорд╛ рдШреБрдордиреНрддреЗ рд╕рдореБрджрд╛рдп рддреНрдпрддрд┐ рдареВрд▓реЛ рдЫреИрдиред Kubernetes рд╕рдБрдЧ рдкрд╣рд┐рд▓реЗ рдиреИ рд▓рдЧрднрдЧ 75 рдХрдорд┐рдЯ рд░ 000 рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛рд╣рд░реВ рдЫрдиреН, рдЬрдмрдХрд┐ Nomad рд╕рдБрдЧ рд▓рдЧрднрдЧ 2000 рдХрдорд┐рдЯ рд░ 14 рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛рд╣рд░реВ рдЫрдиреНред рдШреБрдордиреНрддреЗрд▓рд╛рдИ Kubernetes рдХреЛ рдЧрддрд┐ рд╕рдВрдЧ рд░рд╛рдЦреНрди рдХрдард┐рди рд╕рдордп рд╣реБрдиреЗрдЫ, рддрд░ рд╕рд╛рдпрдж рдпреЛ рдЖрд╡рд╢реНрдпрдХ рдЫреИрди! рдпреЛ рдПрдХ рдЕрдзрд┐рдХ рд╡рд┐рд╢реЗрд╖ рдкреНрд░рдгрд╛рд▓реА рд╣реЛ, рд░ рд╕рд╛рдиреЛ рд╕рдореБрджрд╛рдп рдХреЛ рдорддрд▓рдм рдпреЛ рдкрдирд┐ рд╣реЛ рдХрд┐ рддрдкрд╛рдЗрдБрдХреЛ рдкреБрд▓ рдЕрдиреБрд░реЛрдз рдХреБрдмреЗрд░рдиреЗрдЯрдХреЛ рддреБрд▓рдирд╛рдорд╛ рдзреНрдпрд╛рди рджрд┐рдЗрдиреЗ рд░ рд╕реНрд╡реАрдХреГрдд рд╣реБрдиреЗ рд╕рдореНрднрд╛рд╡рдирд╛ рдмрдвреА рдЫред

рд╕рд╛рд░рд╛рдВрд╢

рддрд▓реНрд▓реЛ рд░реЗрдЦрд╛: рдХреБрдмреЗрд░рдиреЗрдЯрд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдирдЧрд░реНрдиреБрд╣реЛрд╕реН рдХрд┐рдирднрдиреЗ рдЕрд░реВ рд╕рдмреИрд▓реЗ рдпреЛ рдЧрд░рд┐рд░рд╣реЗрдХрд╛ рдЫрдиреНред рдЖрдлреНрдиреЛ рдЖрд╡рд╢реНрдпрдХрддрд╛рд╣рд░реВ рд╕рд╛рд╡рдзрд╛рдиреАрдкреВрд░реНрд╡рдХ рдореВрд▓реНрдпрд╛рдЩреНрдХрди рдЧрд░реНрдиреБрд╣реЛрд╕реН рд░ рдХреБрди рдЙрдкрдХрд░рдг рдмрдвреА рд▓рд╛рднрджрд╛рдпрдХ рдЫ рдЬрд╛рдБрдЪ рдЧрд░реНрдиреБрд╣реЛрд╕реНред

рдпрджрд┐ рддрдкрд╛рдЗрдБ рдареВрд▓рд╛-рдареВрд▓рд╛ рдкреВрд░реНрд╡рд╛рдзрд╛рд░рд╣рд░реВрдорд╛ рдПрдХ рдЯрди рдПрдХрд╕рдорд╛рди рд╕реЗрд╡рд╛рд╣рд░реВ рддреИрдирд╛рде рдЧрд░реНрдиреЗ рдпреЛрдЬрдирд╛ рдмрдирд╛рдЙрдиреБрд╣реБрдиреНрдЫ рднрдиреЗ, рдХреБрдмрд░реНрдиреЗрдЯреНрд╕ рдПрдХ рд░рд╛рдореНрд░реЛ рд╡рд┐рдХрд▓реНрдк рд╣реЛред рдердк рдЬрдЯрд┐рд▓рддрд╛ рд░ рд╕рдЮреНрдЪрд╛рд▓рди рд▓рд╛рдЧрдд рдмрд╛рд░реЗ рдорд╛рддреНрд░ рд╕рдЪреЗрдд рд░рд╣рдиреБрд╣реЛрд╕реНред рдХреЗрд╣реА рд▓рд╛рдЧрддрд╣рд░реВ рд╡реНрдпрд╡рд╕реНрдерд┐рдд Kubernetes рд╡рд╛рддрд╛рд╡рд░рдг рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдЬреЛрдЧрд┐рди рд╕рдХрд┐рдиреНрдЫ рдЬрд╕реНрддреИ рдЧреБрдЧрд▓ рдХреБрдмрд░реНрдиреЗрдЯ рдЗрдЮреНрдЬрд┐рди рд╡рд╛ рдЕрдореЗрдЬрди EKS.

рдпрджрд┐ рддрдкрд╛рдЗрдБ рднрд░рдкрд░реНрджреЛ рдЕрд░реНрдХреЗрд╕реНрдЯреНрд░реЗрдЯрд░рдХреЛ рдЦреЛрдЬреА рдЧрд░реНрджреИ рд╣реБрдиреБрд╣реБрдиреНрдЫ рдЬреБрди рдорд░реНрдордд рдЧрд░реНрди рд╕рдЬрд┐рд▓реЛ рд░ рд╡рд┐рд╕реНрддрд╛рд░ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫ, рдХрд┐рди Nomad рдкреНрд░рдпрд╛рд╕ рдирдЧрд░реНрдиреЗ? рддрдкрд╛рдИрдВ рдЖрд╢реНрдЪрд░реНрдпрдЪрдХрд┐рдд рд╣реБрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рдХрд┐ рдпрд╕рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдХрддрд┐ рдЯрд╛рдврд╛ рд▓реИрдЬрд╛рдиреНрдЫред

рдпрджрд┐ Kubernetes рдХреЛ рдХрд╛рд░ рд╕рдВрдЧ рддреБрд▓рдирд╛ рдЧрд░рд┐рдиреНрдЫ, Nomad рдПрдХ рд╕реНрдХреВрдЯрд░ рд╣реБрдиреЗрдЫред рдХрд╣рд┐рд▓реЗ рдПрдЙрдЯрд╛ рдХреБрд░рд╛ рдЪрд╛рд╣рд┐рдиреНрдЫ рдд рдХрд╣рд┐рд▓реЗ рдЕрд░реНрдХреЛ рдЪрд╛рд╣рд┐рдиреНрдЫ ред рджреБрд╡реИрдХреЛ рдЕрд╕реНрддрд┐рддреНрд╡рдХреЛ рдЕрдзрд┐рдХрд╛рд░ рдЫред

рд╕реНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдердкреНрди