Kubernetes рдорд╛ Liveness рдЬрд╛рдВрдЪ рдЦрддрд░рдирд╛рдХ рд╣реБрди рд╕рдХреНрдЫ

рдиреЛрдЯред рдЕрдиреБрд╡рд╛рджред: рдЬрд╛рд▓рд╛рдиреНрдбреЛрдХрд╛ рдкреНрд░рдореБрдЦ рдЗрдиреНрдЬрд┐рдирд┐рдпрд░, рд╣реЗрдирд┐рдЩ рдЬреЗрдХрдмреНрд╕рд▓реЗ рдХреБрдмрд░реНрдиреЗрдЯреНрд╕ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВ рдмреАрдЪ рдЬреАрд╡рдиреНрддрддрд╛ (рд░ рддрддреНрдкрд░рддрд╛) рдкреНрд░реЛрдмрд╣рд░реВ рд░ рддрд┐рдиреАрд╣рд░реВрдХреЛ рд╕рд╣реА рдкреНрд░рдпреЛрдЧрдХреЛ рдЙрджреНрджреЗрд╢реНрдп рдмреБрдЭреНрдирдорд╛ рдмрд╛рд░рдореНрдмрд╛рд░ рд╕рдорд╕реНрдпрд╛рд╣рд░реВ рджреЗрдЦреЗрдХрд╛ рдЫрдиреНред рддрд╕рд░реНрде, рдЙрдирд▓реЗ рдЖрдлреНрдиреЛ рд╡рд┐рдЪрд╛рд░рд╣рд░реВ рдпрд╕ рд╡рд┐рд╢рд╛рд▓ рдиреЛрдЯрдорд╛ рд╕рдЩреНрдХрд▓рди рдЧрд░реЗ, рдЬреБрди рдЕрдиреНрддрддрдГ K8s рдХрд╛рдЧрдЬрд╛рддрдХреЛ рдЕрдВрд╢ рдмрдиреНрдиреЗрдЫред

Kubernetes рдорд╛ Liveness рдЬрд╛рдВрдЪ рдЦрддрд░рдирд╛рдХ рд╣реБрди рд╕рдХреНрдЫ

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

рдореЗрд░реЛ рд╕рд╣рдХрд░реНрдореА рд╕реНрдпрд╛рдиреНрдбрд░рд▓реЗ рднрд░реНрдЦрд░реИ рдЯреНрд╡рд┐рдЯрд░рдорд╛ рдЖрдлреВрд▓реЗ рд╕рд╛рдордирд╛ рдЧрд░реНрдиреЗ рд╕рдмреИрднрдиреНрджрд╛ рд╕рд╛рдорд╛рдиреНрдп рддреНрд░реБрдЯрд┐рд╣рд░реВ рд╕рд╛рдЭрд╛ рдЧрд░реНрдиреБрднрдпреЛ, рдЬрд╕рдорд╛ рддрдпрд╛рд░реА/рдЬреАрд╡рд┐рддрддрд╛ рдЬрд╛рдБрдЪрд╣рд░реВрдХреЛ рдкреНрд░рдпреЛрдЧрд╕рдБрдЧ рд╕рдореНрдмрдиреНрдзрд┐рдд рдЫрдиреН:

Kubernetes рдорд╛ Liveness рдЬрд╛рдВрдЪ рдЦрддрд░рдирд╛рдХ рд╣реБрди рд╕рдХреНрдЫ

рдЧрд▓рдд рддрд░рд┐рдХрд╛рд▓реЗ рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░рд┐рдпреЛ livenessProbe рдЙрдЪреНрдЪ-рд▓реЛрдб рдЕрд╡рд╕реНрдерд╛рд╣рд░реВ (рд╕реНрдиреЛрдмрд▓ рдмрдиреНрдж + рд╕рдореНрднрд╛рд╡рд┐рдд рд░реВрдкрдорд╛ рд▓рд╛рдореЛ рдХрдиреНрдЯреЗрдирд░/рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рд╕рдордп) рд░ рдЕрдиреНрдп рдирдХрд╛рд░рд╛рддреНрдордХ рдкрд░рд┐рдгрд╛рдорд╣рд░реВ рдЬрд╕реНрддреИ рдирд┐рд░реНрднрд░рддрд╛ рдбреНрд░рдкрд╣рд░реВ рдирд┐рдореНрддреНрдпрд╛рдЙрди рд╕рдХреНрдЫред (рдпреЛ рдкрдирд┐ рд╣реЗрд░реНрдиреБрд╣реЛрд╕реН рдореЗрд░реЛ рднрд░реНрдЦрд░рдХреЛ рд▓реЗрдЦ K3s + ACME рд╕рдВрдпреЛрдЬрдирдорд╛ рдЕрдиреБрд░реЛрдзрд╣рд░реВрдХреЛ рд╕рдВрдЦреНрдпрд╛ рд╕реАрдорд┐рдд рдЧрд░реНрдиреЗ рдмрд╛рд░реЗ)ред рдпреЛ рдЕрдЭ рдирд░рд╛рдореНрд░реЛ рд╣реБрдиреНрдЫ рдЬрдм рдЬреАрд╡рдиреНрддрддрд╛ рдЬрд╛рдБрдЪрд▓рд╛рдИ рд╕реНрд╡рд╛рд╕реНрдереНрдп рдЬрд╛рдБрдЪрд╕рдБрдЧ рдЬреЛрдбрд┐рдиреНрдЫ, рдЬреБрди рдмрд╛рд╣реНрдп рдбрд╛рдЯрд╛рдмреЗрд╕ рд╣реЛ: рдПрдХрд▓ DB рд╡рд┐рдлрд▓рддрд╛рд▓реЗ рддрдкрд╛рдЗрдБрдХреЛ рд╕рдмреИ рдХрдиреНрдЯреЗрдирд░рд╣рд░реВ рдкреБрди: рд╕реБрд░реБ рдЧрд░реНрдиреЗрдЫ!

рд╕рд╛рдорд╛рдиреНрдп рд╕рдиреНрджреЗрд╢ "рдЬреАрд╡рд┐рддрддрд╛ рдЬрд╛рдБрдЪрд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдирдЧрд░реНрдиреБрд╣реЛрд╕реН" рдпрд╕ рдЕрд╡рд╕реНрдерд╛рдорд╛ рдпрд╕рд▓реЗ рдзреЗрд░реИ рдорджреНрджрдд рдЧрд░реНрджреИрди, рддреНрдпрд╕реИрд▓реЗ рддрддреНрдкрд░рддрд╛ рд░ рдЬреАрд╡рдиреНрддрддрд╛ рдЬрд╛рдБрдЪрд╣рд░реВ рдХреЗ рд╣реБрдиреН рднрдиреЗрд░ рд╣реЗрд░реМрдВред

рдиреЛрдЯ: рддрд▓рдХрд╛ рдЕрдзрд┐рдХрд╛рдВрд╢ рдкрд░реАрдХреНрд╖рдгрд╣рд░реВ рдореВрд▓ рд░реВрдкрдорд╛ Zalando рдХреЛ рдЖрдиреНрддрд░рд┐рдХ рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛ рдХрд╛рдЧрдЬрд╛рддрдорд╛ рд╕рдорд╛рд╡реЗрд╢ рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛред

рддрддреНрдкрд░рддрд╛ рд░ рдЬреАрд╡рдиреНрддрддрд╛ рдЬрд╛рдБрдЪ

Kubernetes рднрдирд┐рдиреНрдЫ рджреБрдИ рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рд╕рдВрдпрдиреНрддреНрд░ рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫ рдЬреАрд╡рдиреНрддрддрд╛ рдЬрд╛рдБрдЪрд╣рд░реВ рд░ рддрдпрд╛рд░реА рдЬрд╛рдБрдЪрд╣рд░реВред рддрд┐рдиреАрд╣рд░реВрд▓реЗ рдЖрд╡рдзрд┐рдХ рд░реВрдкрдорд╛ рдХреЗрд╣реА рдХрд╛рд░реНрдпрд╣рд░реВ рдкреНрд░рджрд░реНрд╢рди рдЧрд░реНрдЫрдиреН-рдЬрд╕реНрддреИ HTTP рдЕрдиреБрд░реЛрдз рдкрдард╛рдЙрдиреЗ, TCP рдЬрдбрд╛рди рдЦреЛрд▓реНрдиреЗ, рд╡рд╛ рдХрдиреНрдЯреЗрдирд░рдорд╛ рдЖрджреЗрд╢ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЧрд░реНрдиреЗ-рдПрдкреНрд▓рд┐рдХреЗрд╕рдирд▓реЗ рдЕрдкреЗрдХреНрд╖рд┐рдд рд░реВрдкрдорд╛ рдХрд╛рдо рдЧрд░рд┐рд░рд╣реЗрдХреЛ рдЫ рднрдиреА рдкреБрд╖реНрдЯрд┐ рдЧрд░реНрдиред

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

рдЬреАрд╡рдиреНрддрддрд╛ рдЬрд╛рдБрдЪрд╣рд░реВ Kubernetes рд▓рд╛рдИ рдХрдиреНрдЯреЗрдирд░ рдкреБрди: рд╕реБрд░реБ рдЧрд░реНрдиреЗ рд╕рдордп рд╣реЛ рднрдиреЗрд░ рдмреБрдЭреНрди рдорджреНрджрдд рдЧрд░реНрдиреБрд╣реЛрд╕реНред рдЙрджрд╛рд╣рд░рдг рдХреЛ рд▓рд╛рдЧреА, рдпрд╕реНрддреЛ рдЪреЗрдХрд▓реЗ рддрдкрд╛рдЗрдБрд▓рд╛рдИ рдбреЗрдбрд▓рдХ рд░реЛрдХреНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫ рдЬрдм рдПрдкреНрд▓рд┐рдХреЗрд╕рди рдПрдХ рдард╛рдЙрдБрдорд╛ рдЕрдбреНрдХрд┐рдиреНрдЫред рдпрд╕ рдЕрд╡рд╕реНрдерд╛рдорд╛ рдХрдиреНрдЯреЗрдирд░ рдкреБрди: рд╕реБрд░реБ рдЧрд░реНрдирд╛рд▓реЗ рддреНрд░реБрдЯрд┐рд╣рд░реВрдХреЛ рдмрд╛рд╡рдЬреБрдж рдПрдкреНрд▓рд┐рдХреЗрд╕рдирд▓рд╛рдИ рдЬрдорд┐рдирдмрд╛рдЯ рд╣рдЯрд╛рдЙрди рдорджреНрджрдд рдЧрд░реНрджрдЫ, рддрд░ рдпрд╕рд▓реЗ рдХреНрдпрд╛рд╕реНрдХреЗрдбрд┐рдЩ рд╡рд┐рдлрд▓рддрд╛рд╣рд░реВ рдкрдирд┐ рдирд┐рдореНрддреНрдпрд╛рдЙрди рд╕рдХреНрдЫ (рддрд▓ рд╣реЗрд░реНрдиреБрд╣реЛрд╕реН)ред

рдпрджрд┐ рддрдкрд╛рдИрдВрд▓реЗ рдПрдк рдЕрдкрдбреЗрдЯ рдбрд┐рдкреНрд▓реЛрдп рдЧрд░реНрдиреЗ рдкреНрд░рдпрд╛рд╕ рдЧрд░реНрдиреБрднрдпреЛ рднрдиреЗ рдЬреАрд╡рдиреНрддрддрд╛/рддрддреНрдкрд░рддрд╛ рдЬрд╛рдБрдЪрд╣рд░реВ рдЕрд╕рдлрд▓ рднрдПрдорд╛, рдХреБрдмреЗрд░рдиреЗрдЯрд▓реЗ рд╕реНрдерд┐рддрд┐рдХреЛ рд▓рд╛рдЧрд┐ рдкрд░реНрдЦрд┐рд░рд╣реЗрдХреЛрд▓реЗ рдпрд╕рдХреЛ рд░реЛрд▓рдЖрдЙрдЯ рд░реЛрдХрд┐рдиреЗрдЫред Ready рд╕рдмреИ рдкреЛрдбрд╣рд░реВрдмрд╛рдЯред

рдЙрджрд╛рд╣рд░рдг:

рдпрд╣рд╛рдБ рдПрдЙрдЯрд╛ рдкрде рдЬрд╛рдБрдЪ рдЧрд░реНрдиреЗ рддрдпрд╛рд░реА рдЬрд╛рдБрдЪрдХреЛ рдЙрджрд╛рд╣рд░рдг рд╣реЛ /health рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╕реЗрдЯрд┐рдЩрд╣рд░реВрд╕рдБрдЧ HTTP рдорд╛рд░реНрдлрдд (рдЕрдиреНрддрд░рд╛рд▓: резреж рд╕реЗрдХреЗрдиреНрдб, рд╕рдордп рд╕рдХрд┐рдпреЛ: рез рд╕реЗрдХреЗрдиреНрдб, рд╕рдлрд▓рддрд╛рдХреЛ рдереНрд░реЗрд╕рд╣реЛрд▓реНрдб: 1, рдЕрд╕рдлрд▓рддрд╛ рдереНрд░реЗрд╕рд╣реЛрд▓реНрдб: рей):

# ╤З╨░╤Б╤В╤М ╨╛╨▒╤Й╨╡╨│╨╛ ╨╛╨┐╨╕╤Б╨░╨╜╨╕╤П deployment'╨░/╤Б╤В╨╡╨║╨░
podTemplate:
  spec:
    containers:
    - name: my-container
      # ...
      readinessProbe:
        httpGet:
          path: /health
          port: 8080

рд╕рд┐рдлрд╛рд░рд┐рд╕рд╣рд░реВ

  1. HTTP рдЕрдиреНрддреНрдп рдмрд┐рдиреНрджреБ (REST, рдЖрджрд┐) рдХреЛ рд╕рд╛рде рдорд╛рдЗрдХреНрд░реЛрд╕рд░реНрднрд┐рд╕рд╣рд░реВрдХрд╛ рд▓рд╛рдЧрд┐ред рд╕рдзреИрдВ рддрддреНрдкрд░рддрд╛ рдЬрд╛рдБрдЪ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЧрд░реНрдиреБрд╣реЛрд╕реН, рдЬрд╕рд▓реЗ рдЬрд╛рдБрдЪ рдЧрд░реНрджрдЫ рдХрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╕рди (рдкреЛрдб) рдЯреНрд░рд╛рдлрд┐рдХ рд╕реНрд╡реАрдХрд╛рд░ рдЧрд░реНрди рддрдпрд╛рд░ рдЫ рдХрд┐ рдЫреИрдиред
  2. рддрддреНрдкрд░рддрд╛ рдЬрд╛рдБрдЪ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдЧрд░реНрдиреБрд╣реЛрд╕реН рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡реЗрдм рд╕рд░реНрднрд░ рдкреЛрд░реНрдЯ рдХреЛ рдЙрдкрд▓рдмреНрдзрддрд╛ рдХрднрд░:
    • рдкреНрд░рд╢рд╛рд╕рдирд┐рдХ рдЙрджреНрджреЗрд╢реНрдпрдХрд╛ рд▓рд╛рдЧрд┐ рдкреЛрд░реНрдЯрд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджреИ, рдЬрд╕рд▓рд╛рдИ "рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ" рд╡рд╛ "рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди" рднрдирд┐рдиреНрдЫ (рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, 9090), readinessProbe, рдпрджрд┐ рдкреНрд░рд╛рдердорд┐рдХ HTTP рдкреЛрд░реНрдЯ (рдЬрд╕реНрддреИ 8080) рдЯреНрд░рд╛рдлрд┐рдХ* рд╕реНрд╡реАрдХрд╛рд░ рдЧрд░реНрди рддрдпрд╛рд░ рдЫ рднрдиреЗ рдЕрдиреНрддрд┐рдо рдмрд┐рдиреНрджреБрд▓реЗ рдорд╛рддреНрд░ рдареАрдХ рдлрд░реНрдХрд╛рдЙрдБрдЫ рднрдиреНрдиреЗ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдЧрд░реНрдиреБрд╣реЛрд╕реН;

      *рдо Zalando рдорд╛ рдХрдореНрддрд┐рдорд╛ рдПрдЙрдЯрд╛ рдШрдЯрдирд╛ рдмрд╛рд░реЗ рд╕рдЪреЗрдд рдЫреБ рдЬрд╣рд╛рдБ рдпреЛ рднрдПрдХреЛ рдЫреИрди, рдЕрд░реНрдерд╛рддреНред readinessProbe рдореИрд▓реЗ "рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди" рдкреЛрд░реНрдЯ рдЬрд╛рдБрдЪ рдЧрд░реЗрдВ, рддрд░ рд╕рд░реНрднрд░рд▓реЗ рдХреНрдпрд╛рд╕ рд▓реЛрдб рдЧрд░реНрдиреЗ рд╕рдорд╕реНрдпрд╛рд╣рд░реВрдХреЛ рдХрд╛рд░рдгрд▓реЗ рдХрд╛рдо рдЧрд░реНрди рд╕реБрд░реБ рдЧрд░реЗрдиред

    • рдЫреБрдЯреНрдЯреИ рдкреЛрд░реНрдЯрдорд╛ рд░реЗрдбрд┐рдиреЗрд╕ рдкреНрд░реЛрдм рдЬреЛрдбреНрджрд╛ рдореБрдЦреНрдп рдкреЛрд░реНрдЯрдорд╛ рдУрднрд░рд▓реЛрдб рд╕реНрд╡рд╛рд╕реНрдереНрдп рдЬрд╛рдБрдЪрдорд╛ рдкреНрд░рддрд┐рдмрд┐рдореНрдмрд┐рдд рд╣реБрдиреЗ рдЫреИрди рднрдиреНрдиреЗ рддрдереНрдпрд▓рд╛рдИ рдирд┐рдореНрддреНрдпрд╛рдЙрди рд╕рдХреНрдЫ (рдЕрд░реНрдерд╛рдд, рд╕рд░реНрднрд░рдорд╛ рдереНрд░реЗрдб рдкреВрд▓ рднрд░рд┐рдПрдХреЛ рдЫ, рддрд░ рд╕реНрд╡рд╛рд╕реНрдереНрдп рдЬрд╛рдБрдЪрд▓реЗ рдЕрдЭреИ рдкрдирд┐ рд╕рдмреИ рдареАрдХ рдЫ рднрдиреЗрд░ рджреЗрдЦрд╛рдЙрдБрдЫред )ред
  3. рддреНрдпреЛ рдирд┐рд╢реНрдЪрд┐рдд рдЧрд░ рд░реЗрдбрд┐рдиреЗрд╕ рдкреНрд░реЛрдмрд▓реЗ рдбрд╛рдЯрд╛рдмреЗрд╕ рдкреНрд░рд╛рд░рдореНрдн/рдорд╛рдЗрдЧреНрд░реЗрд╕рди рд╕рдХреНрд╖рдо рдЧрд░реНрджрдЫ;
    • рдпрд╕рд▓рд╛рдИ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрдиреЗ рд╕рдмреИрднрдиреНрджрд╛ рд╕рдЬрд┐рд▓реЛ рддрд░реАрдХрд╛ рднрдиреЗрдХреЛ рд╢реБрд░реБрд╡рд╛рдд рдкреВрд░рд╛ рднрдПрдкрдЫрд┐ рдорд╛рддреНрд░ HTTP рд╕рд░реНрднрд░рдорд╛ рд╕рдореНрдкрд░реНрдХ рдЧрд░реНрдиреБ рд╣реЛ (рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рдмрд╛рдЯ рдбрд╛рдЯрд╛рдмреЗрд╕ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдЧрд░реНрджреИ рдлреНрд▓рд╛рдИрд╡реЗ рд░ рдпрд╕реНрддреИред); рддреНрдпреЛ рд╣реЛ, рд╕реНрд╡рд╛рд╕реНрдереНрдп рдЬрд╛рдБрдЪ рд╕реНрдерд┐рддрд┐ рдкрд░рд┐рд╡рд░реНрддрди рдЧрд░реНрдиреБрдХреЛ рд╕рдЯреНрдЯрд╛, рдбрд╛рдЯрд╛рдмреЗрд╕ рдорд╛рдЗрдЧреНрд░реЗрд╕рди рдкреВрд░рд╛ рдирднрдПрд╕рдореНрдо рд╡реЗрдм рд╕рд░реНрднрд░ рд╕реБрд░реБ рдирдЧрд░реНрдиреБрд╣реЛрд╕реН*ред

      * рддрдкрд╛рдЗрдБ рдкреЛрдб рдмрд╛рд╣рд┐рд░ init рдХрдиреНрдЯреЗрдирд░рд╣рд░реВрдмрд╛рдЯ рдбрд╛рдЯрд╛рдмреЗрд╕ рдорд╛рдЗрдЧреНрд░реЗрд╕рдирд╣рд░реВ рдкрдирд┐ рдЪрд▓рд╛рдЙрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред рдо рдЕрдЭреИ рдкрдирд┐ рдЖрддреНрдо-рдирд┐рд╣рд┐рдд рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВрдХреЛ рдкреНрд░рд╢рдВрд╕рдХ рд╣реБрдБ, рддреНрдпреЛ рд╣реЛ, рдЬрд╕рдорд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХрдиреНрдЯреЗрдирд░рд▓реЗ рдмрд╛рд╣реНрдп рд╕рдордиреНрд╡рдп рдмрд┐рдирд╛ рдбрд╛рдЯрд╛рдмреЗрд╕рд▓рд╛рдИ рдЗрдЪреНрдЫрд┐рдд рд╕реНрдерд┐рддрд┐рдорд╛ рдХрд╕рд░реА рд▓реНрдпрд╛рдЙрдиреЗ рднрдиреЗрд░ рдЬрд╛рдиреНрджрдЫред

  4. рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реН httpGet рд╕рд╛рдорд╛рдиреНрдп рд╕реНрд╡рд╛рд╕реНрдереНрдп рдЬрд╛рдБрдЪ рдЕрдиреНрддрд┐рдо рдмрд┐рдиреНрджреБрд╣рд░реВ рдорд╛рд░реНрдлрдд рддрддреНрдкрд░рддрд╛ рдЬрд╛рдБрдЪрдХреЛ рд▓рд╛рдЧрд┐ (рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, /health).
  5. рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдЬрд╛рдБрдЪ рдкреНрдпрд╛рд░рд╛рдорд┐рдЯрд░рд╣рд░реВ рдмреБрдЭреНрдиреБрд╣реЛрд╕реН (interval: 10s, timeout: 1s, successThreshold: 1, failureThreshold: 3):
    • рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╡рд┐рдХрд▓реНрдкрд╣рд░реВрдХреЛ рдЕрд░реНрде рдкреЛрдб рдмрдиреНрдиреЗрдЫ рддрдпрд╛рд░ рдЫреИрди рд▓рдЧрднрдЧ 30 рд╕реЗрдХреЗрдиреНрдб рдкрдЫрд┐ (3 рдЕрд╕рдлрд▓ рд╕реНрд╡рд╛рд╕реНрдереНрдп рдЬрд╛рдБрдЪ)ред
  6. рдпрджрд┐ рдЯреЗрдХреНрдиреЛрд▓реЛрдЬреА рд╕реНрдЯреНрдпрд╛рдХ (рдЬрд╕реНрддреИ рдЬрд╛рднрд╛/рд╕реНрдкреНрд░рд┐рдВрдЧ) рд▓реЗ рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫ рднрдиреЗ "рдкреНрд░рд╢рд╛рд╕рдХ" рд╡рд╛ "рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди" рдХреЛ рд▓рд╛рдЧрд┐ рдЫреБрдЯреНрдЯреИ рдкреЛрд░реНрдЯ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реН, рд╕реНрд╡рд╛рд╕реНрдереНрдп рд░ рдореЗрдЯреНрд░рд┐рдХреНрд╕ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдирд▓рд╛рдИ рдирд┐рдпрдорд┐рдд рдЯреНрд░рд╛рдлрд┐рдХрдмрд╛рдЯ рдЕрд▓рдЧ рдЧрд░реНрди:
    • рддрд░ рдмрд┐рдиреНрджреБ 2 рдХреЛ рдмрд╛рд░реЗрдорд╛ рдирдмрд┐рд░реНрд╕рдиреБрд╣реЛрд╕реНред
  7. рдЖрд╡рд╢реНрдпрдХ рднрдПрдорд╛, рдХреНрдпрд╛рд╕рд▓рд╛рдИ рдиреНрдпрд╛рдиреЛ рдЕрдк/рд▓реЛрдб рдЧрд░реНрди рд░ рдХрдиреНрдЯреЗрдирд░ рдиреНрдпрд╛рдиреЛ рдирднрдПрд╕рдореНрдо релрежрей рд╕реНрдЯреЗрдЯрд╕ рдХреЛрдб рдлрд░реНрдХрд╛рдЙрди рд░реЗрдбрд┐рдиреЗрд╕ рдкреНрд░реЛрдм рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫ:

Caveats

  1. рдмрд╛рд╣реНрдп рдирд┐рд░реНрднрд░рддрд╛рд╣рд░реВрдорд╛ рднрд░ рдирдкрд░реНрдиреБрд╣реЛрд╕реН (рдЬрд╕реНрддреИ рдбрд╛рдЯрд╛ рдЧреЛрджрд╛рдорд╣рд░реВ) рддрдпрд╛рд░реА/рдЬреАрд╡рд┐рддрддрд╛ рдкрд░реАрдХреНрд╖рдгрд╣рд░реВ рдЪрд▓рд╛рдЙрдБрджрд╛ - рдпрд╕рд▓реЗ рдХреНрдпрд╛рд╕реНрдХреЗрдбрд┐рдЩ рд╡рд┐рдлрд▓рддрд╛рд╣рд░реВ рдирд┐рдореНрддреНрдпрд╛рдЙрди рд╕рдХреНрдЫ:
    • рдЙрджрд╛рд╣рд░рдгрдХреЛ рд░реВрдкрдорд╛, рдПрдЙрдЯрд╛ Postgres рдбрд╛рдЯрд╛рдмреЗрд╕рдХреЛ рдЖрдзрд╛рд░рдорд╛ 10 рдкреЛрдбрд╣рд░реВ рд╕рд╣рд┐рддрдХреЛ рд╕реНрдЯреЗрдЯрдлреБрд▓ REST рд╕реЗрд╡рд╛ рд▓рд┐рдФрдВ: рдЬрдм рдЪреЗрдХ DB рдорд╛ рдХрд╛рдо рдЧрд░реНрдиреЗ рдЬрдбрд╛рдирдорд╛ рдирд┐рд░реНрднрд░ рд╣реБрдиреНрдЫ, рдиреЗрдЯрд╡рд░реНрдХ/DB рд╕рд╛рдЗрдбрдорд╛ рдврд┐рд▓рд╛рдЗ рднрдПрдорд╛ рд╕рдмреИ 10 рдкреЛрдбрд╣рд░реВ рдЕрд╕рдлрд▓ рд╣реБрди рд╕рдХреНрдЫрдиреН - рд╕рд╛рдорд╛рдиреНрдпрддрдпрд╛ рдпреЛ рд╕рдмреИ рд╕рдорд╛рдкреНрдд рд╣реБрди рд╕рдХреНрдЫ рднрдиреНрджрд╛ рдЦрд░рд╛рдм рд╣реБрдиреНрдЫ;
    • рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджрд┐рдиреБрд╣реЛрд╕реН рдХрд┐ рд╡рд╕рдиреНрдд рдбрд╛рдЯрд╛рд▓реЗ рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд░реВрдкрдорд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рдЬрдбрд╛рди рдЬрд╛рдБрдЪ рдЧрд░реНрджрдЫ*;

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

    • рдпрд╕ рдЕрд░реНрдердорд╛ "рдмрд╛рд╣реНрдп" рдХреЛ рдЕрд░реНрде рдПрдЙрдЯреИ рдПрдкреНрд▓рд┐рдХреЗрд╕рдирдХрд╛ рдЕрдиреНрдп рдкреЛрдбрд╣рд░реВ рдкрдирд┐ рд╣реБрди рд╕рдХреНрдЫ, рддреНрдпреЛ рд╣реЛ, рдХреНрдпрд╛рд╕реНрдХреЗрдбрд┐рдЩ рдХреНрд░реНрдпрд╛рд╕рд╣рд░реВ рд░реЛрдХреНрдирдХреЛ рд▓рд╛рдЧрд┐ рдЬрд╛рдБрдЪ рд╕рдорд╛рди рдХреНрд▓рд╕реНрдЯрд░рдХреЛ рдЕрдиреНрдп рдкреЛрдбрд╣рд░реВрдХреЛ рд╕реНрдерд┐рддрд┐рдорд╛ рдирд┐рд░реНрднрд░ рд╣реБрдиреБ рд╣реБрдБрджреИрди:
      • рдирддрд┐рдЬрд╛рд╣рд░реВ рд╡рд┐рддрд░рд┐рдд рдЕрд╡рд╕реНрдерд╛ рднрдПрдХрд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рднрд┐рдиреНрди рд╣реБрди рд╕рдХреНрдЫрдиреН (рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рдкреЛрдбрд╣рд░реВрдорд╛ рдЗрди-рдореЗрдореЛрд░реА рдХреНрдпрд╛рд╕рд┐рдЩ)ред
  2. рдЬреАрд╡рдиреНрддрддрд╛ рдЬрд╛рдБрдЪ рдкреНрд░рдпреЛрдЧ рдирдЧрд░реНрдиреБрд╣реЛрд╕реН рдкреЛрдбрд╣рд░реВрдХрд╛ рд▓рд╛рдЧрд┐ (рдЕрдкрд╡рд╛рджрд╣рд░реВ рдШрдЯрдирд╛рд╣рд░реВ рд╣реБрдиреН рдЬрдм рддрд┐рдиреАрд╣рд░реВ рд╡рд╛рд╕реНрддрд╡рдореИ рдЖрд╡рд╢реНрдпрдХ рд╣реБрдиреНрдЫрдиреН рд░ рддрдкрд╛рдИрдВ рддрд┐рдиреАрд╣рд░реВрдХреЛ рдкреНрд░рдпреЛрдЧрдХреЛ рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛ рд░ рдкрд░рд┐рдгрд╛рдорд╣рд░реВ рдмрд╛рд░реЗ рдкреВрд░реНрдг рд░реВрдкрдорд╛ рд╕рдЪреЗрдд рд╣реБрдиреБрд╣реБрдиреНрдЫ):
    • рдПрдХ рдЬреАрд╡рдиреНрддрддрд╛ рдЬрд╛рдБрдЪрд▓реЗ рдЭреБрдгреНрдбрд┐рдПрдХреЛ рдХрдиреНрдЯреЗрдирд░рд╣рд░реВ рдкреБрди: рдкреНрд░рд╛рдкреНрддрд┐ рдЧрд░реНрди рдорджреНрджрдд рдЧрд░реНрди рд╕рдХреНрдЫ, рддрд░ рддрдкрд╛рдИрдВрдХреЛ рдЕрдиреБрдкреНрд░рдпреЛрдЧрдорд╛ рдкреВрд░реНрдг рдирд┐рдпрдиреНрддреНрд░рдг рднрдПрдХреЛрд▓реЗ, рдЭреБрдгреНрдбрд┐рдПрдХрд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛рд╣рд░реВ рд░ рдЧрддрд┐рд░реЛрдзрд╣рд░реВ рдЬрд╕реНрддрд╛ рдЪреАрдЬрд╣рд░реВ рдЖрджрд░реНрд╢ рд░реВрдкрдорд╛ рд╣реБрдиреБ рд╣реБрдБрджреИрди: рд╕рдмреИрднрдиреНрджрд╛ рд░рд╛рдореНрд░реЛ рд╡рд┐рдХрд▓реНрдк рднрдиреЗрдХреЛ рдЬрд╛рдирд╛рдЬрд╛рдиреА рдЕрдиреБрдкреНрд░рдпреЛрдЧрд▓рд╛рдИ рдХреНрд░реНрдпрд╛рд╕ рдЧрд░реНрдиреБ рд░ рдпрд╕рд▓рд╛рдИ рдЕрдШрд┐рд▓реНрд▓реЛ рд╕реНрдерд┐рд░ рдЕрд╡рд╕реНрдерд╛рдорд╛ рд▓реНрдпрд╛рдЙрдиреБ рд╣реЛред
    • рдПрдХ рдЕрд╕рдлрд▓ рдЬреАрд╡рдиреНрддрддрд╛ рдЬрд╛рдБрдЪрд▓реЗ рдХрдиреНрдЯреЗрдирд░рд▓рд╛рдИ рдкреБрди: рд╕реБрд░реБ рдЧрд░реНрди рдирд┐рдореНрддреНрдпрд╛рдЙрдиреЗрдЫ, рдЬрд╕рд▓реЗ рдЧрд░реНрджрд╛ рд╕рдореНрднрд╛рд╡рд┐рдд рд░реВрдкрдорд╛ рд▓реЛрдбрд┐рдЩ-рд╕рдореНрдмрдиреНрдзрд┐рдд рддреНрд░реБрдЯрд┐рд╣рд░реВрдХреЛ рдирддрд┐рдЬрд╛ рдмрдврд╛рдЙрдБрдЫ: рдХрдиреНрдЯреЗрдирд░ рдкреБрди: рд╕реБрд░реБ рдЧрд░реНрджрд╛ рдбрд╛рдЙрдирдЯрд╛рдЗрдо (рдХрдореНрддрд┐рдорд╛ рдПрдкреНрд▓рд┐рдХреЗрд╕рди рд╕реНрдЯрд╛рд░реНрдЯрдЕрдкрдХреЛ рдЕрд╡рдзрд┐рдХреЛ рд▓рд╛рдЧрд┐, 30-рд╡рд┐рдЬреЛрдб рд╕реЗрдХреЗрдиреНрдб рднрдиреНрдиреБрд╣реЛрд╕реН), рдирдпрд╛рдБ рддреНрд░реБрдЯрд┐рд╣рд░реВ рдирд┐рдореНрддреНрдпрд╛рдЙрдБрдЫред , рдЕрдиреНрдп рдХрдиреНрдЯреЗрдирд░рд╣рд░реВрдорд╛ рд▓реЛрдб рдмрдвреНрджреИ рд░ рддрд┐рдиреАрд╣рд░реВрдХреЛ рд╡рд┐рдлрд▓рддрд╛рдХреЛ рд╕рдореНрднрд╛рд╡рдирд╛ рдмрдврд╛рдЙрдБрджреИ, рдЖрджрд┐;
    • рдмрд╛рд╣реНрдп рдирд┐рд░реНрднрд░рддрд╛рдХреЛ рд╕рд╛рде рд╕рдВрдпреБрдХреНрдд рдЬреАрд╡рдиреНрддрддрд╛ рдЬрд╛рдБрдЪрд╣рд░реВ рд╕рдмреИрднрдиреНрджрд╛ рдЦрд░рд╛рдм рд╕рдореНрднрд╛рд╡рд┐рдд рд╕рдВрдпреЛрдЬрди рд╣реБрдиреН, рдХреНрдпрд╛рд╕реНрдХреЗрдбрд┐рдЩ рд╡рд┐рдлрд▓рддрд╛рд╣рд░реВрд▓рд╛рдИ рдзрдореНрдХреА рджрд┐рдиреНрдЫ: рдбрд╛рдЯрд╛рдмреЗрд╕ рдкрдХреНрд╖рдорд╛ рдереЛрд░реИ рдврд┐рд▓рд╛рдЗрд▓реЗ рддрдкрд╛рдЗрдБрдХрд╛ рд╕рдмреИ рдХрдиреНрдЯреЗрдирд░рд╣рд░реВ рдкреБрди: рд╕реБрд░реБ рдЧрд░реНрди рдиреЗрддреГрддреНрд╡ рдЧрд░реНрдиреЗрдЫ!
  3. рдЬреАрд╡рдиреНрддрддрд╛ рд░ рддрддреНрдкрд░рддрд╛ рдЬрд╛рдБрдЪрдХреЛ рдкреНрдпрд╛рд░рд╛рдорд┐рдЯрд░рд╣рд░реВ рдлрд░рдХ рд╣реБрдиреБрдкрд░реНрдЫ:
    • рддрдкрд╛рдИрдВ рд╕рдорд╛рди рд╕реНрд╡рд╛рд╕реНрдереНрдп рдЬрд╛рдБрдЪрдХреЛ рд╕рд╛рде рдПрдХ рдЬреАрд╡рдиреНрддрддрд╛ рдЬрд╛рдБрдЪ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рддрд░ рдЙрдЪреНрдЪ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдереНрд░реЗрд╕рд╣реЛрд▓реНрдб (failureThreshold), рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рд╕реНрдерд┐рддрд┐ рдЕрд╕рд╛рдЗрди рдЧрд░реНрдиреБрд╣реЛрд╕реН рддрдпрд╛рд░ рдЫреИрди 3 рдкреНрд░рдпрд╛рд╕ рдкрдЫрд┐ рд░ 10 рдкреНрд░рдпрд╛рд╕ рдкрдЫрд┐ liveness рдЬрд╛рдБрдЪ рдЕрд╕рдлрд▓ рднрдПрдХреЛ рд╡рд┐рдЪрд╛рд░ рдЧрд░реНрдиреБрд╣реЛрд╕реН;
  4. Exec рдЪреЗрдХрд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдирдЧрд░реНрдиреБрд╣реЛрд╕реН, рдХрд┐рдирдХрд┐ рддрд┐рдиреАрд╣рд░реВ рдЬреНрдЮрд╛рдд рд╕рдорд╕реНрдпрд╛рд╣рд░реВрд╕рдБрдЧ рд╕рдореНрдмрдиреНрдзрд┐рдд рдЫрдиреН рдЬреБрди рдЬреЛрдореНрдмреА рдкреНрд░рдХреНрд░рд┐рдпрд╛рд╣рд░реВрдХреЛ рдЙрдкрд╕реНрдерд┐рддрд┐рдорд╛ рдиреЗрддреГрддреНрд╡ рдЧрд░реНрджрдЫ:

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

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

Kubernetes рдорд╛ Liveness рдЬрд╛рдВрдЪ рдЦрддрд░рдирд╛рдХ рд╣реБрди рд╕рдХреНрдЫ

рд╡рд┐рд╖рдп рдорд╛ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рд╛рдордЧреНрд░реА

1-2019-09 рджреЗрдЦрд┐ рдЕрдкрдбреЗрдЯ рдирдореНрдмрд░ 29

рдбрд╛рдЯрд╛рдмреЗрд╕ рдорд╛рдЗрдЧреНрд░реЗрд╕рдирдХрд╛ рд▓рд╛рдЧрд┐ init рдХрдиреНрдЯреЗрдирд░рд╣рд░реВрдХреЛ рдмрд╛рд░реЗрдорд╛: рдлреБрдЯрдиреЛрдЯ рдердкрд┐рдпреЛред

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

рдмреНрд░рд╛рдпрдирд▓реЗ рд░рд╛рдореНрд░реЛрд╕рдБрдЧ рд░рд╛рдЦреЗ: "рд▓рд╛рдЗрднрдиреЗрд╕ рдкреНрд░реЛрдмрд┐рдЩ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реН рдЬрдм рддрдкрд╛рдИрд▓рд╛рдИ рдареНрдпрд╛рдХреНрдХреИ рдХреЗ рдерд╛рд╣рд╛ рдЫ рдЧрд░реНрди рдХреЛ рд▓рд╛рдЧреА рд╕рдмреИ рднрдиреНрджрд╛ рд░рд╛рдореНрд░реЛ рдХреБрд░рд╛ рдЖрд╡реЗрджрди рдорд╛рд░реНрди рдЫ"(рдлреЗрд░рд┐, рдЯрд╛рдврд╛ рдирдЬрд╛рдиреБрд╣реЛрд╕реН)ред

Kubernetes рдорд╛ Liveness рдЬрд╛рдВрдЪ рдЦрддрд░рдирд╛рдХ рд╣реБрди рд╕рдХреНрдЫ

2-2019-09 рджреЗрдЦрд┐ рдЕрдкрдбреЗрдЯ рдирдореНрдмрд░ 29

рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБ рдЕрдШрд┐ рдХрд╛рдЧрдЬрд╛рдд рдкрдвреНрдиреЗ рд╕рдиреНрджрд░реНрднрдорд╛: рдореИрд▓реЗ рд╕рдореНрдмрдиреНрдзрд┐рдд рдЕрдиреБрд░реЛрдз рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реЗрдВ (рд╕реБрд╡рд┐рдзрд╛ рдЕрдиреБрд░реЛрдз) рд▓рд╛рдИрдиреЗрд╕ рдкреНрд░реЛрдмрд╣рд░реВрдХреЛ рдмрд╛рд░реЗрдорд╛ рдХрд╛рдЧрдЬрд╛рддрд╣рд░реВ рдердкреНрдиред

рдЕрдиреБрд╡рд╛рджрдХрдмрд╛рдЯ PS

рд╣рд╛рдореНрд░реЛ рдмреНрд▓рдЧрдорд╛ рдкрдирд┐ рдкрдвреНрдиреБрд╣реЛрд╕реН:

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

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