{"id":309438,"date":"2020-09-03T21:00:38","date_gmt":"2020-09-03T21:00:38","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=309438"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=309438","title":{"rendered":"\u0412\u044b\u0448\u0435\u043b cert-manager 1.0"},"content":{"rendered":"\n<div class=\"post__text post__text_v2\" id=\"post-content-body\" data-io-article-url=\"https:\/\/habr.com\/ru\/company\/southbridge\/blog\/517720\/\">\n<p>\u0415\u0441\u043b\u0438 \u0441\u043f\u0440\u043e\u0441\u0438\u0442\u044c \u043e\u043f\u044b\u0442\u043d\u043e\u0433\u043e \u043c\u043d\u043e\u0433\u043e\u043c\u0443\u0434\u0440\u043e\u0433\u043e \u0438\u043d\u0436\u0435\u043d\u0435\u0440\u0430, \u0447\u0442\u043e \u043e\u043d \u0434\u0443\u043c\u0430\u0435\u0442 \u043e cert-manager \u0438 \u043f\u043e\u0447\u0435\u043c\u0443 \u0432\u0441\u0435 \u0438\u043c \u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f, \u0442\u043e \u0441\u043f\u0435\u0446 \u0432\u0437\u0434\u043e\u0445\u043d\u0451\u0442, \u0434\u043e\u0432\u0435\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043e\u0431\u043d\u0438\u043c\u0435\u0442 \u0438 \u0443\u0441\u0442\u0430\u043b\u043e \u0441\u043a\u0430\u0436\u0435\u0442: \u00ab\u0412\u0441\u0435 \u0438\u043c \u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043d\u0435\u0442 \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432 \u0432\u043c\u0435\u043d\u044f\u0435\u043c\u044b\u0445. \u041d\u0430\u0448\u0438 \u043c\u044b\u0448\u0438 \u043f\u043b\u0430\u0447\u0443\u0442, \u043a\u043e\u043b\u044e\u0442\u0441\u044f, \u043d\u043e \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u044e\u0442 \u0436\u0438\u0442\u044c \u0441 \u044d\u0442\u0438\u043c \u043a\u0430\u043a\u0442\u0443\u0441\u043e\u043c. \u041f\u043e\u0447\u0435\u043c\u0443 \u043b\u044e\u0431\u0438\u043c? \u041f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442. \u041f\u043e\u0447\u0435\u043c\u0443 \u043d\u0435 \u043b\u044e\u0431\u0438\u043c? \u041f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e \u0432\u044b\u0445\u043e\u0434\u044f\u0442 \u043d\u043e\u0432\u044b\u0435 \u0432\u0435\u0440\u0441\u0438\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442 \u043d\u043e\u0432\u044b\u0435 \u0444\u0438\u0447\u0438. \u0418 \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0440\u0430\u0437 \u0437\u0430 \u0440\u0430\u0437\u043e\u043c \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0442\u044c \u043a\u043b\u0430\u0441\u0442\u0435\u0440. \u0410 \u0441\u0442\u0430\u0440\u044b\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 \u043f\u0435\u0440\u0435\u0441\u0442\u0430\u044e\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0437\u0430\u0433\u043e\u0432\u043e\u0440 \u0435\u0441\u0442\u044c \u0438 \u0432\u0435\u043b\u0438\u043a\u043e\u0435 \u0442\u0430\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0435 \u0448\u0430\u043c\u0430\u043d\u0441\u0442\u0432\u043e\u00bb.<\/p>\n<p>\u041d\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u0443\u0432\u0435\u0440\u044f\u044e\u0442, \u0447\u0442\u043e \u0441 <strong>cert-manager 1.0<\/strong> \u0432\u0441\u0451 \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u0441\u044f. <\/p>\n<p>\u041f\u043e\u0432\u0435\u0440\u0438\u043c? <\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/3a0\/339\/296\/3a0339296709033bd68647009945df26.png\" width=\"964\" height=\"489\"><figcaption><\/figcaption><\/figure>\n<p>Cert-manager &#8212; \u00ab\u0440\u043e\u0434\u043d\u043e\u0439\u00bb \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430\u043c\u0438 Kubernetes. \u0421 \u0435\u0433\u043e \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043c\u043e\u0436\u043d\u043e \u0432\u044b\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b \u0438\u0437 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u043e\u0432: Let&#8217;s Encrypt, HashiCorp Vault, Venafi, \u043f\u0430\u0440\u044b \u043a\u043b\u044e\u0447\u0435\u0439 \u0434\u043b\u044f \u043f\u043e\u0434\u043f\u0438\u0441\u0438 \u0438 \u0441\u0430\u043c\u043e\u043f\u043e\u0434\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0445. \u041e\u043d \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c \u043a\u043b\u044e\u0447\u0438 \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u043f\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u044b\u0442\u0430\u0435\u0442\u0441\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b \u0432 \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u0435 \u0434\u043e \u0438\u0445 \u0438\u0441\u0442\u0435\u0447\u0435\u043d\u0438\u044f \u0432\u0440\u0435\u043c\u044f. Cert-manager \u043e\u0441\u043d\u043e\u0432\u0430\u043d \u043d\u0430 kube-lego, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0440\u0438\u0435\u043c\u044b \u0438\u0437 \u0434\u0440\u0443\u0433\u0438\u0445 \u0441\u0445\u043e\u0436\u0438\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 kube-cert-manager.<\/p>\n<h3>\u041f\u0440\u0438\u043c\u0435\u0447\u0430\u043d\u0438\u044f \u043a \u0432\u044b\u043f\u0443\u0441\u043a\u0443<\/h3>\n<p>\u0412\u0435\u0440\u0441\u0438\u0435\u0439 1.0 \u043c\u044b \u0441\u0442\u0430\u0432\u0438\u043c \u0437\u043d\u0430\u043a \u0434\u043e\u0432\u0435\u0440\u0438\u044f \u0437\u0430 \u0442\u0440\u0438 \u0433\u043e\u0434\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 cert-manager. \u0417\u0430 \u044d\u0442\u043e \u0432\u0440\u0435\u043c\u044f \u043e\u043d \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0440\u0430\u0437\u0432\u0438\u043b\u0441\u044f \u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0438 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u0438, \u043d\u043e \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0433\u043e &#8212; \u0432 \u0441\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0435. \u0421\u0435\u0433\u043e\u0434\u043d\u044f \u043c\u044b \u0432\u0438\u0434\u0438\u043c, \u043a\u0430\u043a \u043c\u043d\u043e\u0433\u0438\u0435 \u043b\u044e\u0434\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442 \u0435\u0433\u043e \u0434\u043b\u044f \u0437\u0430\u0449\u0438\u0442\u044b \u0441\u0432\u043e\u0438\u0445 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u043e\u0432 Kubernetes, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u0440\u043e\u0432\u043e\u0434\u044f\u0442 \u0432\u043d\u0435\u0434\u0440\u0435\u043d\u0438\u0435 \u0432 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u0447\u0430\u0441\u0442\u0438 \u044d\u043a\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u044b. \u0412 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0445 16 \u0432\u044b\u043f\u0443\u0441\u043a\u0430\u0445 \u0431\u044b\u043b\u043e \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e \u043a\u0443\u0447\u0430 \u043e\u0448\u0438\u0431\u043e\u043a. \u0410 \u0442\u043e, \u0447\u0442\u043e \u043d\u0430\u0434\u043e \u0431\u044b\u043b\u043e \u0441\u043b\u043e\u043c\u0430\u0442\u044c &#8212; \u0441\u043b\u043e\u043c\u0430\u043d\u043e. \u041d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u0445\u043e\u0434\u043e\u0432 \u043f\u043e \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 API \u0443\u043b\u0443\u0447\u0448\u0438\u043b\u0438 \u0435\u0433\u043e \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c\u0438. \u041c\u044b \u0440\u0435\u0448\u0438\u043b\u0438 1500 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u043d\u0430 GitHub \u0441 \u0435\u0449\u0435 \u0431\u043e\u043b\u044c\u0448\u0438\u043c \u0447\u0438\u0441\u043b\u043e\u043c \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u043d\u0430 \u0441\u043b\u0438\u044f\u043d\u0438\u0435 \u043e\u0442 253 \u0443\u0447\u0430\u0441\u0442\u043d\u0438\u043a\u043e\u0432 \u0441\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0430.<\/p>\n<p><strong>\u0412\u044b\u043f\u0443\u0441\u043a\u0430\u044f 1.0 \u043c\u044b \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0437\u0430\u044f\u0432\u043b\u044f\u0435\u043c, \u0447\u0442\u043e cert-manager &#8212; \u0437\u0440\u0435\u043b\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442. \u041c\u044b \u0442\u0430\u043a\u0436\u0435 \u043e\u0431\u0435\u0449\u0430\u0435\u043c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u044c \u043d\u0430\u0448\u0435\u0433\u043e API <\/strong><code>v1<\/code><strong>.<\/strong><\/p>\n<p>\u041e\u0433\u0440\u043e\u043c\u043d\u0430\u044f \u0431\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u043d\u043e\u0441\u0442\u044c \u0432\u0441\u0435\u043c, \u043a\u0442\u043e \u043d\u0430\u043c \u043f\u043e\u043c\u043e\u0433\u0430\u043b \u0434\u0435\u043b\u0430\u0442\u044c cert-manager \u0432\u0441\u0435 \u044d\u0442\u0438 \u0442\u0440\u0438 \u0433\u043e\u0434\u0430! \u041f\u0443\u0441\u0442\u044c \u0432\u0435\u0440\u0441\u0438\u044f 1.0 \u0441\u0442\u0430\u043d\u0435\u0442 \u043f\u0435\u0440\u0432\u044b\u043c \u0438\u0437 \u043c\u043d\u043e\u0433\u0438\u0445 \u0431\u0443\u0434\u0443\u0449\u0438\u0445 \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u0439.<\/p>\n<p>\u0412\u044b\u043f\u0443\u0441\u043a 1.0 &#8212; \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b\u0439 \u0432\u044b\u043f\u0443\u0441\u043a \u0441 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c\u0438 \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u043d\u044b\u043c\u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f\u043c\u0438:<\/p>\n<ul>\n<li>\n<p><code>v1<\/code> API;<\/p>\n<\/li>\n<li>\n<p>\u041a\u043e\u043c\u0430\u043d\u0434\u0430 <code>kubectl cert-manager status<\/code>, \u0434\u043b\u044f \u043f\u043e\u043c\u043e\u0449\u0438 \u043f\u0440\u0438 \u0430\u043d\u0430\u043b\u0438\u0437\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c;<\/p>\n<\/li>\n<li>\n<p>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043d\u043e\u0432\u0435\u0439\u0448\u0438\u0445 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b\u0445 API Kubernetes;<\/p>\n<\/li>\n<li>\n<p>\u0423\u043b\u0443\u0447\u0448\u0435\u043d\u043d\u043e\u0435 \u0436\u0443\u0440\u043d\u0430\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435;<\/p>\n<\/li>\n<li>\n<p>\u0423\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f ACME.<\/p>\n<\/li>\n<\/ul>\n<p>\u041f\u0435\u0440\u0435\u0434 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435\u043c \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0439\u0442\u0435 \u043f\u0440\u0438\u043c\u0435\u0447\u0430\u043d\u0438\u044f \u043a \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044e.<\/p>\n<h3>API v1<\/h3>\n<p>\u0412\u0435\u0440\u0441\u0438\u044f v0.16 \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u0430 \u0441 API <code>v1beta1<\/code>. \u042d\u0442\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u043e \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u043d\u044b\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0443\u043b\u0443\u0447\u0448\u0438\u043b\u043e \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044e \u043f\u043e \u043f\u043e\u043b\u044f\u043c API. \u0412\u0435\u0440\u0441\u0438\u044f 1.0 \u043e\u043f\u0438\u0440\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u044d\u0442\u043e \u0432\u0441\u0435 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e API <code>v1<\/code>. \u042d\u0442\u043e\u0442 API \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043d\u0430\u0448\u0438\u043c \u043f\u0435\u0440\u0432\u044b\u043c \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b\u043c, \u0432 \u0442\u043e \u0436\u0435 \u0432\u0440\u0435\u043c\u044f \u043c\u044b \u0443\u0436\u0435 \u0434\u0430\u0432\u0430\u043b\u0438 \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0438 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438, \u043d\u043e \u0441 API <code>v1<\/code> \u043c\u044b \u043e\u0431\u0435\u0449\u0430\u0435\u043c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u044c \u043d\u0430 \u0433\u043e\u0434\u044b \u0432\u043f\u0435\u0440\u0435\u0434.<\/p>\n<p>\u0412\u043d\u0435\u0441\u0435\u043d\u043d\u044b\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f (\u043f\u0440\u0438\u043c\u0435\u0447\u0430\u043d\u0438\u0435: \u043d\u0430\u0448\u0438 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430 \u0434\u043b\u044f \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u043e\u0437\u0430\u0431\u043e\u0442\u044f\u0442\u0441\u044f \u043e\u0431\u043e \u0432\u0441\u0435\u043c \u0434\u043b\u044f \u0432\u0430\u0441):<\/p>\n<p>\u0421\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442:<\/p>\n<ul>\n<li>\n<p><code>emailSANs<\/code> \u0442\u0435\u043f\u0435\u0440\u044c \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f <code>emailAddresses<\/code><\/p>\n<\/li>\n<li>\n<p><code>uriSANs<\/code> &#8212; <code>uris<\/code><\/p>\n<\/li>\n<\/ul>\n<p>\u042d\u0442\u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u044e\u0442 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u044c \u0441 \u0434\u0440\u0443\u0433\u0438\u043c\u0438 SAN (subject alt names, <em>\u043f\u0440\u0438\u043c. \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0447\u0438\u043a\u0430<\/em>), \u0430 \u0442\u0430\u043a\u0436\u0435 \u0441 Go API. \u041c\u044b \u0443\u0431\u0438\u0440\u0430\u0435\u043c \u044d\u0442\u043e\u0442 \u0442\u0435\u0440\u043c\u0438\u043d \u0438\u0437 \u043d\u0430\u0448\u0435\u0433\u043e API.<\/p>\n<h4>\u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435<\/h4>\n<p>\u0415\u0441\u043b\u0438 \u0432\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 Kubernetes 1.16+ &#8212; \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0438\u0440\u0443\u044e\u0449\u0438\u0435 webhooks \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0442 \u0432\u0430\u043c \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0438 \u0431\u0435\u0441\u0448\u043e\u0432\u043d\u043e  \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u0432\u0435\u0440\u0441\u0438\u044f\u043c\u0438 API <code>v1alpha2<\/code>, <code>v1alpha3<\/code>, <code>v1beta1<\/code> \u0438 <code>v1<\/code>. \u0421 \u0438\u0445 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0432\u044b \u0441\u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u043e\u0432\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e API \u0431\u0435\u0437 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0438\u043b\u0438 \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e\u0433\u043e \u0440\u0430\u0437\u0432\u0435\u0440\u0442\u044b\u0432\u0430\u043d\u0438\u044f \u0432\u0430\u0448\u0438\u0445 \u0441\u0442\u0430\u0440\u044b\u0445 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432. \u041c\u044b \u043d\u0430\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u043c \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u043c\u0430\u043d\u0438\u0444\u0435\u0441\u0442\u043e\u0432 \u0434\u043e API <code>v1<\/code>, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0435  \u0432\u0435\u0440\u0441\u0438\u0438 \u0441\u043a\u043e\u0440\u043e \u0431\u0443\u0434\u0443\u0442 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u044b \u0443\u0441\u0442\u0430\u0440\u0435\u0432\u0448\u0438\u043c\u0438. \u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 <code>legacy<\/code> \u0432\u0435\u0440\u0441\u0438\u0438 cert-manager \u0431\u0443\u0434\u0443\u0442 \u043f\u043e-\u043f\u0440\u0435\u0436\u043d\u0435\u043c\u0443 \u0438\u043c\u0435\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u0442\u043e\u043b\u044c\u043a\u043e \u043a <code>v1<\/code>, \u0448\u0430\u0433\u0438 \u043f\u043e \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044e \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0439\u0442\u0438 <a href=\"https:\/\/cert-manager.io\/docs\/installation\/upgrading\/upgrading-0.16-1.0\/\" rel=\"noopener noreferrer nofollow\">\u0437\u0434\u0435\u0441\u044c<\/a>.<\/p>\n<h3>\u041a\u043e\u043c\u0430\u043d\u0434\u0430 kubectl cert-manager status<\/h3>\n<p>C \u043d\u0430\u0448\u0438\u043c\u0438 \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f\u043c\u0438 \u0432 \u043d\u0430\u0448\u0435\u043c \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0438 \u043a <code>kubectl<\/code> \u0441\u0442\u0430\u043b\u043e \u043f\u0440\u043e\u0449\u0435 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0435 \u0441 \u043d\u0435\u0432\u044b\u0434\u0430\u0447\u0435\u0439 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432. <code>kubectl cert-manager status<\/code> \u0442\u0435\u043f\u0435\u0440\u044c \u0432\u044b\u0434\u0430\u0435\u0442 \u043d\u0430\u043c\u043d\u043e\u0433\u043e \u0431\u043e\u043b\u044c\u0448\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0441 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430\u043c\u0438, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u044d\u0442\u0430\u043f \u0432\u044b\u0434\u0430\u0447\u0438 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430.<\/p>\n<p>\u041f\u043e\u0441\u043b\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c <code>kubectl cert-manager status certificate &lt;\u0438\u043c\u044f-\u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430&gt;<\/code>, \u0447\u0442\u043e \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u0442 \u043a \u043f\u043e\u0438\u0441\u043a\u0443 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430 \u0441 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u043c \u0438\u043c\u0435\u043d\u0435\u043c \u0438 \u043b\u044e\u0431\u044b\u0445 \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0445 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 CertificateRequest, Secret, Issuer, \u0430 \u0442\u0430\u043a\u0436\u0435 Order \u0438 Challenges \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 \u043e\u0442 ACME.<\/p>\n<p>\u041f\u0440\u0438\u043c\u0435\u0440 \u043e\u0442\u043b\u0430\u0434\u043a\u0438 \u0435\u0449\u0435 \u043d\u0435 \u0433\u043e\u0442\u043e\u0432\u043e\u0433\u043e \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430:<\/p>\n<pre><code>$ 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: &lt;none&gt; Not After: &lt;none&gt; Renewal Time: &lt;none&gt; 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 <\/code><\/pre>\n<p>\u041a\u043e\u043c\u0430\u043d\u0434\u0430 \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043c\u043e\u0447\u044c \u0443\u0437\u043d\u0430\u0442\u044c \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u043e \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u043c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430. \u041f\u0440\u0438\u043c\u0435\u0440 \u0434\u0435\u0442\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0434\u043b\u044f \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430, \u0432\u044b\u0434\u0430\u043d\u043d\u043e\u0433\u043e Letsencrypt:<\/p>\n<pre><code>$ 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:  &lt;none&gt; 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 [...] <\/code><\/pre>\n<h3>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043d\u043e\u0432\u0435\u0439\u0448\u0438\u0445 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b\u0445 API Kubernetes<\/h3>\n<p>Cert-manager \u0431\u044b\u043b \u043e\u0434\u043d\u0438\u043c \u0438\u0437 \u043f\u0435\u0440\u0432\u044b\u0445, \u043a\u0442\u043e \u0432\u043d\u0435\u0434\u0440\u0438\u043b Kubernetes CRDs. \u042d\u0442\u043e, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043d\u0430\u0448\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0432\u0435\u0440\u0441\u0438\u0439 Kubernetes \u0432\u043f\u043b\u043e\u0442\u044c \u0434\u043e 1.11, \u043f\u0440\u0438\u0432\u0435\u043b\u0438 \u043a \u0442\u043e\u043c\u0443, \u0447\u0442\u043e \u043d\u0430\u043c \u043d\u0430\u0434\u043e \u0431\u044b\u043b\u043e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c \u0443\u0441\u0442\u0430\u0440\u0435\u0432\u0448\u0438\u0439 <code>apiextensions.k8s.io\/v1beta1<\/code> \u0434\u043b\u044f \u043d\u0430\u0448\u0438\u0445 CRD, \u0430 \u0442\u0430\u043a\u0436\u0435 <code>admissionregistration.k8s.io\/v1beta1<\/code> \u0434\u043b\u044f \u043d\u0430\u0448\u0438\u0445 webhooks. \u0421\u0435\u0439\u0447\u0430\u0441 \u043e\u043d\u0438 \u0443\u0441\u0442\u0430\u0440\u0435\u043b\u0438 \u0438 \u0431\u0443\u0434\u0443\u0442 \u0443\u0434\u0430\u043b\u0435\u043d\u044b \u0432 Kubernetes \u0441 \u0432\u0435\u0440\u0441\u0438\u0438 1.22. \u0421 \u043d\u0430\u0448\u0435\u0439 1.0 \u043c\u044b \u0442\u0435\u043f\u0435\u0440\u044c \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u043c \u043f\u043e\u043b\u043d\u0443\u044e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 <code>apiextensions.k8s.io\/v1<\/code> \u0438 <code>admissionregistration.k8s.io\/v1<\/code> \u0434\u043b\u044f Kubernetes 1.16 (\u0433\u0434\u0435 \u043e\u043d\u0438 \u0431\u044b\u043b\u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u044b) \u0438 \u043d\u043e\u0432\u0435\u0435. \u0414\u043b\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0445 \u0432\u0435\u0440\u0441\u0438\u0439 \u043c\u044b \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u0435\u043c \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0442\u044c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 <code>v1beta1<\/code> \u0432 \u043d\u0430\u0448\u0435\u0439 <code>legacy<\/code> \u0432\u0435\u0440\u0441\u0438\u0438.<\/p>\n<h3>\u0423\u043b\u0443\u0447\u0448\u0435\u043d\u043d\u043e\u0435 \u0436\u0443\u0440\u043d\u0430\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435<\/h3>\n<p>\u0412 \u044d\u0442\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u043c\u044b \u043e\u0431\u043d\u043e\u0432\u0438\u043b\u0438 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443 \u0434\u043b\u044f \u0436\u0443\u0440\u043d\u0430\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u043e <code>klog\/v2<\/code>, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u043e\u0439 \u0432 Kubernetes 1.19. \u041c\u044b \u0442\u0430\u043a\u0436\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c \u043a\u0430\u0436\u0434\u044b\u0439 \u0436\u0443\u0440\u043d\u0430\u043b, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0438\u0448\u0435\u043c, \u0434\u043b\u044f \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0435\u043c\u0443 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0433\u043e \u0443\u0440\u043e\u0432\u043d\u044f. \u041c\u044b \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e\u0432\u0430\u043b\u0438\u0441\u044c \u043f\u0440\u0438 \u044d\u0442\u043e\u043c <a href=\"https:\/\/github.com\/kubernetes\/community\/blob\/master\/contributors\/devel\/sig-instrumentation\/logging.md\" rel=\"noopener noreferrer nofollow\">\u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e\u043c \u043e\u0442 Kubernetes<\/a>. \u0415\u0441\u0442\u044c \u043f\u044f\u0442\u044c (\u043f\u043e \u0444\u0430\u043a\u0442\u0443 &#8212; \u0448\u0435\u0441\u0442\u044c, <em>\u043f\u0440\u0438\u043c. \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0447\u0438\u043a\u0430<\/em>) \u0443\u0440\u043e\u0432\u043d\u0435\u0439 \u0436\u0443\u0440\u043d\u0430\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u043d\u0430\u0447\u0438\u043d\u0430\u044f \u0441 <code>Error<\/code> (\u0443\u0440\u043e\u0432\u0435\u043d\u044c 0), \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b\u0432\u043e\u0434\u0438\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u0430\u0436\u043d\u044b\u0435 \u043e\u0448\u0438\u0431\u043a\u0438, \u0438 \u0437\u0430\u043a\u0430\u043d\u0447\u0438\u0432\u0430\u044f <code>Trace<\/code> (\u0443\u0440\u043e\u0432\u0435\u043d\u044c 5), \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u0443\u0437\u043d\u0430\u0442\u044c \u0442\u043e\u0447\u043d\u043e, \u0447\u0442\u043e \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442. \u042d\u0442\u0438\u043c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435\u043c \u043c\u044b \u0441\u043e\u043a\u0440\u0430\u0442\u0438\u043b\u0438 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0436\u0443\u0440\u043d\u0430\u043b\u043e\u0432, \u0435\u0441\u043b\u0438 \u0432\u044b\u043c \u043d\u0435 \u043d\u0443\u0436\u043d\u0430 \u043e\u0442\u043b\u0430\u0434\u043e\u0447\u043d\u0430\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 cert-manager.<\/p>\n<p>\u0421\u043e\u0432\u0435\u0442: \u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e cert-manager \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u0435 2 (<code>Info<\/code>), \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u0435\u0440\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u044d\u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f <code>global.logLevel<\/code> \u0432 Helm chart.<\/p>\n<p>\u041f\u0440\u0438\u043c\u0435\u0447\u0430\u043d\u0438\u0435: \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440 \u0436\u0443\u0440\u043d\u0430\u043b\u043e\u0432 &#8212; \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0435 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u043e \u043f\u0440\u0438 \u0443\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u0438 \u043d\u0435\u043f\u043e\u043b\u0430\u0434\u043e\u043a. \u0414\u043b\u044f \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u044c\u0442\u0435\u0441\u044c \u0441 \u043d\u0430\u0448\u0438\u043c <a href=\"https:\/\/cert-manager.io\/docs\/faq\/troubleshooting\/\" rel=\"noopener noreferrer nofollow\">\u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e\u043c<\/a>.<\/p>\n<p><strong>N.B. \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0430<\/strong>: \u0427\u0442\u043e\u0431\u044b \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u0443\u0437\u043d\u0430\u0442\u044c, \u043a\u0430\u043a \u044d\u0442\u043e \u0432\u0441\u0451 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043f\u043e\u0434 \u043a\u0430\u043f\u043e\u0442\u043e\u043c \u0443 Kubernetes, \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0446\u0435\u043d\u043d\u044b\u0435 \u0441\u043e\u0432\u0435\u0442\u044b \u0443 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u043e\u0432-\u043f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u0435\u0439, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u0443\u044e \u043f\u043e\u043c\u043e\u0449\u044c \u0442\u0435\u0445\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438, \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0438\u043d\u044f\u0442\u044c \u0443\u0447\u0430\u0441\u0442\u0438\u0435 \u0432 \u043e\u043d\u043b\u0430\u0439\u043d-\u0438\u043d\u0442\u0435\u043d\u0441\u0438\u0432\u0430\u0445 <a href=\"http:\/\/to.slurm.io\/9kYVcA\" rel=\"noopener noreferrer nofollow\">Kubernetes \u0411\u0430\u0437\u0430<\/a>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u043e\u0439\u0434\u0451\u0442 28-30 \u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044f, \u0438 <a href=\"http:\/\/to.slurm.io\/8tkfEg\" rel=\"noopener noreferrer nofollow\">Kubernetes \u041c\u0435\u0433\u0430<\/a>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u043e\u0439\u0434\u0451\u0442 14\u201316 \u043e\u043a\u0442\u044f\u0431\u0440\u044f. <\/p>\n<h3>\u0423\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f ACME<\/h3>\n<p>\u041d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0447\u0430\u0441\u0442\u043e\u0435 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435 cert-manager \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0441\u0432\u044f\u0437\u0430\u043d\u043e \u0441 \u0432\u044b\u043f\u0443\u0441\u043a\u043e\u043c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 \u043e\u0442 Let&#8217;s Encrypt \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f ACME. \u0412\u0435\u0440\u0441\u0438\u044f 1.0 \u043f\u0440\u0438\u043c\u0435\u0447\u0430\u0442\u0435\u043b\u044c\u043d\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043e\u0442\u0437\u044b\u0432\u043e\u0432 \u043e\u0442 \u0441\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0430 \u0434\u043b\u044f \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0434\u0432\u0443\u0445 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u0445, \u043d\u043e \u0432\u0430\u0436\u043d\u044b\u0445 \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u0439 \u0432 \u043d\u0430\u0448 ACME issuer.<\/p>\n<h4>\u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043a\u043b\u044e\u0447\u0430 \u0443\u0447\u0435\u0442\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u0438<\/h4>\n<p>\u0415\u0441\u043b\u0438 \u0432\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b ACME \u0432 \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u043e\u0431\u044a\u0435\u043c\u0430\u0445, \u0432\u044b \u0441\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 \u043e\u0434\u043d\u0443 \u0438 \u0442\u0443 \u0436\u0435 \u0443\u0447\u0435\u0442\u043d\u0443\u044e \u0437\u0430\u043f\u0438\u0441\u044c \u043d\u0430 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430\u0445, \u0442\u0430\u043a \u0447\u0442\u043e \u0432\u0430\u0448\u0438 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u043f\u043e \u0432\u044b\u043f\u0443\u0441\u043a\u0443 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 \u0431\u0443\u0434\u0443\u0442 \u043a\u0430\u0441\u0430\u0442\u044c\u0441\u044f \u0438\u0445 \u0432\u0441\u0435\u0445. \u042d\u0442\u043e \u0443\u0436\u0435 \u0431\u044b\u043b\u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0432 cert-manager \u043f\u0440\u0438 \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 \u0441\u0435\u043a\u0440\u0435\u0442\u0430, \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0433\u043e \u0432 <code>privateKeySecretRef<\/code>. \u0422\u0430\u043a\u043e\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0431\u044b\u043b \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0433\u043b\u044e\u0447\u043d\u044b\u0439, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 cert-manager \u043f\u044b\u0442\u0430\u043b\u0441\u044f \u0431\u044b\u0442\u044c \u043f\u043e\u043b\u0435\u0437\u043d\u044b\u043c \u0438 \u0440\u0430\u0434\u043e\u0441\u0442\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u043b \u043d\u043e\u0432\u044b\u0439 \u043a\u043b\u044e\u0447 \u0443\u0447\u0435\u0442\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u0438, \u0435\u0441\u043b\u0438 \u0435\u0433\u043e \u043d\u0435 \u043d\u0430\u0445\u043e\u0434\u0438\u043b. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043c\u044b \u0438 \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u0438 <code>disableAccountKeyGeneration<\/code>, \u0447\u0442\u043e\u0431\u044b \u0437\u0430\u0449\u0438\u0442\u0438\u0442\u044c \u0432\u0430\u0441 \u043e\u0442 \u0442\u0430\u043a\u043e\u0433\u043e \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044f, \u0435\u0441\u043b\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u0432 <code>true<\/code> &#8212; cert-manager \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u043a\u043b\u044e\u0447 \u0438 \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0434\u0438\u0442 \u0432\u0430\u0441 \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u0435\u043c\u0443 \u043d\u0435 \u0431\u044b\u043b \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d \u043a\u043b\u044e\u0447 \u0443\u0447\u0435\u0442\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u0438.<\/p>\n<pre><code>apiVersion: cert-manager.io\/v1 kind: Issuer metadata:   name: letsencrypt spec:   acme:     privateKeySecretRef:       name: example-issuer-account-key     disableAccountKeyGeneration: false <\/code><\/pre>\n<h4>\u041f\u0440\u0435\u0434\u043f\u043e\u0447\u0438\u0442\u0430\u0435\u043c\u0430\u044f \u0446\u0435\u043f\u043e\u0447\u043a\u0430<\/h4>\n<p>29 \u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044f Let&#8217;s Encrypt <a href=\"https:\/\/letsencrypt.org\/2019\/04\/15\/transitioning-to-isrg-root.html\" rel=\"noopener noreferrer nofollow\">\u043f\u0435\u0440\u0435\u0439\u0434\u0435\u0442<\/a> \u043d\u0430 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 \u0446\u0435\u043d\u0442\u0440 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 <code>ISRG Root<\/code>. \u0421\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b \u0441 \u043f\u0435\u0440\u0435\u043a\u0440\u0435\u0441\u0442\u043d\u044b\u043c\u0438 \u043f\u043e\u0434\u043f\u0438\u0441\u044f\u043c\u0438 \u0431\u0443\u0434\u0443\u0442 \u0437\u0430\u043c\u0435\u043d\u0435\u043d\u044b \u043d\u0430 <code>Identrust<\/code>. \u042d\u0442\u043e \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u043d\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u043f\u0440\u0430\u0432\u043e\u043a \u0432 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u0445 cert-manager, \u0432\u0441\u0435 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u0435 \u0438\u043b\u0438 \u043d\u043e\u0432\u044b\u0435 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b, \u0432\u044b\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0435 \u043f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0439 \u0434\u0430\u0442\u044b, \u0431\u0443\u0434\u0443\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u043e\u0432\u044b\u0439 \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 CA.<\/p>\n<p>Let&#8217;s Encrypt \u0443\u0436\u0435 \u043f\u043e\u0434\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u044d\u0442\u043e\u0433\u043e CA \u0438 \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442 \u0438\u0445 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u00ab\u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u0446\u0435\u043f\u043e\u0447\u043a\u0438 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432\u00bb \u0447\u0435\u0440\u0435\u0437 ACME. \u0412 \u044d\u0442\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 cert-manager \u0435\u0441\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u044d\u0442\u0438\u043c \u0446\u0435\u043f\u043e\u0447\u043a\u0430\u043c \u0432 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u0445 issuer. \u0412 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0435 <code>preferredChain<\/code> \u043c\u043e\u0436\u043d\u043e \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u0438\u043c\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u043e\u0433\u043e CA, \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0434\u0430\u043d \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442. \u0415\u0441\u043b\u0438 \u0431\u0443\u0434\u0435\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442, \u0441\u043e\u043e\u0442\u0432\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0439 \u0437\u0430\u043f\u0440\u043e\u0441\u0443, \u043e\u043d \u0432\u044b\u0434\u0430\u0441\u0442 \u0432\u0430\u043c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442. \u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u044d\u0442\u043e \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0442\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442, \u0435\u0441\u043b\u0438 \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u043d\u0430\u0439\u0434\u0435\u043d\u043e &#8212; \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0434\u0430\u043d \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e. \u042d\u0442\u043e \u0434\u0430\u0441\u0442 \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u044e \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0432\u044b \u0432\u0441\u0435 \u0440\u0430\u0432\u043d\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u0442\u0435 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u0432\u043e\u0435\u0433\u043e \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430 \u043f\u043e\u0441\u043b\u0435 \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u044f \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u0446\u0435\u043f\u043e\u0447\u043a\u0438 \u043d\u0430 \u0441\u0442\u043e\u0440\u043e\u043d\u0435 ACME issuer.<\/p>\n<p>\u0423\u0436\u0435 \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b, \u043f\u043e\u0434\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0435 <code>ISRG Root<\/code>, \u0442\u0430\u043a:<\/p>\n<pre><code>apiVersion: cert-manager.io\/v1 kind: Issuer metadata:   name: letsencrypt spec:   acme:     server: https:\/\/acme-v02.api.letsencrypt.org\/directory     preferredChain: \"ISRG Root X1\" <\/code><\/pre>\n<p>\u0415\u0441\u043b\u0438 \u0432\u044b \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0438\u0442\u0430\u0435\u0442\u0435 \u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0446\u0435\u043f\u043e\u0447\u043a\u0443 <code>IdenTrust<\/code> &#8212; \u0432\u044b\u0441\u0442\u0430\u0432\u043b\u044f\u0439\u0442\u0435 \u044d\u0442\u043e\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u0432 <code>DST Root CA X3<\/code>:<\/p>\n<pre><code>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\" <\/code><\/pre>\n<p>\u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u044d\u0442\u043e\u0442 \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 \u0446\u0435\u043d\u0442\u0440 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u0441\u043a\u043e\u0440\u043e \u0443\u0441\u0442\u0430\u0440\u0435\u0435\u0442, Let&#8217;s Encrypt \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c \u044d\u0442\u0443 \u0446\u0435\u043f\u043e\u0447\u043a\u0443 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0439 \u0434\u043e 29 \u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044f 2021 \u0433\u043e\u0434\u0430.<\/p>\n<\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/company\/southbridge\/blog\/517720\/\"> https:\/\/habr.com\/ru\/company\/southbridge\/blog\/517720\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"\n<div class=\"post__text post__text_v2\" id=\"post-content-body\" data-io-article-url=\"https:\/\/habr.com\/ru\/company\/southbridge\/blog\/517720\/\">\n<p>\u0415\u0441\u043b\u0438 \u0441\u043f\u0440\u043e\u0441\u0438\u0442\u044c \u043e\u043f\u044b\u0442\u043d\u043e\u0433\u043e \u043c\u043d\u043e\u0433\u043e\u043c\u0443\u0434\u0440\u043e\u0433\u043e \u0438\u043d\u0436\u0435\u043d\u0435\u0440\u0430, \u0447\u0442\u043e \u043e\u043d \u0434\u0443\u043c\u0430\u0435\u0442 \u043e cert-manager \u0438 \u043f\u043e\u0447\u0435\u043c\u0443 \u0432\u0441\u0435 \u0438\u043c \u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f, \u0442\u043e \u0441\u043f\u0435\u0446 \u0432\u0437\u0434\u043e\u0445\u043d\u0451\u0442, \u0434\u043e\u0432\u0435\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043e\u0431\u043d\u0438\u043c\u0435\u0442 \u0438 \u0443\u0441\u0442\u0430\u043b\u043e \u0441\u043a\u0430\u0436\u0435\u0442: \u00ab\u0412\u0441\u0435 \u0438\u043c \u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043d\u0435\u0442 \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432 \u0432\u043c\u0435\u043d\u044f\u0435\u043c\u044b\u0445. \u041d\u0430\u0448\u0438 \u043c\u044b\u0448\u0438 \u043f\u043b\u0430\u0447\u0443\u0442, \u043a\u043e\u043b\u044e\u0442\u0441\u044f, \u043d\u043e \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u044e\u0442 \u0436\u0438\u0442\u044c \u0441 \u044d\u0442\u0438\u043c \u043a\u0430\u043a\u0442\u0443\u0441\u043e\u043c. \u041f\u043e\u0447\u0435\u043c\u0443 \u043b\u044e\u0431\u0438\u043c? \u041f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442. \u041f\u043e\u0447\u0435\u043c\u0443 \u043d\u0435 \u043b\u044e\u0431\u0438\u043c? \u041f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e \u0432\u044b\u0445\u043e\u0434\u044f\u0442 \u043d\u043e\u0432\u044b\u0435 \u0432\u0435\u0440\u0441\u0438\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442 \u043d\u043e\u0432\u044b\u0435 \u0444\u0438\u0447\u0438. \u0418 \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0440\u0430\u0437 \u0437\u0430 \u0440\u0430\u0437\u043e\u043c \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0442\u044c \u043a\u043b\u0430\u0441\u0442\u0435\u0440. \u0410 \u0441\u0442\u0430\u0440\u044b\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 \u043f\u0435\u0440\u0435\u0441\u0442\u0430\u044e\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0437\u0430\u0433\u043e\u0432\u043e\u0440 \u0435\u0441\u0442\u044c \u0438 \u0432\u0435\u043b\u0438\u043a\u043e\u0435 \u0442\u0430\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0435 \u0448\u0430\u043c\u0430\u043d\u0441\u0442\u0432\u043e\u00bb.<\/p>\n<p>\u041d\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u0443\u0432\u0435\u0440\u044f\u044e\u0442, \u0447\u0442\u043e \u0441 <strong>cert-manager 1.0<\/strong> \u0432\u0441\u0451 \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u0441\u044f. <\/p>\n<p>\u041f\u043e\u0432\u0435\u0440\u0438\u043c? <\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>Cert-manager &#8212; \u00ab\u0440\u043e\u0434\u043d\u043e\u0439\u00bb \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430\u043c\u0438 Kubernetes. \u0421 \u0435\u0433\u043e \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043c\u043e\u0436\u043d\u043e \u0432\u044b\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b \u0438\u0437 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u043e\u0432: Let&#8217;s Encrypt, HashiCorp Vault, Venafi, \u043f\u0430\u0440\u044b \u043a\u043b\u044e\u0447\u0435\u0439 \u0434\u043b\u044f \u043f\u043e\u0434\u043f\u0438\u0441\u0438 \u0438 \u0441\u0430\u043c\u043e\u043f\u043e\u0434\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0445. \u041e\u043d \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c \u043a\u043b\u044e\u0447\u0438 \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u043f\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u044b\u0442\u0430\u0435\u0442\u0441\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b \u0432 \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u0435 \u0434\u043e \u0438\u0445 \u0438\u0441\u0442\u0435\u0447\u0435\u043d\u0438\u044f \u0432\u0440\u0435\u043c\u044f. Cert-manager \u043e\u0441\u043d\u043e\u0432\u0430\u043d \u043d\u0430 kube-lego, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0440\u0438\u0435\u043c\u044b \u0438\u0437 \u0434\u0440\u0443\u0433\u0438\u0445 \u0441\u0445\u043e\u0436\u0438\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 kube-cert-manager.<\/p>\n<h3>\u041f\u0440\u0438\u043c\u0435\u0447\u0430\u043d\u0438\u044f \u043a \u0432\u044b\u043f\u0443\u0441\u043a\u0443<\/h3>\n<p>\u0412\u0435\u0440\u0441\u0438\u0435\u0439 1.0 \u043c\u044b \u0441\u0442\u0430\u0432\u0438\u043c \u0437\u043d\u0430\u043a \u0434\u043e\u0432\u0435\u0440\u0438\u044f \u0437\u0430 \u0442\u0440\u0438 \u0433\u043e\u0434\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 cert-manager. \u0417\u0430 \u044d\u0442\u043e \u0432\u0440\u0435\u043c\u044f \u043e\u043d \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0440\u0430\u0437\u0432\u0438\u043b\u0441\u044f \u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0438 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u0438, \u043d\u043e \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0433\u043e &#8212; \u0432 \u0441\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0435. \u0421\u0435\u0433\u043e\u0434\u043d\u044f \u043c\u044b \u0432\u0438\u0434\u0438\u043c, \u043a\u0430\u043a \u043c\u043d\u043e\u0433\u0438\u0435 \u043b\u044e\u0434\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442 \u0435\u0433\u043e \u0434\u043b\u044f \u0437\u0430\u0449\u0438\u0442\u044b \u0441\u0432\u043e\u0438\u0445 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u043e\u0432 Kubernetes, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u0440\u043e\u0432\u043e\u0434\u044f\u0442 \u0432\u043d\u0435\u0434\u0440\u0435\u043d\u0438\u0435 \u0432 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u0447\u0430\u0441\u0442\u0438 \u044d\u043a\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u044b. \u0412 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0445 16 \u0432\u044b\u043f\u0443\u0441\u043a\u0430\u0445 \u0431\u044b\u043b\u043e \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e \u043a\u0443\u0447\u0430 \u043e\u0448\u0438\u0431\u043e\u043a. \u0410 \u0442\u043e, \u0447\u0442\u043e \u043d\u0430\u0434\u043e \u0431\u044b\u043b\u043e \u0441\u043b\u043e\u043c\u0430\u0442\u044c &#8212; \u0441\u043b\u043e\u043c\u0430\u043d\u043e. \u041d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u0445\u043e\u0434\u043e\u0432 \u043f\u043e \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 API \u0443\u043b\u0443\u0447\u0448\u0438\u043b\u0438 \u0435\u0433\u043e \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c\u0438. \u041c\u044b \u0440\u0435\u0448\u0438\u043b\u0438 1500 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u043d\u0430 GitHub \u0441 \u0435\u0449\u0435 \u0431\u043e\u043b\u044c\u0448\u0438\u043c \u0447\u0438\u0441\u043b\u043e\u043c \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u043d\u0430 \u0441\u043b\u0438\u044f\u043d\u0438\u0435 \u043e\u0442 253 \u0443\u0447\u0430\u0441\u0442\u043d\u0438\u043a\u043e\u0432 \u0441\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0430.<\/p>\n<p><strong>\u0412\u044b\u043f\u0443\u0441\u043a\u0430\u044f 1.0 \u043c\u044b \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0437\u0430\u044f\u0432\u043b\u044f\u0435\u043c, \u0447\u0442\u043e cert-manager &#8212; \u0437\u0440\u0435\u043b\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442. \u041c\u044b \u0442\u0430\u043a\u0436\u0435 \u043e\u0431\u0435\u0449\u0430\u0435\u043c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u044c \u043d\u0430\u0448\u0435\u0433\u043e API <\/strong><code>v1<\/code><strong>.<\/strong><\/p>\n<p>\u041e\u0433\u0440\u043e\u043c\u043d\u0430\u044f \u0431\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u043d\u043e\u0441\u0442\u044c \u0432\u0441\u0435\u043c, \u043a\u0442\u043e \u043d\u0430\u043c \u043f\u043e\u043c\u043e\u0433\u0430\u043b \u0434\u0435\u043b\u0430\u0442\u044c cert-manager \u0432\u0441\u0435 \u044d\u0442\u0438 \u0442\u0440\u0438 \u0433\u043e\u0434\u0430! \u041f\u0443\u0441\u0442\u044c \u0432\u0435\u0440\u0441\u0438\u044f 1.0 \u0441\u0442\u0430\u043d\u0435\u0442 \u043f\u0435\u0440\u0432\u044b\u043c \u0438\u0437 \u043c\u043d\u043e\u0433\u0438\u0445 \u0431\u0443\u0434\u0443\u0449\u0438\u0445 \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u0439.<\/p>\n<p>\u0412\u044b\u043f\u0443\u0441\u043a 1.0 &#8212; \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b\u0439 \u0432\u044b\u043f\u0443\u0441\u043a \u0441 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c\u0438 \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u043d\u044b\u043c\u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f\u043c\u0438:<\/p>\n<ul>\n<li>\n<p><code>v1<\/code> API;<\/p>\n<\/li>\n<li>\n<p>\u041a\u043e\u043c\u0430\u043d\u0434\u0430 <code>kubectl cert-manager status<\/code>, \u0434\u043b\u044f \u043f\u043e\u043c\u043e\u0449\u0438 \u043f\u0440\u0438 \u0430\u043d\u0430\u043b\u0438\u0437\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c;<\/p>\n<\/li>\n<li>\n<p>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043d\u043e\u0432\u0435\u0439\u0448\u0438\u0445 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b\u0445 API Kubernetes;<\/p>\n<\/li>\n<li>\n<p>\u0423\u043b\u0443\u0447\u0448\u0435\u043d\u043d\u043e\u0435 \u0436\u0443\u0440\u043d\u0430\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435;<\/p>\n<\/li>\n<li>\n<p>\u0423\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f ACME.<\/p>\n<\/li>\n<\/ul>\n<p>\u041f\u0435\u0440\u0435\u0434 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435\u043c \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0439\u0442\u0435 \u043f\u0440\u0438\u043c\u0435\u0447\u0430\u043d\u0438\u044f \u043a \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044e.<\/p>\n<h3>API v1<\/h3>\n<p>\u0412\u0435\u0440\u0441\u0438\u044f v0.16 \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u0430 \u0441 API <code>v1beta1<\/code>. \u042d\u0442\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u043e \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u043d\u044b\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0443\u043b\u0443\u0447\u0448\u0438\u043b\u043e \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044e \u043f\u043e \u043f\u043e\u043b\u044f\u043c API. \u0412\u0435\u0440\u0441\u0438\u044f 1.0 \u043e\u043f\u0438\u0440\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u044d\u0442\u043e \u0432\u0441\u0435 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e API <code>v1<\/code>. \u042d\u0442\u043e\u0442 API \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043d\u0430\u0448\u0438\u043c \u043f\u0435\u0440\u0432\u044b\u043c \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b\u043c, \u0432 \u0442\u043e \u0436\u0435 \u0432\u0440\u0435\u043c\u044f \u043c\u044b \u0443\u0436\u0435 \u0434\u0430\u0432\u0430\u043b\u0438 \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0438 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438, \u043d\u043e \u0441 API <code>v1<\/code> \u043c\u044b \u043e\u0431\u0435\u0449\u0430\u0435\u043c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u044c \u043d\u0430 \u0433\u043e\u0434\u044b \u0432\u043f\u0435\u0440\u0435\u0434.<\/p>\n<p>\u0412\u043d\u0435\u0441\u0435\u043d\u043d\u044b\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f (\u043f\u0440\u0438\u043c\u0435\u0447\u0430\u043d\u0438\u0435: \u043d\u0430\u0448\u0438 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430 \u0434\u043b\u044f \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u043e\u0437\u0430\u0431\u043e\u0442\u044f\u0442\u0441\u044f \u043e\u0431\u043e \u0432\u0441\u0435\u043c \u0434\u043b\u044f \u0432\u0430\u0441):<\/p>\n<p>\u0421\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442:<\/p>\n<ul>\n<li>\n<p><code>emailSANs<\/code> \u0442\u0435\u043f\u0435\u0440\u044c \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f <code>emailAddresses<\/code><\/p>\n<\/li>\n<li>\n<p><code>uriSANs<\/code> &#8212; <code>uris<\/code><\/p>\n<\/li>\n<\/ul>\n<p>\u042d\u0442\u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u044e\u0442 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u044c \u0441 \u0434\u0440\u0443\u0433\u0438\u043c\u0438 SAN (subject alt names, <em>\u043f\u0440\u0438\u043c. \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0447\u0438\u043a\u0430<\/em>), \u0430 \u0442\u0430\u043a\u0436\u0435 \u0441 Go API. \u041c\u044b \u0443\u0431\u0438\u0440\u0430\u0435\u043c \u044d\u0442\u043e\u0442 \u0442\u0435\u0440\u043c\u0438\u043d \u0438\u0437 \u043d\u0430\u0448\u0435\u0433\u043e API.<\/p>\n<h4>\u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435<\/h4>\n<p>\u0415\u0441\u043b\u0438 \u0432\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 Kubernetes 1.16+ &#8212; \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0438\u0440\u0443\u044e\u0449\u0438\u0435 webhooks \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0442 \u0432\u0430\u043c \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0438 \u0431\u0435\u0441\u0448\u043e\u0432\u043d\u043e  \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u0432\u0435\u0440\u0441\u0438\u044f\u043c\u0438 API <code>v1alpha2<\/code>, <code>v1alpha3<\/code>, <code>v1beta1<\/code> \u0438 <code>v1<\/code>. \u0421 \u0438\u0445 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0432\u044b \u0441\u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u043e\u0432\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e API \u0431\u0435\u0437 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0438\u043b\u0438 \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e\u0433\u043e \u0440\u0430\u0437\u0432\u0435\u0440\u0442\u044b\u0432\u0430\u043d\u0438\u044f \u0432\u0430\u0448\u0438\u0445 \u0441\u0442\u0430\u0440\u044b\u0445 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432. \u041c\u044b \u043d\u0430\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u043c \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u043c\u0430\u043d\u0438\u0444\u0435\u0441\u0442\u043e\u0432 \u0434\u043e API <code>v1<\/code>, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0435  \u0432\u0435\u0440\u0441\u0438\u0438 \u0441\u043a\u043e\u0440\u043e \u0431\u0443\u0434\u0443\u0442 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u044b \u0443\u0441\u0442\u0430\u0440\u0435\u0432\u0448\u0438\u043c\u0438. \u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 <code>legacy<\/code> \u0432\u0435\u0440\u0441\u0438\u0438 cert-manager \u0431\u0443\u0434\u0443\u0442 \u043f\u043e-\u043f\u0440\u0435\u0436\u043d\u0435\u043c\u0443 \u0438\u043c\u0435\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u0442\u043e\u043b\u044c\u043a\u043e \u043a <code>v1<\/code>, \u0448\u0430\u0433\u0438 \u043f\u043e \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044e \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0439\u0442\u0438 <a href=\"https:\/\/cert-manager.io\/docs\/installation\/upgrading\/upgrading-0.16-1.0\/\" rel=\"noopener noreferrer nofollow\">\u0437\u0434\u0435\u0441\u044c<\/a>.<\/p>\n<h3>\u041a\u043e\u043c\u0430\u043d\u0434\u0430 kubectl cert-manager status<\/h3>\n<p>C \u043d\u0430\u0448\u0438\u043c\u0438 \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f\u043c\u0438 \u0432 \u043d\u0430\u0448\u0435\u043c \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0438 \u043a <code>kubectl<\/code> \u0441\u0442\u0430\u043b\u043e \u043f\u0440\u043e\u0449\u0435 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0435 \u0441 \u043d\u0435\u0432\u044b\u0434\u0430\u0447\u0435\u0439 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432. <code>kubectl cert-manager status<\/code> \u0442\u0435\u043f\u0435\u0440\u044c \u0432\u044b\u0434\u0430\u0435\u0442 \u043d\u0430\u043c\u043d\u043e\u0433\u043e \u0431\u043e\u043b\u044c\u0448\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0441 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430\u043c\u0438, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u044d\u0442\u0430\u043f \u0432\u044b\u0434\u0430\u0447\u0438 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430.<\/p>\n<p>\u041f\u043e\u0441\u043b\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c <code>kubectl cert-manager status certificate &lt;\u0438\u043c\u044f-\u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430&gt;<\/code>, \u0447\u0442\u043e \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u0442 \u043a \u043f\u043e\u0438\u0441\u043a\u0443 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430 \u0441 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u043c \u0438\u043c\u0435\u043d\u0435\u043c \u0438 \u043b\u044e\u0431\u044b\u0445 \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0445 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 CertificateRequest, Secret, Issuer, \u0430 \u0442\u0430\u043a\u0436\u0435 Order \u0438 Challenges \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 \u043e\u0442 ACME.<\/p>\n<p>\u041f\u0440\u0438\u043c\u0435\u0440 \u043e\u0442\u043b\u0430\u0434\u043a\u0438 \u0435\u0449\u0435 \u043d\u0435 \u0433\u043e\u0442\u043e\u0432\u043e\u0433\u043e \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430:<\/p>\n<pre><code>$ 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: &lt;none&gt; Not After: &lt;none&gt; Renewal Time: &lt;none&gt; 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 <\/code><\/pre>\n<p>\u041a\u043e\u043c\u0430\u043d\u0434\u0430 \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043c\u043e\u0447\u044c \u0443\u0437\u043d\u0430\u0442\u044c \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u043e \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u043c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430. \u041f\u0440\u0438\u043c\u0435\u0440 \u0434\u0435\u0442\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0434\u043b\u044f \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430, \u0432\u044b\u0434\u0430\u043d\u043d\u043e\u0433\u043e Letsencrypt:<\/p>\n<pre><code>$ 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:  &lt;none&gt; 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 [...] <\/code><\/pre>\n<h3>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043d\u043e\u0432\u0435\u0439\u0448\u0438\u0445 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b\u0445 API Kubernetes<\/h3>\n<p>Cert-manager \u0431\u044b\u043b \u043e\u0434\u043d\u0438\u043c \u0438\u0437 \u043f\u0435\u0440\u0432\u044b\u0445, \u043a\u0442\u043e \u0432\u043d\u0435\u0434\u0440\u0438\u043b Kubernetes CRDs. \u042d\u0442\u043e, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043d\u0430\u0448\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0432\u0435\u0440\u0441\u0438\u0439 Kubernetes \u0432\u043f\u043b\u043e\u0442\u044c \u0434\u043e 1.11, \u043f\u0440\u0438\u0432\u0435\u043b\u0438 \u043a \u0442\u043e\u043c\u0443, \u0447\u0442\u043e \u043d\u0430\u043c \u043d\u0430\u0434\u043e \u0431\u044b\u043b\u043e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c \u0443\u0441\u0442\u0430\u0440\u0435\u0432\u0448\u0438\u0439 <code>apiextensions.k8s.io\/v1beta1<\/code> \u0434\u043b\u044f \u043d\u0430\u0448\u0438\u0445 CRD, \u0430 \u0442\u0430\u043a\u0436\u0435 <code>admissionregistration.k8s.io\/v1beta1<\/code> \u0434\u043b\u044f \u043d\u0430\u0448\u0438\u0445 webhooks. \u0421\u0435\u0439\u0447\u0430\u0441 \u043e\u043d\u0438 \u0443\u0441\u0442\u0430\u0440\u0435\u043b\u0438 \u0438 \u0431\u0443\u0434\u0443\u0442 \u0443\u0434\u0430\u043b\u0435\u043d\u044b \u0432 Kubernetes \u0441 \u0432\u0435\u0440\u0441\u0438\u0438 1.22. \u0421 \u043d\u0430\u0448\u0435\u0439 1.0 \u043c\u044b \u0442\u0435\u043f\u0435\u0440\u044c \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u043c \u043f\u043e\u043b\u043d\u0443\u044e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 <code>apiextensions.k8s.io\/v1<\/code> \u0438 <code>admissionregistration.k8s.io\/v1<\/code> \u0434\u043b\u044f Kubernetes 1.16 (\u0433\u0434\u0435 \u043e\u043d\u0438 \u0431\u044b\u043b\u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u044b) \u0438 \u043d\u043e\u0432\u0435\u0435. \u0414\u043b\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0445 \u0432\u0435\u0440\u0441\u0438\u0439 \u043c\u044b \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u0435\u043c \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0442\u044c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 <code>v1beta1<\/code> \u0432 \u043d\u0430\u0448\u0435\u0439 <code>legacy<\/code> \u0432\u0435\u0440\u0441\u0438\u0438.<\/p>\n<h3>\u0423\u043b\u0443\u0447\u0448\u0435\u043d\u043d\u043e\u0435 \u0436\u0443\u0440\u043d\u0430\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435<\/h3>\n<p>\u0412 \u044d\u0442\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u043c\u044b \u043e\u0431\u043d\u043e\u0432\u0438\u043b\u0438 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443 \u0434\u043b\u044f \u0436\u0443\u0440\u043d\u0430\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u043e <code>klog\/v2<\/code>, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u043e\u0439 \u0432 Kubernetes 1.19. \u041c\u044b \u0442\u0430\u043a\u0436\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c \u043a\u0430\u0436\u0434\u044b\u0439 \u0436\u0443\u0440\u043d\u0430\u043b, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0438\u0448\u0435\u043c, \u0434\u043b\u044f \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0435\u043c\u0443 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0433\u043e \u0443\u0440\u043e\u0432\u043d\u044f. \u041c\u044b \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e\u0432\u0430\u043b\u0438\u0441\u044c \u043f\u0440\u0438 \u044d\u0442\u043e\u043c <a href=\"https:\/\/github.com\/kubernetes\/community\/blob\/master\/contributors\/devel\/sig-instrumentation\/logging.md\" rel=\"noopener noreferrer nofollow\">\u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e\u043c \u043e\u0442 Kubernetes<\/a>. \u0415\u0441\u0442\u044c \u043f\u044f\u0442\u044c (\u043f\u043e \u0444\u0430\u043a\u0442\u0443 &#8212; \u0448\u0435\u0441\u0442\u044c, <em>\u043f\u0440\u0438\u043c. \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0447\u0438\u043a\u0430<\/em>) \u0443\u0440\u043e\u0432\u043d\u0435\u0439 \u0436\u0443\u0440\u043d\u0430\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u043d\u0430\u0447\u0438\u043d\u0430\u044f \u0441 <code>Error<\/code> (\u0443\u0440\u043e\u0432\u0435\u043d\u044c 0), \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b\u0432\u043e\u0434\u0438\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u0430\u0436\u043d\u044b\u0435 \u043e\u0448\u0438\u0431\u043a\u0438, \u0438 \u0437\u0430\u043a\u0430\u043d\u0447\u0438\u0432\u0430\u044f <code>Trace<\/code> (\u0443\u0440\u043e\u0432\u0435\u043d\u044c 5), \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u0443\u0437\u043d\u0430\u0442\u044c \u0442\u043e\u0447\u043d\u043e, \u0447\u0442\u043e \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442. \u042d\u0442\u0438\u043c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435\u043c \u043c\u044b \u0441\u043e\u043a\u0440\u0430\u0442\u0438\u043b\u0438 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0436\u0443\u0440\u043d\u0430\u043b\u043e\u0432, \u0435\u0441\u043b\u0438 \u0432\u044b\u043c \u043d\u0435 \u043d\u0443\u0436\u043d\u0430 \u043e\u0442\u043b\u0430\u0434\u043e\u0447\u043d\u0430\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 cert-manager.<\/p>\n<p>\u0421\u043e\u0432\u0435\u0442: \u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e cert-manager \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u0435 2 (<code>Info<\/code>), \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u0435\u0440\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u044d\u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f <code>global.logLevel<\/code> \u0432 Helm chart.<\/p>\n<p>\u041f\u0440\u0438\u043c\u0435\u0447\u0430\u043d\u0438\u0435: \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440 \u0436\u0443\u0440\u043d\u0430\u043b\u043e\u0432 &#8212; \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0435 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u043e \u043f\u0440\u0438 \u0443\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u0438 \u043d\u0435\u043f\u043e\u043b\u0430\u0434\u043e\u043a. \u0414\u043b\u044f \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u044c\u0442\u0435\u0441\u044c \u0441 \u043d\u0430\u0448\u0438\u043c <a href=\"https:\/\/cert-manager.io\/docs\/faq\/troubleshooting\/\" rel=\"noopener noreferrer nofollow\">\u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e\u043c<\/a>.<\/p>\n<p><strong>N.B. \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0430<\/strong>: \u0427\u0442\u043e\u0431\u044b \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u0443\u0437\u043d\u0430\u0442\u044c, \u043a\u0430\u043a \u044d\u0442\u043e \u0432\u0441\u0451 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043f\u043e\u0434 \u043a\u0430\u043f\u043e\u0442\u043e\u043c \u0443 Kubernetes, \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0446\u0435\u043d\u043d\u044b\u0435 \u0441\u043e\u0432\u0435\u0442\u044b \u0443 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u043e\u0432-\u043f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u0435\u0439, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u0443\u044e \u043f\u043e\u043c\u043e\u0449\u044c \u0442\u0435\u0445\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438, \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0438\u043d\u044f\u0442\u044c \u0443\u0447\u0430\u0441\u0442\u0438\u0435 \u0432 \u043e\u043d\u043b\u0430\u0439\u043d-\u0438\u043d\u0442\u0435\u043d\u0441\u0438\u0432\u0430\u0445 <a href=\"http:\/\/to.slurm.io\/9kYVcA\" rel=\"noopener noreferrer nofollow\">Kubernetes \u0411\u0430\u0437\u0430<\/a>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u043e\u0439\u0434\u0451\u0442 28-30 \u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044f, \u0438 <a href=\"http:\/\/to.slurm.io\/8tkfEg\" rel=\"noopener noreferrer nofollow\">Kubernetes \u041c\u0435\u0433\u0430<\/a>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u043e\u0439\u0434\u0451\u0442 14\u201316 \u043e\u043a\u0442\u044f\u0431\u0440\u044f. <\/p>\n<h3>\u0423\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f ACME<\/h3>\n<p>\u041d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0447\u0430\u0441\u0442\u043e\u0435 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435 cert-manager \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0441\u0432\u044f\u0437\u0430\u043d\u043e \u0441 \u0432\u044b\u043f\u0443\u0441\u043a\u043e\u043c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 \u043e\u0442 Let&#8217;s Encrypt \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f ACME. \u0412\u0435\u0440\u0441\u0438\u044f 1.0 \u043f\u0440\u0438\u043c\u0435\u0447\u0430\u0442\u0435\u043b\u044c\u043d\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043e\u0442\u0437\u044b\u0432\u043e\u0432 \u043e\u0442 \u0441\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0430 \u0434\u043b\u044f \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0434\u0432\u0443\u0445 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u0445, \u043d\u043e \u0432\u0430\u0436\u043d\u044b\u0445 \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u0439 \u0432 \u043d\u0430\u0448 ACME issuer.<\/p>\n<h4>\u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043a\u043b\u044e\u0447\u0430 \u0443\u0447\u0435\u0442\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u0438<\/h4>\n<p>\u0415\u0441\u043b\u0438 \u0432\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b ACME \u0432 \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u043e\u0431\u044a\u0435\u043c\u0430\u0445, \u0432\u044b \u0441\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 \u043e\u0434\u043d\u0443 \u0438 \u0442\u0443 \u0436\u0435 \u0443\u0447\u0435\u0442\u043d\u0443\u044e \u0437\u0430\u043f\u0438\u0441\u044c \u043d\u0430 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430\u0445, \u0442\u0430\u043a \u0447\u0442\u043e \u0432\u0430\u0448\u0438 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u043f\u043e \u0432\u044b\u043f\u0443\u0441\u043a\u0443 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 \u0431\u0443\u0434\u0443\u0442 \u043a\u0430\u0441\u0430\u0442\u044c\u0441\u044f \u0438\u0445 \u0432\u0441\u0435\u0445. \u042d\u0442\u043e \u0443\u0436\u0435 \u0431\u044b\u043b\u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0432 cert-manager \u043f\u0440\u0438 \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 \u0441\u0435\u043a\u0440\u0435\u0442\u0430, \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0433\u043e \u0432 <code>privateKeySecretRef<\/code>. \u0422\u0430\u043a\u043e\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0431\u044b\u043b \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0433\u043b\u044e\u0447\u043d\u044b\u0439, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 cert-manager \u043f\u044b\u0442\u0430\u043b\u0441\u044f \u0431\u044b\u0442\u044c \u043f\u043e\u043b\u0435\u0437\u043d\u044b\u043c \u0438 \u0440\u0430\u0434\u043e\u0441\u0442\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u043b \u043d\u043e\u0432\u044b\u0439 \u043a\u043b\u044e\u0447 \u0443\u0447\u0435\u0442\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u0438, \u0435\u0441\u043b\u0438 \u0435\u0433\u043e \u043d\u0435 \u043d\u0430\u0445\u043e\u0434\u0438\u043b. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043c\u044b \u0438 \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u0438 <code>disableAccountKeyGeneration<\/code>, \u0447\u0442\u043e\u0431\u044b \u0437\u0430\u0449\u0438\u0442\u0438\u0442\u044c \u0432\u0430\u0441 \u043e\u0442 \u0442\u0430\u043a\u043e\u0433\u043e \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044f, \u0435\u0441\u043b\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u0432 <code>true<\/code> &#8212; cert-manager \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u043a\u043b\u044e\u0447 \u0438 \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0434\u0438\u0442 \u0432\u0430\u0441 \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u0435\u043c\u0443 \u043d\u0435 \u0431\u044b\u043b \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d \u043a\u043b\u044e\u0447 \u0443\u0447\u0435\u0442\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u0438.<\/p>\n<pre><code>apiVersion: cert-manager.io\/v1 kind:<\/code><\/pre>\n<p><\/br><\/p>\n<p><\/br><\/p>\n<\/div>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-309438","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/309438","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=309438"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/309438\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=309438"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=309438"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=309438"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}