рдкреНрд░рдорд╛рдгрдкрддреНрд░-рдкреНрд░рдмрдиреНрдзрдХ 1.0 рдЬрд╛рд░реА рдЧрд░рд┐рдпреЛ

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

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

рдХреЗ рд╣рд╛рдореА рдкрддреНрдпрд╛рдЙрдиреЗ?

рдкреНрд░рдорд╛рдгрдкрддреНрд░-рдкреНрд░рдмрдиреНрдзрдХ 1.0 рдЬрд╛рд░реА рдЧрд░рд┐рдпреЛ

Cert-manager рдореВрд▓ Kubernetes рдкреНрд░рдорд╛рдгрдкрддреНрд░ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдирд┐рдпрдиреНрддреНрд░рдХ рд╣реЛред рдпрд╕рд▓рд╛рдИ рд╡рд┐рднрд┐рдиреНрди рд╕реНрд░реЛрддрд╣рд░реВрдмрд╛рдЯ рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╣рд░реВ рдЬрд╛рд░реА рдЧрд░реНрди рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫ: Let's Encrypt, HashiCorp Vault, Venafi, рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рд░ рд╕реНрд╡-рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдХреБрдЮреНрдЬреА рдЬреЛрдбреАрд╣рд░реВред рдпрд╕рд▓реЗ рддрдкрд╛рдЗрдБрд▓рд╛рдИ рдореНрдпрд╛рдж рд╕рдорд╛рдкреНрддрд┐ рдорд┐рддрд┐ рджреНрд╡рд╛рд░рд╛ рдХреБрдЮреНрдЬреАрд╣рд░реВ рдЕрдк-рдЯреБ-рдбреЗрдЯ рд░рд╛рдЦреНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫ, рд░ рддрд┐рдиреАрд╣рд░реВрдХреЛ рдореНрдпрд╛рдж рд╕рдорд╛рдкреНрдд рд╣реБрдиреБ рдЕрдШрд┐ рдирд┐рд╢реНрдЪрд┐рдд рд╕рдордпрдорд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдкрдорд╛ рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╣рд░реВ рдирд╡реАрдХрд░рдг рдЧрд░реНрдиреЗ рдкреНрд░рдпрд╛рд╕ рдЧрд░реНрджрдЫред Cert-manager kube-lego рдорд╛ рдЖрдзрд╛рд░рд┐рдд рдЫ рд░ kube-cert-manager рдЬрд╕реНрддрд╛ рдЕрдиреНрдп рд╕рдорд╛рди рдкрд░рд┐рдпреЛрдЬрдирд╛рд╣рд░реВрдмрд╛рдЯ рдХреЗрд╣реА рдЪрд╛рд▓рд╣рд░реВ рдкрдирд┐ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрдХреЛ рдЫред

рд░рд┐рд▓рд┐рдЬ рдиреЛрдЯрд╣рд░реВ

рд╕рдВрд╕реНрдХрд░рдг рез.реж рдХреЛ рд╕рд╛рде, рд╣рд╛рдореАрд▓реЗ рдкреНрд░рдорд╛рдгрдкрддреНрд░-рдкреНрд░рдмрдиреНрдзрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛рдХреЛ рд╡рд┐рдХрд╛рд╕рдХреЛ рддреАрди рд╡рд░реНрд╖рдХреЛ рд▓рд╛рдЧрд┐ рд╡рд┐рд╢реНрд╡рд╛рд╕рдХреЛ рдЪрд┐рдиреНрд╣ рд░рд╛рдЦреНрдпреМрдВред рдпрд╕ рд╕рдордпрдорд╛, рдпрд╕рд▓реЗ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд░ рд╕реНрдерд┐рд░рддрд╛рдорд╛ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд░реВрдкрдорд╛ рд╡рд┐рдХрд╕рд┐рдд рднрдПрдХреЛ рдЫ, рддрд░ рд╕рдмреИ рднрдиреНрджрд╛ рдзреЗрд░реИ рд╕рдореБрджрд╛рдпрдорд╛ред рдЖрдЬ, рд╣рд╛рдореА рдзреЗрд░реИ рдорд╛рдирд┐рд╕рд╣рд░реВрд▓реЗ рдпрд╕рд▓рд╛рдИ рдЖрдлреНрдиреЛ Kubernetes рдХреНрд▓рд╕реНрдЯрд░рд╣рд░реВ рд╕реБрд░рдХреНрд╖рд┐рдд рдЧрд░реНрдирдХрд╛ рд╕рд╛рдереИ рдЗрдХреЛрд╕рд┐рд╕реНрдЯрдордХрд╛ рд╡рд┐рднрд┐рдиреНрди рднрд╛рдЧрд╣рд░реВрдорд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рд░рд╣реЗрдХреЛ рджреЗрдЦреНрдЫреМрдВред рдкрдЫрд┐рд▓реНрд▓реЛ 1.0 рд░рд┐рд▓реАрдЬрд╣рд░реВрдорд╛ рдзреЗрд░реИ рдмрдЧрд╣рд░реВ рдлрд┐рдХреНрд╕ рдЧрд░рд┐рдПрдХреЛ рдЫред рд░ рдХреЗ рдЯреБрдЯреНрдиреБ рдкрд░реНрдЫ рддреНрдпреЛ рдЯреБрдЯреНрдпреЛред API рд╕рдБрдЧ рдХрд╛рдо рдЧрд░реНрди рдзреЗрд░реИ рднреНрд░рдордгрд╣рд░реВрд▓реЗ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрд╕рдБрдЧ рдпрд╕рдХреЛ рдЕрдиреНрддрд░рдХреНрд░рд┐рдпрд╛рдорд╛ рд╕реБрдзрд╛рд░ рдЧрд░реЗрдХреЛ рдЫред рд╣рд╛рдореАрд▓реЗ 16 рд╕рд╛рдореБрджрд╛рдпрд┐рдХ рд╕рджрд╕реНрдпрд╣рд░реВрдмрд╛рдЯ рдердк рдкреБрд▓ рдЕрдиреБрд░реЛрдзрд╣рд░реВрдХреЛ рд╕рд╛рде GitHub рдорд╛ 1500 рдореБрджреНрджрд╛рд╣рд░реВ рд╕рдорд╛рдзрд╛рди рдЧрд░реЗрдХрд╛ рдЫреМрдВред

рез.реж рдХреЛ рд░рд┐рд▓реАрдЬ рд╕рдВрдЧ, рд╣рд╛рдореА рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд░реВрдкрдорд╛ рдШреЛрд╖рдгрд╛ рдЧрд░реНрдЫреМрдВ рдХрд┐ рдкреНрд░рдорд╛рдгрдкрддреНрд░-рдкреНрд░рдмрдиреНрдзрдХ рдПрдХ рдкрд░рд┐рдкрдХреНрд╡ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╣реЛред рд╣рд╛рдореА рд╣рд╛рдореНрд░реЛ API рд╕рдВрдЧрдд рд░рд╛рдЦреНрдиреЗ рд╡рд╛рдЪрд╛ рдкрдирд┐ рдЧрд░реНрдЫреМрдВ v1.

рд╣рд╛рдореАрд▓рд╛рдИ рдпреА рддреАрди рд╡рд░реНрд╖рдорд╛ рдкреНрд░рдорд╛рдгрдкрддреНрд░-рдкреНрд░рдмрдиреНрдзрдХ рдмрдирд╛рдЙрди рдорджреНрджрдд рдЧрд░реНрдиреЗ рд╕рдмреИрд▓рд╛рдИ рдзреЗрд░реИ рдзреЗрд░реИ рдзрдиреНрдпрд╡рд╛рдж! рд╕рдВрд╕реНрдХрд░рдг 1.0 рдЖрдЙрди рдзреЗрд░реИ рдареВрд▓рд╛ рдЪреАрдЬрд╣рд░реВ рдордзреНрдпреЗ рдкрд╣рд┐рд▓реЛ рд╣реБрди рджрд┐рдиреБрд╣реЛрд╕реНред

рд░рд┐рд▓реАрдЬ 1.0 рдзреЗрд░реИ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдХреНрд╖реЗрддреНрд░рд╣рд░реБ рд╕рдВрдЧ рдПрдХ рд╕реНрдерд┐рд░ рд░рд┐рд▓реАрдЬ рдЫ:

  • v1 API;

  • рдЯреЛрд▓реА kubectl cert-manager status, рд╕рдорд╕реНрдпрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рд╕рдВрдЧ рдорджреНрджрдд рдЧрд░реНрди;

  • рдирд╡реАрдирддрдо рд╕реНрдерд┐рд░ Kubernetes APIs рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджреИ;

  • рд╕реБрдзрд╛рд░рд┐рдПрдХреЛ рд▓рдЧрд┐рдЩ;

  • ACME рд╕реБрдзрд╛рд░рд╣рд░реВред

рдЕрдкрдЧреНрд░реЗрдб рдЧрд░реНрдиреБ рдЕрдШрд┐ рдЕрдкрдЧреНрд░реЗрдб рдиреЛрдЯрд╣рд░реВ рдкрдвреНрди рдирд┐рд╢реНрдЪрд┐рдд рд╣реБрдиреБрд╣реЛрд╕реНред

рдПрдкреАрдЖрдИ v1

рд╕рдВрд╕реНрдХрд░рдг v0.16 рд▓реЗ API рд╕рдБрдЧ рдХрд╛рдо рдЧрд░реНрдпреЛ v1beta1ред рдпрд╕рд▓реЗ рдХреЗрд╣реА рд╕рдВрд░рдЪрдирд╛рддреНрдордХ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ рдердкреНрдпреЛ рд░ рдПрдкреАрдЖрдИ рдХреНрд╖реЗрддреНрд░ рдХрд╛рдЧрдЬрд╛рддрдорд╛ рдкрдирд┐ рд╕реБрдзрд╛рд░ рдЧрд░реНрдпреЛред рд╕рдВрд╕реНрдХрд░рдг 1.0 рдпрд╕рдорд╛ API рдХреЛ рд╕рд╛рде рдмрдирд╛рдЙрдБрдЫ v1ред рдпреЛ API рд╣рд╛рдореНрд░реЛ рдкрд╣рд┐рд▓реЛ рд╕реНрдерд┐рд░ рд╣реЛ, рдПрдХреИ рд╕рдордпрдорд╛ рд╣рд╛рдореАрд▓реЗ рдкрд╣рд┐рд▓реЗ рдиреИ рдЕрдиреБрдХреВрд▓рддрд╛ рдЧреНрдпрд╛рд░реЗрдиреНрдЯреАрд╣рд░реВ рджрд┐рдПрдХрд╛ рдЫреМрдВ, рддрд░ API рд╕рдВрдЧ v1 рд╣рд╛рдореА рдЖрдЙрдиреЗ рд╡рд░реНрд╖рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдЕрдиреБрдХреВрд▓рддрд╛ рдХрд╛рдпрдо рд░рд╛рдЦреНрди рд╡рд╛рдЪрд╛ рдЧрд░реНрдЫреМрдВред

рдЧрд░рд┐рдПрдХрд╛ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ (рдиреЛрдЯ: рд╣рд╛рдореНрд░рд╛ рд░реВрдкрд╛рдиреНрддрд░рдг рдЙрдкрдХрд░рдгрд╣рд░реВрд▓реЗ рддрдкрд╛рдИрдВрдХреЛ рд▓рд╛рдЧрд┐ рд╕рдмреИ рдХреБрд░рд╛рдХреЛ рдЦреНрдпрд╛рд▓ рд░рд╛рдЦреНрдЫрдиреН):

рдкреНрд░рдорд╛рдгрдкрддреНрд░:

  • emailSANs рдЕрд╣рд┐рд▓реЗ рдмреЛрд▓рд╛рдЗрдПрдХреЛ рдЫ emailAddresses

  • uriSANs - uris

рдпреА рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВрд▓реЗ рдЕрдиреНрдп SAN рд╕рдБрдЧ рдЕрдиреБрдХреВрд▓рддрд╛ рдердкреНрдЫрдиреН (рд╡рд┐рд╖рдп alt рдирд╛рдорд╣рд░реВ, рд▓рдЧрднрдЧред рдЕрдиреБрд╡рд╛рджрдХ), рд╕рд╛рдереИ Go API рд╕рдБрдЧред рд╣рд╛рдореА рд╣рд╛рдореНрд░реЛ API рдмрд╛рдЯ рдпреЛ рд╢рдмреНрдж рд╣рдЯрд╛рдЗрд░рд╣реЗрдХрд╛ рдЫреМрдВред

рдЕрджреНрдпрд╛рд╡рдзрд┐рдХ рдЧрд░реНрдиреБрд╣реЛрд╕реН

рдпрджрд┐ рддрдкрд╛рдЗрдБ Kubernetes 1.16+ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджреИ рд╣реБрдиреБрд╣реБрдиреНрдЫ рднрдиреЗ, рд╡реЗрдмрд╣реБрдХрд╣рд░реВ рд░реВрдкрд╛рдиреНрддрд░рдг рдЧрд░реНрдирд╛рд▓реЗ рддрдкрд╛рдЗрдБрд▓рд╛рдИ API рд╕рдВрд╕реНрдХрд░рдгрд╣рд░реВрд╕рдБрдЧ рдПрдХреИрд╕рд╛рде рд░ рдирд┐рд░реНрдмрд╛рдз рд░реВрдкрдорд╛ рдХрд╛рдо рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреЗрдЫред v1alpha2, v1alpha3, v1beta1 ╨╕ v1ред рдпреАрд╕рдБрдЧ, рддрдкрд╛рдЗрдБ рддрдкрд╛рдЗрдБрдХреЛ рдкреБрд░рд╛рдиреЛ рд╕реНрд░реЛрддрд╣рд░реВ рдкрд░рд┐рд╡рд░реНрддрди рд╡рд╛ рдкреБрди: рдкреНрд░рдпреЛрдЧ рдирдЧрд░реА API рдХреЛ рдирдпрд╛рдБ рд╕рдВрд╕реНрдХрд░рдг рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХреНрд╖рдо рд╣реБрдиреБрд╣реБрдиреЗрдЫред рд╣рд╛рдореА рддрдкрд╛рдИрдХреЛ manifests рд▓рд╛рдИ API рдорд╛ рд╕реНрддрд░рд╡реГрджреНрдзрд┐ рдЧрд░реНрди рд╕рд┐рдлрд╛рд░рд┐рд╕ рдЧрд░реНрдЫреМрдВ v1, рдЕрдШрд┐рд▓реНрд▓реЛ рд╕рдВрд╕реНрдХрд░рдгрд╣рд░реВ рдЪрд╛рдБрдбреИ рдиреИ рдмрд╣рд┐рд╖реНрдХрд╛рд░ рдЧрд░рд┐рдиреЗрдЫред рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВ legacy cert-manager рдХреЛ рд╕рдВрд╕реНрдХрд░рдгрд╣рд░реВрдорд╛ рдЕрдЭреИ рдкрдирд┐ рдкрд╣реБрдБрдЪ рд╣реБрдиреЗрдЫ v1, рдЕрдкрдЧреНрд░реЗрдб рдЪрд░рдгрд╣рд░реВ рдлреЗрд▓рд╛ рдкрд╛рд░реНрди рд╕рдХрд┐рдиреНрдЫ рдпрд╣рд╛рдБ.

kubectl cert-manager рд╕реНрдерд┐рддрд┐ рдЖрджреЗрд╢

рд╣рд╛рдореНрд░реЛ рд╡рд┐рд╕реНрддрд╛рд░ рдорд╛ рдирдпрд╛рдБ рд╕реБрдзрд╛рд░ рд╕рдВрдЧ kubectl рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдирджрд┐рдиреЗ рд╕рдорд╕реНрдпрд╛рдХреЛ рдЫрд╛рдирдмрд┐рди рдЧрд░реНрди рд╕рдЬрд┐рд▓реЛ рднрдПрдХреЛ рдЫ ред kubectl cert-manager status рдЕрдм рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╣рд░реВрд╕рдБрдЧ рдХреЗ рднрдЗрд░рд╣реЗрдХреЛ рдЫ рднрдиреНрдиреЗ рдмрд╛рд░реЗ рдзреЗрд░реИ рдЬрд╛рдирдХрд╛рд░реА рджрд┐рдиреНрдЫ рд░ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЬрд╛рд░реА рдЧрд░реНрдиреЗ рдЪрд░рдг рдкрдирд┐ рджреЗрдЦрд╛рдЙрдБрджрдЫред

рд╡рд┐рд╕реНрддрд╛рд░ рд╕реНрдерд╛рдкрдирд╛ рдкрдЫрд┐, рддрдкрд╛рдИрдВ рдЪрд▓рд╛рдЙрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ kubectl cert-manager status certificate <╨╕╨╝╤П-╤Б╨╡╤А╤В╨╕╤Д╨╕╨║╨░╤В╨░>, рдЬрд╕рд▓реЗ ACME рдмрд╛рдЯ рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджрд╛ рджрд┐рдЗрдПрдХреЛ рдирд╛рдо рд░ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЕрдиреБрд░реЛрдз, рдЧреЛрдкреНрдп, рдЬрд╛рд░реАрдХрд░реНрддрд╛, рд░ рдЕрд░реНрдбрд░ рд░ рдЪреБрдиреМрддреАрд╣рд░реВ рдЬрд╕реНрддрд╛ рдХреБрдиреИ рдкрдирд┐ рд╕рдореНрдмрдиреНрдзрд┐рдд рд╕реНрд░реЛрддрд╣рд░реВ рд╕рд╣рд┐рддрдХреЛ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЦреЛрдЬреНрдиреЗрдЫред

рдЕрдЭреИ рддрдпрд╛рд░ рдирднрдПрдХреЛ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдбрд┐рдмрдЧ рдЧрд░реНрдиреЗ рдЙрджрд╛рд╣рд░рдг:

$ kubectl cert-manager status certificate acme-certificate

Name: acme-certificate
Namespace: default
Created at: 2020-08-21T16:44:13+02:00
Conditions:
  Ready: False, Reason: DoesNotExist, Message: Issuing certificate as Secret does not exist
  Issuing: True, Reason: DoesNotExist, Message: Issuing certificate as Secret does not exist
DNS Names:
- example.com
Events:
  Type    Reason     Age   From          Message
  ----    ------     ----  ----          -------
  Normal  Issuing    18m   cert-manager  Issuing certificate as Secret does not exist
  Normal  Generated  18m   cert-manager  Stored new private key in temporary Secret resource "acme-certificate-tr8b2"
  Normal  Requested  18m   cert-manager  Created new CertificateRequest resource "acme-certificate-qp5dm"
Issuer:
  Name: acme-issuer
  Kind: Issuer
  Conditions:
    Ready: True, Reason: ACMEAccountRegistered, Message: The ACME account was registered with the ACME server
error when finding Secret "acme-tls": secrets "acme-tls" not found
Not Before: <none>
Not After: <none>
Renewal Time: <none>
CertificateRequest:
  Name: acme-certificate-qp5dm
  Namespace: default
  Conditions:
    Ready: False, Reason: Pending, Message: Waiting on certificate issuance from order default/acme-certificate-qp5dm-1319513028: "pending"
  Events:
    Type    Reason        Age   From          Message
    ----    ------        ----  ----          -------
    Normal  OrderCreated  18m   cert-manager  Created Order resource default/acme-certificate-qp5dm-1319513028
Order:
  Name: acme-certificate-qp5dm-1319513028
  State: pending, Reason:
  Authorizations:
    URL: https://acme-staging-v02.api.letsencrypt.org/acme/authz-v3/97777571, Identifier: example.com, Initial State: pending, Wildcard: false
Challenges:
- Name: acme-certificate-qp5dm-1319513028-1825664779, Type: DNS-01, Token: J-lOZ39yNDQLZTtP_ZyrYojDqjutMAJOxCL1AkOEZWw, Key: U_W3gGV2KWgIUonlO2me3rvvEOTrfTb-L5s0V1TJMCw, State: pending, Reason: error getting clouddns service account: secret "clouddns-accoun" not found, Processing: true, Presented: false

рдЖрджреЗрд╢рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдкреНрд░рдорд╛рдгрдкрддреНрд░рдХреЛ рд╕рд╛рдордЧреНрд░реАрд╣рд░реВрдХреЛ рдмрд╛рд░реЗрдорд╛ рдердк рдЬрд╛рдиреНрди рдорджреНрджрдд рдЧрд░реНрди рд╕рдХреНрдЫред Letsencrypt рджреНрд╡рд╛рд░рд╛ рдЬрд╛рд░реА рдкреНрд░рдорд╛рдгрдкрддреНрд░рдХреЛ рд▓рд╛рдЧрд┐ рд╡рд┐рд╕реНрддреГрдд рдЙрджрд╛рд╣рд░рдг:

$ kubectl cert-manager status certificate example
Name: example
[...]
Secret:
  Name: example
  Issuer Country: US
  Issuer Organisation: Let's Encrypt
  Issuer Common Name: Let's Encrypt Authority X3
  Key Usage: Digital Signature, Key Encipherment
  Extended Key Usages: Server Authentication, Client Authentication
  Public Key Algorithm: RSA
  Signature Algorithm: SHA256-RSA
  Subject Key ID: 65081d98a9870764590829b88c53240571997862
  Authority Key ID: a84a6a63047dddbae6d139b7a64565eff3a8eca1
  Serial Number: 0462ffaa887ea17797e0057ca81d7ba2a6fb
  Events:  <none>
Not Before: 2020-06-02T04:29:56+02:00
Not After: 2020-08-31T04:29:56+02:00
Renewal Time: 2020-08-01T04:29:56+02:00
[...]

рдирд╡реАрдирддрдо рд╕реНрдерд┐рд░ Kubernetes APIs рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджреИ

Cert-manager Kubernetes CRDs рд▓рд╛рдЧреВ рдЧрд░реНрдиреЗ рдкрд╣рд┐рд▓реЛ рдордзреНрдпреЗ рдПрдХ рдерд┐рдПред рдпреЛ, рд░ 1.11 рд╕рдореНрдо Kubernetes рд╕рдВрд╕реНрдХрд░рдгрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд╣рд╛рдореНрд░реЛ рд╕рдорд░реНрдерди, рдпрд╕рдХреЛ рдорддрд▓рдм рд╣рд╛рдореАрд▓реЗ рд╡рд┐рд░рд╛рд╕рддрд▓рд╛рдИ рд╕рдорд░реНрдерди рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫред apiextensions.k8s.io/v1beta1 рд╣рд╛рдореНрд░реЛ CRD рдХреЛ рд▓рд╛рдЧрд┐ рдкрдирд┐ admissionregistration.k8s.io/v1beta1 рд╣рд╛рдореНрд░реЛ рд╡реЗрдмрд╣реБрдХрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ред рддрд┐рдиреАрд╣рд░реВ рдЕрд╣рд┐рд▓реЗ рдмрд╣рд┐рд╖реНрдХреГрдд рдЫрдиреН рд░ рд╕рдВрд╕реНрдХрд░рдг 1.22 рдмрд╛рдЯ Kubernetes рдорд╛ рд╣рдЯрд╛рдЗрдиреЗрдЫред рд╣рд╛рдореНрд░реЛ 1.0 рдХреЛ рд╕рд╛рде рд╣рд╛рдореА рдЕрдм рдкреВрд░реНрдг рд╕рдорд░реНрдерди рдкреНрд░рд╕реНрддрд╛рд╡ рдЧрд░реНрджрдЫреМрдВ apiextensions.k8s.io/v1 ╨╕ admissionregistration.k8s.io/v1 Kubernetes 1.16 рдХреЛ рд▓рд╛рдЧрд┐ (рдЬрд╣рд╛рдБ рддрд┐рдиреАрд╣рд░реВ рдердкрд┐рдПрдХрд╛ рдерд┐рдП) рд░ рдирдпрд╛рдБред рдЕрдШрд┐рд▓реНрд▓реЛ рд╕рдВрд╕реНрдХрд░рдгрдХрд╛ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрдХрд╛ рд▓рд╛рдЧрд┐, рд╣рд╛рдореА рд╕рдорд░реНрдерди рдкреНрд░рд╕реНрддрд╛рд╡ рдЧрд░реНрди рдЬрд╛рд░реА рд░рд╛рдЦреНрдЫреМрдВ v1beta1 рд╣рд╛рдореНрд░реЛ рдорд╛ legacy рд╕рдВрд╕реНрдХрд░рдгрд╣рд░реВред

рд╕реБрдзрд╛рд░рд┐рдПрдХреЛ рд▓рдЧрд┐рдЩ

рдпрд╕ рд╡рд┐рдореЛрдЪрдирдорд╛, рд╣рд╛рдореАрд▓реЗ рд▓рдЧрд┐рдЩ рд▓рд╛рдЗрдмреНрд░реЗрд░реАрд▓рд╛рдИ рдЕрджреНрдпрд╛рд╡рдзрд┐рдХ рдЧрд░реЗрдХрд╛ рдЫреМрдВ klog/v2, Kubernetes 1.19 рдорд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдпреЛред рд╣рд╛рдореАрд▓реЗ рд▓реЗрдЦреНрдиреЗ рдкреНрд░рддреНрдпреЗрдХ рдЬрд░реНрдирд▓рд▓рд╛рдИ рдЙрдкрдпреБрдХреНрдд рд╕реНрддрд░ рддреЛрдХрд┐рдПрдХреЛ рдЫ рднрдиреА рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдЧрд░реНрди рд╣рд╛рдореА рд╕рдореАрдХреНрд╖рд╛ рдкрдирд┐ рдЧрд░реНрдЫреМрдВред рд╣рд╛рдореА рдпрд╕рдмрд╛рдЯ рдирд┐рд░реНрджреЗрд╢рд┐рдд рднрдпреМрдВ Kubernetes рдмрд╛рдЯ рдирд┐рд░реНрджреЗрд╢рдиред рддреНрдпрд╣рд╛рдБ рдкрд╛рдБрдЪ (рд╡рд╛рд╕реНрддрд╡рдорд╛ рдЫ, рд▓рдЧрднрдЧред рдЕрдиреБрд╡рд╛рджрдХ) рд▓рдЧрд┐рдЩ рд╕реНрддрд░рд╣рд░реВ рджреЗрдЦрд┐ рд╕реБрд░реБ рд╣реБрдиреНрдЫ Error (рд╕реНрддрд░ реж), рдЬрд╕рд▓реЗ рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рддреНрд░реБрдЯрд┐рд╣рд░реВ рдорд╛рддреНрд░ рдЫрд╛рдкреНрдЫ, рд░ рд╕рдорд╛рдкреНрдд рд╣реБрдиреНрдЫ Trace (рд╕реНрддрд░ рел) рдЬрд╕рд▓реЗ рддрдкрд╛рдИрд▓рд╛рдИ рдХреЗ рднрдЗрд░рд╣реЗрдХреЛ рдЫ рднрдиреНрдиреЗ рдХреБрд░рд╛ рдЬрд╛рдиреНрди рдорджреНрджрдд рдЧрд░реНрдиреЗрдЫред рдпрд╕ рдкрд░рд┐рд╡рд░реНрддрдирдХреЛ рд╕рд╛рде, рд╣рд╛рдореАрд▓реЗ рд▓рдЧрд╣рд░реВрдХреЛ рд╕рдВрдЦреНрдпрд╛ рдШрдЯрд╛рдПрдХрд╛ рдЫреМрдВ рдпрджрд┐ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдкреНрд░рдорд╛рдгрдкрддреНрд░-рдкреНрд░рдмрдиреНрдзрдХ рдЪрд▓рд╛рдЙрдБрджрд╛ рдбрд┐рдмрдЧ рдЬрд╛рдирдХрд╛рд░реА рдЖрд╡рд╢реНрдпрдХ рдкрд░реНрджреИрдиред

рд╕реБрдЭрд╛рд╡: рдкреНрд░рдорд╛рдгрдкрддреНрд░-рдкреНрд░рдмрдиреНрдзрдХ рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд░реВрдкрдорд╛ рд╕реНрддрд░ 2 рдорд╛ рдЪрд▓реНрдЫ (Info), рддрдкрд╛рдЗрдБ рдпрд╕рд▓рд╛рдИ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдУрднрд░рд░рд╛рдЗрдб рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ global.logLevel Helmchart рдорд╛ред

рдиреЛрдЯ: рд╕рдорд╕реНрдпрд╛ рдирд┐рд╡рд╛рд░рдг рдЧрд░реНрджрд╛ рд▓рдЧрд╣рд░реВ рд╣реЗрд░реНрдиреБ рдЕрдиреНрддрд┐рдо рдЙрдкрд╛рдп рд╣реЛред рдердк рдЬрд╛рдирдХрд╛рд░реАрдХреЛ рд▓рд╛рдЧрд┐ рд╣рд╛рдореНрд░реЛ рдЬрд╛рдБрдЪ рдЧрд░реНрдиреБрд╣реЛрд╕реН рдиреЗрддреГрддреНрд╡.

рд╕рдореНрдкрд╛рджрдХрдХреЛ n.b.: Kubernetes рдХреЛ рд╣реБрдб рдЕрдиреНрддрд░реНрдЧрдд рдпреЛ рд╕рдмреИ рдХрд╕рд░реА рдХрд╛рдо рдЧрд░реНрджрдЫ рднрдиреНрдиреЗ рдмрд╛рд░реЗ рдердк рдЬрд╛рдиреНрдирдХреЛ рд▓рд╛рдЧрд┐, рдЕрднреНрдпрд╛рд╕ рдЧрд░реНрдиреЗ рд╢рд┐рдХреНрд╖рдХрд╣рд░реВрдмрд╛рдЯ рдмрд╣реБрдореВрд▓реНрдп рд╕рд▓реНрд▓рд╛рд╣, рд╕рд╛рдереИ рдЧреБрдгрд╕реНрддрд░реАрдп рдкреНрд░рд╛рд╡рд┐рдзрд┐рдХ рд╕рд╣рдпреЛрдЧ рдорджреНрджрдд рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрдиреБрд╣реЛрд╕реН, рддрдкрд╛рдЗрдБ рдЕрдирд▓рд╛рдЗрди рдЧрд╣рдирд╣рд░реВрдорд╛ рднрд╛рдЧ рд▓рд┐рди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред Kubernetes рдЖрдзрд╛рд░, рдЬреБрди рд╕реЗрдкреНрдЯреЗрдореНрдмрд░ 28-30 рдорд╛ рдЖрдпреЛрдЬрд┐рдд рд╣реБрдиреЗрдЫ, рд░ Kubernetes рдореЗрдЧрд╛рдЬреБрди рдЕрдХреНрдЯреЛрдмрд░ 14-16 рд╕рдореНрдо рд╣реБрдиреЗрдЫред

ACME рд╕реБрдзрд╛рд░рд╣рд░реВ

рдкреНрд░рдорд╛рдгрдкрддреНрд░-рдкреНрд░рдмрдиреНрдзрдХрдХреЛ рд╕рдмреИрднрдиреНрджрд╛ рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рдпреЛрдЧ ACME рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ Let's Encrypt рдмрд╛рдЯ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЬрд╛рд░реА рдЧрд░реНрди рд╕рдореНрдмрдиреНрдзрд┐рдд рдЫред рд╕рдВрд╕реНрдХрд░рдг 1.0 рд╣рд╛рдореНрд░реЛ ACME рдЬрд╛рд░реАрдХрд░реНрддрд╛рдорд╛ рджреБрдИ рд╕рд╛рдирд╛ рддрд░ рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рд╕реБрдзрд╛рд░рд╣рд░реВ рдердкреНрди рд╕рд╛рдореБрджрд╛рдпрд┐рдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рдЫред

рдЦрд╛рддрд╛ рдХреБрдЮреНрдЬреА рдЙрддреНрдкрд╛рджрди рдЕрд╕рдХреНрд╖рдо рдЧрд░реНрдиреБрд╣реЛрд╕реН

рдпрджрд┐ рддрдкрд╛рдЗрдБ ACME рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╣рд░реВ рдареВрд▓реЛ рдорд╛рддреНрд░рд╛рдорд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реБрдиреНрдЫ рднрдиреЗ, рддрдкрд╛рдЗрдБрд▓реЗ рдзреЗрд░реИ рдХреНрд▓рд╕реНрдЯрд░рд╣рд░реВрдорд╛ рдПрдЙрдЯреИ рдЦрд╛рддрд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ рд╕рдореНрднрд╛рд╡рдирд╛ рдЫ, рддреНрдпрд╕реИрд▓реЗ рддрдкрд╛рдЗрдБрдХреЛ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЬрд╛рд░реА рдЧрд░реНрдиреЗ рдкреНрд░рддрд┐рдмрдиреНрдзрд╣рд░реВ рддреА рд╕рдмреИрдорд╛ рд▓рд╛рдЧреВ рд╣реБрдиреЗрдЫрдиреНред рдорд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧреЛрдкреНрдп рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдЧрд░реНрджрд╛ рдкреНрд░рдорд╛рдгрдкрддреНрд░-рдкреНрд░рдмрдиреНрдзрдХрдорд╛ рдпреЛ рдкрд╣рд┐рд▓реЗ рдиреИ рд╕рдореНрднрд╡ рдерд┐рдпреЛ privateKeySecretRefред рдпреЛ рдкреНрд░рдпреЛрдЧ рдХреЗрд╕ рдПрдХрджрдореИ рдмрдЧреНрдЧреА рдерд┐рдпреЛ, рдХрд┐рдирдХрд┐ рдкреНрд░рдорд╛рдгрдкрддреНрд░-рдкреНрд░рдмрдиреНрдзрдХрд▓реЗ рд╕рд╣рдпреЛрдЧреА рд╣реБрдиреЗ рдкреНрд░рдпрд╛рд╕ рдЧрд░реНрдпреЛ рд░ рдЦреБрд╢реАрд╕рд╛рде рдПрдЙрдЯрд╛ рдирдпрд╛рдБ рдЦрд╛рддрд╛ рдХреБрдЮреНрдЬреА рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдпреЛ рдпрджрд┐ рдпреЛ рдлреЗрд▓рд╛ рдкрд░реЗрди рднрдиреЗред рддреНрдпрд╣реА рднрдПрд░ рдердкреЗрдХрд╛ рд╣реМрдВ disableAccountKeyGenerationрдпрджрд┐ рддрдкрд╛рдИрдВрд▓реЗ рдпреЛ рд╡рд┐рдХрд▓реНрдк рд╕реЗрдЯ рдЧрд░реНрдиреБрднрдпреЛ рднрдиреЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдпрд╕ рд╡реНрдпрд╡рд╣рд╛рд░рдмрд╛рдЯ рдмрдЪрд╛рдЙрди true - рдкреНрд░рдорд╛рдгрдкрддреНрд░-рдкреНрд░рдмрдиреНрдзрдХрд▓реЗ рдХреБрдЮреНрдЬреА рдЙрддреНрдкрдиреНрди рдЧрд░реНрджреИрди рд░ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдЪреЗрддрд╛рд╡рдиреА рджрд┐рдиреЗрдЫ рдХрд┐ рдпреЛ рдЦрд╛рддрд╛ рдХреБрдЮреНрдЬреА рдкреНрд░рджрд╛рди рдЧрд░рд┐рдПрдХреЛ рдЫреИрдиред

apiVersion: cert-manager.io/v1
kind: Issuer
metadata:
  name: letsencrypt
spec:
  acme:
    privateKeySecretRef:
      name: example-issuer-account-key
    disableAccountKeyGeneration: false

рд░реБрдЪрд╛рдЗрдПрдХреЛ рдЪреЗрди

рд╕реЗрдкреНрдЯреЗрдореНрдмрд░ реиреп рдПрдиреНрдХреНрд░рд┐рдкреНрдЯ рдЧрд░реМрдВ рдкрд╛рд╕ рд╣реБрдиреЗрдЫ рдЖрдлреНрдиреЛ рд░реВрдЯ CA рдорд╛ ISRG Rootред рдХреНрд░рд╕-рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╣рд░реВ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдЧрд░рд┐рдиреЗрдЫ Identrustред рдпреЛ рдкрд░рд┐рд╡рд░реНрддрдирд▓рд╛рдИ рдкреНрд░рдорд╛рдгрдкрддреНрд░-рдкреНрд░рдмрдиреНрдзрдХ рд╕реЗрдЯрд┐рдЩрд╣рд░реВрдорд╛ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ рдЖрд╡рд╢реНрдпрдХ рдкрд░реНрджреИрди, рдпреЛ рдорд┐рддрд┐ рдкрдЫрд┐ рдЬрд╛рд░реА рдЧрд░рд┐рдПрдХрд╛ рд╕рдмреИ рдЕрджреНрдпрд╛рд╡рдзрд┐рдХ рд╡рд╛ рдирдпрд╛рдБ рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╣рд░реВрд▓реЗ рдирдпрд╛рдБ рд░реВрдЯ CA рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗрдЫред

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

рдЖрдЬ рдиреИ рддрдкрд╛рдИрдВрд▓реЗ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдЧрд░реЗрдХреЛ рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╣рд░реВ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ ISRG Root, рддреНрдпрд╕реИрд▓реЗ:

apiVersion: cert-manager.io/v1
kind: Issuer
metadata:
  name: letsencrypt
spec:
  acme:
    server: https://acme-v02.api.letsencrypt.org/directory
    preferredChain: "ISRG Root X1"

рдпрджрд┐ рддрдкрд╛рдИрдВ рдЪреЗрди рдЫреЛрдбреНрди рдЪрд╛рд╣рдиреБрд╣реБрдиреНрдЫ рднрдиреЗ IdenTrust - рдпреЛ рд╡рд┐рдХрд▓реНрдк рд╕реЗрдЯ рдЧрд░реНрдиреБрд╣реЛрд╕реН DST Root CA X3:

apiVersion: cert-manager.io/v1
kind: Issuer
metadata:
  name: letsencrypt
spec:
  acme:
    server: https://acme-v02.api.letsencrypt.org/directory
    preferredChain: "DST Root CA X3"

рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджрд┐рдиреБрд╣реЛрд╕реН рдХрд┐ рдпреЛ рд░реВрдЯ CA рдЪрд╛рдБрдбреИ рдиреИ рд╣рдЯрд╛рдЗрдиреЗрдЫ, Let's Encrypt рд▓реЗ рдпрд╕ рдЪреЗрдирд▓рд╛рдИ рд╕реЗрдкреНрдЯреЗрдореНрдмрд░ 29, 2021 рд╕рдореНрдо рд╕рдХреНрд░рд┐рдп рд░рд╛рдЦреНрдиреЗрдЫред

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

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