{"id":376205,"date":"2024-05-21T06:44:39","date_gmt":"2024-05-21T06:44:39","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=376205"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=376205","title":{"rendered":"<span>Ceph: \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u0435\u043c \u0431\u0430\u0437\u043e\u0432\u044b\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438 \u0441 Hashicorp Nomad<\/span>"},"content":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-1\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/post_images\/f17\/6bf\/fa2\/f176bffa201c84f54d4d996931c81969.png\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/f17\/6bf\/fa2\/f176bffa201c84f54d4d996931c81969.png\"\/><\/div>\n<p>  \u041f\u0440\u0438\u0432\u0435\u0442! \u042f \u0412\u043b\u0430\u0434\u0438\u043c\u0438\u0440 \u0418\u0432\u0430\u043d\u043e\u0432, \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 <a href=\"https:\/\/selectel.ru\/services\/dedicated\/?utm_source=habr.com&amp;utm_medium=referral&amp;utm_campaign=dedicated_article_ceph_160524_content\">\u0432\u044b\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432<\/a> \u0432 Selectel. \u041c\u044b \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0447\u0430\u0441\u0442\u043e \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0438\u0440\u0443\u0435\u043c \u0441 \u043f\u043e\u0434\u0445\u043e\u0434\u0430\u043c\u0438, \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430\u043c\u0438 \u0438 \u0440\u0435\u0448\u0435\u043d\u0438\u044f\u043c\u0438. \u0412 \u043e\u0434\u043d\u043e\u043c \u0438\u0437 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u043e\u0432 \u0434\u043e\u0431\u0440\u0430\u043b\u0438\u0441\u044c \u0434\u043e Ceph: \u0441\u0434\u0435\u043b\u0430\u043b\u0438 \u0442\u0440\u0435\u043d\u0430\u0436\u0435\u0440, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043c\u043e\u0436\u043d\u043e \u00ab\u043f\u043e\u0442\u044b\u043a\u0430\u0442\u044c\u00bb \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430, \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u0433\u0438\u043f\u043e\u0442\u0435\u0437\u044b, \u0447\u0442\u043e-\u0442\u043e \u0441\u043b\u043e\u043c\u0430\u0442\u044c\/\u043f\u043e\u0447\u0438\u043d\u0438\u0442\u044c, \u043d\u0435 \u0441\u043e\u0431\u0438\u0440\u0430\u044f \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u0436\u0435\u043b\u0435\u0437\u043d\u044b\u0439 \u043a\u043b\u0430\u0441\u0442\u0435\u0440. \u0412 \u0441\u043b\u0443\u0447\u0430\u0435 \u0444\u0435\u0439\u043b\u0430 \u044d\u0442\u043e\u0442 \u0442\u0440\u0435\u043d\u0430\u0436\u0435\u0440 \u043c\u043e\u0436\u043d\u043e \u0440\u0430\u0437\u0432\u0435\u0440\u043d\u0443\u0442\u044c \u0437\u0430\u043d\u043e\u0432\u043e \u0432 \u043f\u0430\u0440\u0443 \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u044b\u0445 \u043a\u043e\u043c\u0430\u043d\u0434.<\/p>\n<p>  \u0422\u0430\u043a \u0438 \u043f\u043e\u044f\u0432\u0438\u043b\u0430\u0441\u044c \u0438\u0434\u0435\u044f \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u044d\u0442\u0443 \u0441\u0442\u0430\u0442\u044c\u044e. \u042f \u043f\u043e\u043a\u0430\u0436\u0443, \u043a\u0430\u043a \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c Ceph \u043a \u043e\u0440\u043a\u0435\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0443 Nomad, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0434\u043b\u044f \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432. \u0415\u0441\u043b\u0438 \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u043e\u0431\u043b\u0438\u0436\u0435 \u043f\u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f \u0441 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u043c\u0438 \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u0438 \u0438 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f Ceph, \u043f\u0440\u043e\u0448\u0443 \u043f\u043e\u0434 \u043a\u0430\u0442! \u0410 \u0435\u0441\u043b\u0438 \u0443\u0436\u0435 \u0437\u043d\u0430\u043a\u043e\u043c\u044b \u2014 \u043f\u0440\u043e\u0448\u0443 \u0432 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0438, \u043f\u043e\u0434\u0435\u043b\u0438\u0442\u0435\u0441\u044c \u0441\u0432\u043e\u0438\u043c \u043e\u043f\u044b\u0442\u043e\u043c.<a name=\"habracut\"><\/a><\/p>\n<p>  Ceph \u2014 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u043c\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 (SDS, Software Defined Storage). \u0415\u0441\u043b\u0438 \u043a\u043e\u0440\u043e\u0442\u043a\u043e, \u043e\u043d \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u044f\u0435\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0434\u0438\u0441\u043a\u043e\u0432 \u043e\u0431\u044b\u0447\u043d\u043e\u0439 \u0441\u0435\u0442\u044c\u044e, \u043b\u0443\u0447\u0448\u0435 \u043e\u0442 10 GbE. \u0425\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e \u043a \u0432\u044b\u0445\u043e\u0434\u0443 \u0438\u0437 \u0441\u0442\u0440\u043e\u044f \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u0434\u0438\u0441\u043a\u043e\u0432, \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432, \u0441\u0442\u043e\u0435\u043a \u0438\u043b\u0438 \u0434\u0430\u0436\u0435 \u0434\u0430\u0442\u0430-\u0446\u0435\u043d\u0442\u0440\u043e\u0432. \u0412 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0430 \u0432\u0435\u043d\u0434\u043e\u0440\u043d\u044b\u0445 \u0421\u0425\u0414, Ceph \u0440\u0430\u0437\u0432\u043e\u0440\u0430\u0447\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043f\u043e\u0447\u0442\u0438 \u043d\u0430 \u043b\u044e\u0431\u043e\u043c \u0436\u0435\u043b\u0435\u0437\u0435 \u0438 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u043e\u0432 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u0434\u0430\u043d\u043d\u044b\u043c: \u043e\u0431\u044a\u0435\u043a\u0442\u043d\u044b\u0439, \u0444\u0430\u0439\u043b\u043e\u0432\u044b\u0439 \u0438 \u0431\u043b\u043e\u0447\u043d\u044b\u0439. \u0412 \u0440\u0430\u043c\u043a\u0430\u0445 \u0441\u0442\u0430\u0442\u044c\u0438 \u044f \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u044e \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0438\u0437 \u043d\u0438\u0445.<\/p>\n<blockquote><p>\u041f\u0440\u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0435 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438 \u044f \u0438\u0441\u0445\u043e\u0436\u0443 \u0438\u0437 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0432\u044b \u0437\u043d\u0430\u043a\u043e\u043c\u044b \u0441 \u043e\u0431\u0449\u0435\u043f\u0440\u0438\u043d\u044f\u0442\u044b\u043c\u0438 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043c\u0438 \u0438 \u0441\u043e\u043a\u0440\u0430\u0449\u0435\u043d\u0438\u044f\u043c\u0438. \u0410\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 Ceph \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u043e\u043f\u0438\u0441\u0430\u043d\u0430 <a href=\"https:\/\/docs.ceph.com\/en\/reef\/\">\u0432 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438<\/a>, \u043d\u0430 \u0425\u0430\u0431\u0440\u0435 \u0435\u0441\u0442\u044c <a href=\"https:\/\/habr.com\/ru\/articles\/313644\/\">\u0441\u0442\u0430\u0442\u044c\u044f \u0441 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430\u043c\u0438<\/a>, \u0430 \u0443 \u0421\u041b\u0401\u0420\u041c \u2014 <a href=\"https:\/\/slurm.io\/ceph?utm_source=blog\">\u043a\u043b\u0430\u0441\u0441\u043d\u044b\u0439 \u043a\u0443\u0440\u0441<\/a>.  <\/p><\/blockquote>\n<p>  Nomad \u2014 \u044d\u0442\u043e \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a \u0434\u043b\u044f \u0432\u0430\u0448\u0438\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439. \u0411\u043b\u0438\u0436\u0430\u0439\u0448\u0438\u0439 \u0430\u043d\u0430\u043b\u043e\u0433 \u2014 Kubernetes. \u0412 Nomad \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043b\u0435\u0433\u0447\u0435 \u0432\u043a\u0430\u0442\u0438\u0442\u044c\u0441\u044f: \u043e\u043d \u043f\u0440\u043e\u0441\u0442 \u0432 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0435 \u043a \u0440\u0430\u0431\u043e\u0442\u0435. \u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438, \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Hashicorp, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0442 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044e \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u044d\u043a\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u044b \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0431\u043e\u0439: Nomad, Consul, Vault \u0438 Terraform. \u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0435\u0441\u0442\u044c \u043e\u043f\u044b\u0442 \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u043b\u044e\u0431\u044b\u043c \u0438\u0437 \u044d\u0442\u0438\u0445 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432, \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f \u0441 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u043e\u043c \u0437\u0430\u0434\u0430\u043d\u0438\u0439 \u043d\u0435 \u0441\u043e\u0441\u0442\u0430\u0432\u0438\u0442 \u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e \u0442\u0440\u0443\u0434\u0430.<\/p>\n<p>  <b>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044e, \u0435\u0441\u043b\u0438 \u043d\u0435 \u0445\u043e\u0442\u0438\u0442\u0435 \u0447\u0438\u0442\u0430\u0442\u044c \u0442\u0435\u043a\u0441\u0442 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e:<\/b><\/p>\n<p>  \u2192 <a href=\"#1\">\u0417\u0430\u0447\u0435\u043c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0442\u044c Ceph \u043a Nomad<\/a><br \/>  \u2192 <a href=\"#2\">\u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430 \u0441\u0442\u0435\u043d\u0434\u0430<\/a><br \/>  \u2192 <a href=\"#3\">\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 OSD<\/a><br \/>  \u2192 <a href=\"#4\">\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043f\u0443\u043b\u0430 \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f<\/a><br \/>  \u2192 <a href=\"#5\">\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430<\/a><br \/>  \u2192 <a href=\"#6\">\u0420\u0430\u0437\u0432\u043e\u0440\u0430\u0447\u0438\u0432\u0430\u0435\u043c Nomad<\/a><br \/>  \u2192 <a href=\"#7\">\u0413\u0434\u0435 \u0445\u0440\u0430\u043d\u044f\u0442\u0441\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 Ceph<\/a><br \/>  \u2192 <a href=\"#8\">\u041e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u0435 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430<\/a><br \/>  \u2192 <a href=\"#9\">\u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435<\/a><\/p>\n<p>  <a name=\"1\"><\/a><font color=\"#EB4247\"><\/p>\n<h2>\u0417\u0430\u0447\u0435\u043c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0442\u044c Ceph \u043a Nomad<\/h2>\n<p><\/font><br \/>  Nomad \u043c\u043e\u0436\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c\u0438, \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430\u043c\u0438 \u0438 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u043c\u0430\u0448\u0438\u043d\u0430\u043c\u0438 \u0432 \u043b\u044e\u0431\u043e\u043c \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0435. \u0410 \u0447\u0442\u043e\u0431\u044b \u043c\u0430\u0441\u0448\u0442\u0430\u0431 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0431\u044b\u043b \u043b\u044e\u0431\u044b\u043c, \u043d\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0430\u0442\u044c \u043d\u0430\u0448\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043c\u0435\u0436\u0434\u0443 \u0445\u043e\u0441\u0442\u0430\u043c\u0438 \u043e\u0440\u043a\u0435\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430. \u0422\u0443\u0442-\u0442\u043e \u0438 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u0442\u0441\u044f Ceph \u2014 \u0431\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u044f \u0435\u043c\u0443 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u043c\u043e\u0436\u043d\u043e \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0430\u0442\u044c \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c \u0438 \u043d\u0435 \u0437\u0430\u0432\u0438\u0441\u0435\u0442\u044c \u043e\u0442 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0445 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u0445\u043e\u0441\u0442\u0430.<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/post_images\/e88\/793\/ccd\/e88793ccd78e375da8ef7d26cebad5b2.png\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/e88\/793\/ccd\/e88793ccd78e375da8ef7d26cebad5b2.png\"\/><\/div>\n<p>  <i>\u041e\u0431\u0449\u0430\u044f \u0441\u0445\u0435\u043c\u0430 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0431\u043e\u0439.<\/i><\/p>\n<p>  \u0412\u043c\u0435\u0441\u0442\u043e Nomad \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c K8s, \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0439 \u0441\u0435\u0440\u0432\u0435\u0440 \u0438\u043b\u0438 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438. \u041e\u0442\u043b\u0438\u0447\u0430\u0442\u044c\u0441\u044f \u0431\u0443\u0434\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0431\u043b\u043e\u0447\u043d\u043e\u0433\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u0434\u0430\u043d\u043d\u044b\u043c: CSI, RBD, iSCSI \u0438\u043b\u0438 NVME-OF. Nomad \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 CSI Driver (Container Storage Interface Driver). \u042d\u0442\u043e \u0443\u043d\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043e\u043f\u0438\u0441\u0430\u043d\u043e \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u043c\u0435\u0436\u0434\u0443 Nomad \u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439 \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f.<\/p>\n<p>  <a href=\"https:\/\/docs.ceph.com\/en\/latest\/rbd\/rbd-nomad\/%23\">Ceph-CSI<\/a> \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u0434\u0432\u0443\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432:<\/p>\n<ul>\n<li>Ceph-CSI Controller \u2014 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0441 Ceph, \u0441\u043e\u0437\u0434\u0430\u0435\u0442 \u0438 \u0443\u0434\u0430\u043b\u044f\u0435\u0442 \u0442\u043e\u043c\u0430, \u043d\u0430\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u043f\u0440\u0430\u0432\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u0438 \u0442. \u0434.;<\/li>\n<li>Ceph-CSI Node \u2014 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u0443\u0437\u043b\u0435 \u0438 \u043c\u043e\u043d\u0442\u0438\u0440\u0443\u0435\u0442 \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u0437\u0430\u0434\u0430\u0447\u0438 \u0442\u043e\u043c\u0430.<\/li>\n<\/ul>\n<p>  \u041f\u0440\u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0435 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438 \u043c\u044b \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043b\u0438 ChefCookbook, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u0443\u0435\u0442 \u0434\u0435\u043f\u043b\u043e\u0439 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 Ceph \u0438 \u0432 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043a\u043e\u043c\u0430\u043d\u0434 \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u0442 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0435 test-kitchen. \u0421 \u0435\u0433\u043e \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043c\u043e\u0436\u043d\u043e \u0440\u0430\u0437\u0432\u0435\u0440\u043d\u0443\u0442\u044c \u0442\u0435\u0441\u0442\u043e\u0432\u044b\u0439 \u043a\u043b\u0430\u0441\u0442\u0435\u0440 \u0443 \u0441\u0435\u0431\u044f \u043d\u0430 \u043d\u043e\u0443\u0442\u0431\u0443\u043a\u0435 \u0432 \u043f\u0430\u0440\u0443 \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u044b\u0445 \u043a\u043e\u043c\u0430\u043d\u0434. \u041f\u0440\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0435 \u0441\u0442\u0435\u043d\u0434\u0430 \u0440\u0430\u0437\u0432\u0435\u0440\u043d\u0435\u043c \u0447\u0435\u0442\u044b\u0440\u0435 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u043c\u0430\u0448\u0438\u043d\u044b: \u0442\u0440\u0438 \u043f\u043e\u0434 \u043a\u043b\u0430\u0441\u0442\u0435\u0440 Ceph \u0438 \u043e\u0434\u043d\u0443 \u0434\u043b\u044f \u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430. \u0423 \u043d\u0430\u0441 \u044d\u0442\u0438\u043c \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u043c \u0431\u0443\u0434\u0435\u0442 Nomad. \u0418\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f \u043f\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0435 \u00ab\u0442\u0440\u0435\u043d\u0430\u0436\u0435\u0440\u0430\u00bb \u043e\u043f\u0438\u0441\u0430\u043d\u0430 <a href=\"https:\/\/github.com\/nanalncux\/demo-ceph\/tree\/main\">\u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438<\/a>.<\/p>\n<p>  <a href=\"https:\/\/selectel.ru\/services\/cloud\/storage\/?utm_source=habr.com&amp;utm_medium=referral&amp;utm_campaign=storage_article_ceph_160524_banner_006_ord\"><\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/tg\/xo\/ss\/tgxossbniikzubbzrfjobss2hyq.png\" data-src=\"https:\/\/habrastorage.org\/webt\/tg\/xo\/ss\/tgxossbniikzubbzrfjobss2hyq.png\"\/><\/div>\n<p><\/a><\/p>\n<p>  <a name=\"2\"><\/a><font color=\"#EB4247\"><\/p>\n<h2>\u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430 \u0441\u0442\u0435\u043d\u0434\u0430<\/h2>\n<p><\/font><br \/>  \u0412\u043a\u0440\u0430\u0442\u0446\u0435, \u0432\u0441\u0435 \u0441\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u043a \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0445 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0435\u0439 \u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0443 test-kitchen:<\/p>\n<pre><code class=\"plaintext\"># \u0414\u0435\u043f\u043b\u043e\u0439 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430  :~$ kitchen converge # \u041b\u043e\u0433\u0438\u043d\u0438\u043c\u0441\u044f \u043d\u0430 \u043f\u0435\u0440\u0432\u0443\u044e \u043d\u043e\u0434\u0443 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 :~$ kitchen login node1 # \u0420\u0430\u0437\u0431\u0438\u0440\u0430\u0435\u043c \u043a\u043b\u0430\u0441\u0442\u0435\u0440, \u0443\u0434\u0430\u043b\u044f\u0435\u043c \u0434\u0430\u043d\u043d\u044b\u0435 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d :~$ kitchen destroy <\/code><\/pre>\n<p>  \u0415\u0441\u043b\u0438 \u0432\u0441\u0435 \u043f\u0440\u043e\u0448\u043b\u043e \u0443\u0434\u0430\u0447\u043d\u043e, \u043c\u044b \u0441\u043c\u043e\u0436\u0435\u043c \u0437\u0430\u043b\u043e\u0433\u0438\u043d\u0438\u0442\u044c\u0441\u044f \u043d\u0430 \u043d\u043e\u0434\u0443 \u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043d\u0430\u0448\u0435\u0433\u043e \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430:<\/p>\n<pre><code class=\"plaintext\">vagrant@node1:~# ceph -s   cluster:     id:     6ba7d13c-642b-11ee-b8b2-c70be95e3c50     health: HEALTH_WARN             OSD count 0 &lt; osd_pool_default_size 3   services:     mon: 3 daemons, quorum node1,node2,node3 (age 28m)     mgr: node1.cauksk(active, since 44m), standbys: node2.ecffgz     osd: 0 osds: 0 up, 0 in   data:     pools:   0 pools, 0 pgs     objects: 0 objects, 0 B     usage:   0 B used, 0 B \/ 0 B avail     pgs:  # \u0415\u0441\u043b\u0438 \u0432\u044b \u043d\u0435 \u043c\u0435\u043d\u044f\u043b\u0438 \u0430\u0434\u0440\u0435\u0441\u0430\u0446\u0438\u044e \u0432 \u0444\u0430\u0439\u043b\u0435 kitchen.yml Ceph Dashboard \u0431\u0443\u0434\u0435\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u0441 \u0432\u0430\u0448\u0435\u0433\u043e \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0445\u043e\u0441\u0442\u0430. Ceph Dashboard - https:\/\/192.168.56.6:8443\/ \u0438\u043b\u0438 https:\/\/192.168.56.5:8443\/ (\u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0442\u043e\u0433\u043e, \u0433\u0434\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0441\u0435\u0440\u0432\u0438\u0441 mgr) \u041a\u0440\u0435\u0434\u044b \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e: login - ceph-admin, pass - pa$$w0rd <\/code><\/pre>\n<p>  \u0418\u0437 \u0432\u044b\u0432\u043e\u0434\u0430 \u0432\u044b\u0448\u0435 \u043c\u044b \u0432\u0438\u0434\u0438\u043c, \u0447\u0442\u043e \u043a\u043b\u0430\u0441\u0442\u0435\u0440 \u0440\u0430\u0437\u0432\u0435\u0440\u043d\u0443\u0442 \u0438 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437:<\/p>\n<ul>\n<li>\u0442\u0440\u0435\u0445 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u043e\u0432 (mon), \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0442 \u043a\u0432\u043e\u0440\u0443\u043c \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0431\u043e\u0439;<\/li>\n<li>\u0434\u0432\u0443\u0445 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u043e\u0432, \u043e\u0434\u0438\u043d \u0430\u043a\u0442\u0438\u0432\u0435\u043d, \u0432\u0442\u043e\u0440\u043e\u0439 \u00ab\u043d\u0430 \u043f\u043e\u0434\u0445\u0432\u0430\u0442\u0435\u00bb;<\/li>\n<li>\u043d\u043e\u043b\u044f \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 OSD.<\/li>\n<\/ul>\n<p>  \u0414\u0430\u043d\u043d\u044b\u0445 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 \u043d\u0435\u0442, \u043d\u0438\u043a\u0430\u043a\u0438\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u043d\u044b\u0435 \u0444\u043b\u0430\u0433\u0438 \u043d\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u044b. \u0410 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 OSD \u2014 \u043f\u0440\u0438\u0447\u0438\u043d\u0430, \u043f\u043e \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043a\u043b\u0430\u0441\u0442\u0435\u0440 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 warning.<\/p>\n<p>  <a name=\"3\"><\/a><font color=\"#EB4247\"><\/p>\n<h2>\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 OSD<\/h2>\n<p><\/font><br \/>  \u0421\u0435\u0440\u0432\u0438\u0441\u044b Ceph \u043a\u0440\u0443\u0442\u044f\u0442\u0441\u044f \u0432 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430\u0445 \u043f\u043e\u0434 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u043c systemd. \u0423 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 \u0435\u0441\u0442\u044c \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 ceph orch, \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0442\u044c \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u0441\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430, \u0447\u0435\u043c \u043c\u044b \u0438 \u0437\u0430\u0439\u043c\u0435\u043c\u0441\u044f. \u0412 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0435, \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 OSD \u043c\u043e\u0436\u043d\u043e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u0440\u0435\u0446\u0435\u043f\u0442\u043e\u0432 \u043a\u0443\u043a\u0431\u0443\u043a\u0430, \u043d\u043e \u044f \u043d\u0430\u043c\u0435\u0440\u0435\u043d\u043d\u043e \u044d\u0442\u043e\u0433\u043e \u043d\u0435 \u0434\u0435\u043b\u0430\u044e, \u0447\u0442\u043e\u0431\u044b \u043c\u044b \u043c\u043e\u0433\u043b\u0438 \u0432\u0441\u0435 \u043f\u043e\u0442\u0440\u043e\u0433\u0430\u0442\u044c \u0438 \u043f\u043e\u043a\u0440\u0443\u0442\u0438\u0442\u044c \u0441\u0432\u043e\u0438\u043c\u0438 \u0440\u0443\u043a\u0430\u043c\u0438.<\/p>\n<p>  \u041a\u043b\u0430\u0441\u0442\u0435\u0440 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u0442\u0440\u0435\u0445 \u043d\u043e\u0434, \u0443 \u043a\u0430\u0436\u0434\u043e\u0439 \u043f\u043e\u043c\u0438\u043c\u043e \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0433\u043e \u0435\u0441\u0442\u044c \u043f\u043e \u0434\u0432\u0430 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0434\u0438\u0441\u043a\u0430. \u041c\u044b \u043c\u043e\u0436\u0435\u043c <a href=\"https:\/\/docs.ceph.com\/en\/quincy\/cephadm\/services\/osd\/\">\u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0435\u0440\u0432\u0438\u0441\u044b OSD<\/a> \u043d\u0430 \u0432\u0441\u0435\u0445 \u0438\u0437 \u043d\u0438\u0445, \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u0437 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0445 \u0443\u0437\u043b\u043e\u0432 \u0438\u043b\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044e YAML, \u0443\u043a\u0430\u0437\u0430\u0432 \u0432 \u043d\u0435\u0439 \u043f\u0440\u0430\u0432\u0438\u043b\u043e \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0434\u0438\u0441\u043a\u043e\u0432.<\/p>\n<blockquote><p>\u041c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0432\u0441\u0435 \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u044b\u0435 \u0434\u0438\u0441\u043a\u0438 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 \u043f\u043e\u0434 \u0441\u0435\u0440\u0432\u0438\u0441\u044b OSD, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0442\u0430\u043a \u0431\u044b\u0441\u0442\u0440\u0435\u0435, \u043d\u043e \u0432 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0439 \u0441\u0440\u0435\u0434\u0435 \u0441\u0442\u043e\u0438\u0442 \u043f\u043e\u0434\u0443\u043c\u0430\u0442\u044c, \u043a\u0430\u043a\u0438\u0435 \u0438\u0437 \u043d\u0438\u0445 \u0438 \u043f\u043e \u043a\u0430\u043a\u0438\u043c \u043f\u0440\u0430\u0432\u0438\u043b\u0430\u043c \u0431\u0443\u0434\u0435\u043c \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0442\u044c \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440. \u0422\u0430\u043a \u0436\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 ceph orch \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0440\u0430\u0437\u0432\u043e\u0440\u0430\u0447\u0438\u0432\u0430\u0442\u044c \u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b Ceph.  <\/p><\/blockquote>\n<pre><code class=\"plaintext\"># \u0412\u044b\u0432\u0435\u0441\u0442\u0438 \u0432\u0441\u0435 \u0434\u0438\u0441\u043a\u0438 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430  root@node1:~# ceph orch device ls   HOST   PATH      TYPE  DEVICE ID                           SIZE  AVAILABLE  REFRESHED  REJECT REASONS   node1  \/dev\/sdb  hdd   VBOX_HARDDISK_VBaa3afe84-dcde44b9  6000M  Yes        18m ago                     node1  \/dev\/sdc  hdd   VBOX_HARDDISK_VB6cfb6cfd-cbfff2b2  6000M  Yes        18m ago                     node2  \/dev\/sdb  hdd   VBOX_HARDDISK_VB9a0de133-d4c47481  6000M  Yes        2m ago                      node2  \/dev\/sdc  hdd   VBOX_HARDDISK_VB17ff3e6d-ff3a778d  6000M  Yes        2m ago                      node3  \/dev\/sdb  hdd   VBOX_HARDDISK_VBef988c66-7de380c8  6000M  Yes        24s ago                     node3  \/dev\/sdc  hdd   VBOX_HARDDISK_VBb42afeb2-1643e145  6000M  Yes        24s ago                      # \u0420\u0430\u0437\u0432\u0435\u0440\u043d\u0443\u0442\u044c \u0441\u0435\u0440\u0432\u0438\u0441\u044b OSD \u043d\u0430 \u0432\u0441\u0435\u0445 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u0434\u0438\u0441\u043a\u0430\u0445  root@node1:~# ceph orch apply osd --all-available-devices Scheduled osd.all-available-devices update...  # \u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 osd root@node1:~# ceph orch ps --daemon_type osd NAME   HOST   PORTS  STATUS         REFRESHED  AGE  MEM USE  MEM LIM  VERSION  IMAGE ID      CONTAINER ID   osd.0  node3         running (1m)     1m ago  1m    26.9M    4096M  18.2.2   7b46ae09e5dc  c20a9a449e32   osd.1  node2         running (1m)     1m ago  1m    35.5M    4096M  18.2.2   7b46ae09e5dc  d6a3d414084b   osd.2  node1         running (1m)     1m ago  1m    23.8M    4096M  18.2.2   7b46ae09e5dc  baae22c434b9   osd.3  node3         running (1m)     1m ago  1m    28.5M    4096M  18.2.2   7b46ae09e5dc  5cb04e5d04b4   osd.4  node2         running (1m)     1m ago  1m    27.6M    4096M  18.2.2   7b46ae09e5dc  c2ad3d47caf5   osd.5  node1         running (1m)     1m ago  1m    24.8M    4096M  18.2.2   7b46ae09e5dc  0c1ae30543fc <\/code><\/pre>\n<p>  <a name=\"4\"><\/a><font color=\"#EB4247\"><\/p>\n<h2>\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043f\u0443\u043b\u0430 \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f<\/h2>\n<p><\/font><br \/>  \u0427\u0442\u043e\u0431\u044b \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043f\u0443\u043b \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u0435\u0433\u043e \u0438\u043c\u044f, \u0442\u0438\u043f, \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443 \u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 \u0438 \u0441\u0432\u044f\u0437\u0430\u0442\u044c \u0441 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c.<\/p>\n<p>  \u041d\u0430\u0447\u043d\u0435\u043c \u0441 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043f\u043e\u043b\u0438\u0442\u0438\u043a. \u0421 \u0438\u0445 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043c\u044b \u043c\u043e\u0436\u0435\u043c, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043f\u0443\u043b\u043e\u0432 \u043d\u0430 \u0440\u0430\u0437\u043d\u044b\u0445 \u0442\u0438\u043f\u0430\u0445 \u043d\u043e\u0441\u0438\u0442\u0435\u043b\u0435\u0439, \u0442\u0435\u043c \u0441\u0430\u043c\u044b\u043c \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u0438\u0445 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c. \u0412 \u043d\u0430\u0448\u0435\u043c \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0442 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 SSD, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u0435\u0440\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u043c \u043a\u043b\u0430\u0441\u0441 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0434\u0438\u0441\u043a\u043e\u0432. \u0414\u0430\u043d\u043d\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0438 \u043d\u0430 \u0431\u043e\u0435\u0432\u043e\u043c \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435, \u0435\u0441\u043b\u0438 \u0432\u0430\u0448\u0438 SSD \u043f\u0440\u044f\u0447\u0443\u0442\u0441\u044f \u0437\u0430 HBA-\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u043e\u043c \u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u044e\u0442\u0441\u044f \u041e\u0421 \u043a\u0430\u043a HDD.<\/p>\n<pre><code class=\"plaintext\">root@node1:~# ceph osd crush rm-device-class osd.2 osd.1 osd.0 done removing class of osd(s): 0,1,2 root@node1:~# ceph osd crush set-device-class ssd osd.2 osd.1 osd.0 set osd(s) 0,1,2 to class 'ssd' root@node1:~# ceph osd df tree ID  CLASS  WEIGHT   REWEIGHT  SIZE     RAW USE  DATA     OMAP  META     AVAIL    %USE  VAR   PGS  STATUS  TYPE NAME      -1         0.03415         -   35 GiB  266 MiB  3.8 MiB   0 B  262 MiB   35 GiB  0.74  1.00    -          root default   -7         0.01138         -   12 GiB   89 MiB  1.3 MiB   0 B   88 MiB   12 GiB  0.74  1.00    -              host node1  5    hdd  0.00569   1.00000  5.9 GiB   62 MiB  948 KiB   0 B   61 MiB  5.8 GiB  1.04  1.40    1      up          osd.5   2    ssd  0.00569   1.00000  5.9 GiB   26 MiB  368 KiB   0 B   26 MiB  5.8 GiB  0.44  0.60    0      up          osd.2  -3         0.01138         -   12 GiB   89 MiB  1.3 MiB   0 B   88 MiB   12 GiB  0.74  1.00    -              host node2  4    hdd  0.00569   1.00000  5.9 GiB   62 MiB  948 KiB   0 B   61 MiB  5.8 GiB  1.04  1.40    1      up          osd.4   1    ssd  0.00569   1.00000  5.9 GiB   26 MiB  356 KiB   0 B   26 MiB  5.8 GiB  0.44  0.60    0      up          osd.1  -5         0.01138         -   12 GiB   89 MiB  1.3 MiB   0 B   88 MiB   12 GiB  0.74  1.00    -              host node3  3    hdd  0.00569   1.00000  5.9 GiB   62 MiB  936 KiB   0 B   61 MiB  5.8 GiB  1.04  1.40    1      up          osd.3   0    ssd  0.00569   1.00000  5.9 GiB   26 MiB  356 KiB   0 B   26 MiB  5.8 GiB  0.44  0.60    0      up          osd.0                         TOTAL   35 GiB  266 MiB  3.8 MiB   0 B  262 MiB   35 GiB  0.74                                    MIN\/MAX VAR: 0.60\/1.40  STDDEV: 0.30 <\/code><\/pre>\n<p>  \u0412 \u043b\u0438\u0441\u0442\u0438\u043d\u0433\u0435 \u0432\u044b\u0448\u0435 \u0432\u0438\u0434\u043d\u043e, \u0447\u0442\u043e OSD. [0-2] \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u043d\u0430 \u0440\u0430\u0437\u043d\u044b\u0445 \u0443\u0437\u043b\u0430\u0445 \u0432 \u0434\u0435\u0440\u0435\u0432\u0435 \u0441 \u043a\u043e\u0440\u043d\u0435\u043c default. \u041a\u0441\u0442\u0430\u0442\u0438, \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u043e\u043b\u0438\u0442\u0438\u043a \u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043a\u043e\u0440\u043d\u0435\u0439 \u0438 \u0437\u0430 \u0441\u0447\u0435\u0442 \u044d\u0442\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0432 \u043e\u0434\u043d\u043e\u043c \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435, \u043d\u043e \u043d\u0430 \u0440\u0430\u0437\u043d\u044b\u0445 \u0445\u043e\u0441\u0442\u0430\u0445, \u0441\u0442\u043e\u0439\u043a\u0430\u0445 \u0438\u043b\u0438 \u0434\u0430\u0442\u0430-\u0446\u0435\u043d\u0442\u0440\u0430\u0445. \u041d\u0438\u0436\u0435 \u0441\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u043f\u0443\u043b \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u043f\u0440\u0438\u043c\u0435\u043d\u0438\u043c \u043a \u043d\u0435\u043c\u0443 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443 \u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d\u0438\u044f \u00ab\u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430 SSD\u00bb, \u0430 \u0434\u0430\u043b\u0435\u0435 \u0443\u043a\u0430\u0436\u0435\u043c, \u0447\u0442\u043e \u0434\u0430\u043d\u043d\u044b\u0439 \u043f\u0443\u043b \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u0434 RBD-\u043e\u0431\u0440\u0430\u0437\u044b.<\/p>\n<p>  \u0421\u043e\u0437\u0434\u0430\u0435\u043c \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443 \u0434\u043b\u044f \u0440\u0435\u043f\u043b\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043f\u0443\u043b\u043e\u0432 \u0441 \u0438\u043c\u0435\u043d\u0435\u043c replicated_ssd. \u0414\u0430\u043d\u043d\u044b\u0435 \u0431\u0443\u0434\u0443\u0442 \u0438\u043c\u0435\u0442\u044c \u0434\u043e\u043c\u0435\u043d \u043e\u0442\u043a\u0430\u0437\u0430 host, \u0430 \u0440\u0430\u0437\u043c\u0435\u0449\u0430\u0442\u044c\u0441\u044f \u2014 \u043d\u0430 SSD.<\/p>\n<pre><code class=\"plaintext\">root@node1:~# ceph osd crush rule create-replicated replicated_ssd default host ssd <\/code><\/pre>\n<p>  \u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043f\u043e\u043b\u0438\u0442\u0438\u043a \u043c\u043e\u0436\u043d\u043e \u044d\u0442\u043e\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439:<\/p>\n<pre><code class=\"plaintext\">root@node1:~# ceph osd crush rule dump <\/code><\/pre>\n<p>  \u0421\u043e\u0437\u0434\u0430\u0435\u043c \u0440\u0435\u043f\u043b\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043f\u0443\u043b nomad, \u00ab\u043d\u0430\u0440\u0435\u0437\u0430\u043d\u043d\u044b\u0439\u00bb \u043d\u0430 32 \u043a\u0443\u0441\u043e\u0447\u043a\u0430 (PG, \u0438\u043b\u0438 placement group).<\/p>\n<pre><code class=\"plaintext\">root@node1:~# ceph osd pool create nomad 32 32 replicated pool 'nomad' created <\/code><\/pre>\n<p>  \u041d\u0430\u0437\u043d\u0430\u0447\u0430\u0435\u043c \u043f\u0443\u043b\u0443 crush \u043f\u0440\u0430\u0432\u0438\u043b\u043e SIC. \u042d\u0442\u0443 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0443 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0434\u043e \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u0437\u0430\u043b\u0438\u043b\u0438 \u043f\u0443\u043b \u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u0438\u043c\u0438 \u0434\u0430\u043d\u043d\u044b\u043c\u0438, \u0438\u043d\u0430\u0447\u0435 \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u043f\u0440\u0438\u0432\u0435\u0434\u0443\u0442 \u043a \u0438\u0445 \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0435\u043d\u0438\u044e \u0432\u043d\u0443\u0442\u0440\u0438 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430, \u0447\u0442\u043e \u0441\u043d\u0438\u0437\u0438\u0442 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0434\u043b\u044f \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u0432.<\/p>\n<pre><code class=\"plaintext\">root@node1:~# ceph osd pool set nomad crush_rule replicated_ssd set pool 2 crush_rule to replicated_ssd <\/code><\/pre>\n<p>  \u0423\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u043c, \u0447\u0442\u043e \u0434\u0430\u043d\u043d\u044b\u0439 \u043f\u0443\u043b \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043f\u043e\u0434 \u0431\u043b\u043e\u0447\u043d\u044b\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 (RBD):<\/p>\n<pre><code class=\"plaintext\">root@node1:~# ceph osd pool application enable nomad rbd enabled application 'rbd' on pool 'nomad' <\/code><\/pre>\n<p>  \u0421\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0430 \u0434\u0435\u0440\u0435\u0432\u043e \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430. \u0412\u0438\u0434\u043d\u043e, \u0447\u0442\u043e OSD.[0-2] \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442 \u043f\u043e 32 PG:<\/p>\n<pre><code class=\"plaintext\">root@node1:~# ceph osd df tree ID  CLASS  WEIGHT   REWEIGHT  SIZE     RAW USE  DATA      OMAP  META     AVAIL    %USE  VAR   PGS  STATUS  TYPE NAME      -1         0.03415         -   35 GiB  267 MiB   4.3 MiB   0 B  262 MiB   35 GiB  0.74  1.00    -          root default   -7         0.01138         -   12 GiB   89 MiB   1.4 MiB   0 B   88 MiB   12 GiB  0.74  1.00    -              host node1  5    hdd  0.00569   1.00000  5.9 GiB   62 MiB  1020 KiB   0 B   61 MiB  5.8 GiB  1.04  1.40    1      up          osd.5   2    ssd  0.00569   1.00000  5.9 GiB   27 MiB   440 KiB   0 B   26 MiB  5.8 GiB  0.44  0.60   32      up          osd.2  -3         0.01138         -   12 GiB   89 MiB   1.4 MiB   0 B   88 MiB   12 GiB  0.74  1.00    -              host node2  4    hdd  0.00569   1.00000  5.9 GiB   62 MiB  1020 KiB   0 B   61 MiB  5.8 GiB  1.04  1.40    1      up          osd.4   1    ssd  0.00569   1.00000  5.9 GiB   27 MiB   440 KiB   0 B   26 MiB  5.8 GiB  0.44  0.60   32      up          osd.1  -5         0.01138         -   12 GiB   89 MiB   1.4 MiB   0 B   88 MiB   12 GiB  0.74  1.00    -              host node3  3    hdd  0.00569   1.00000  5.9 GiB   62 MiB  1020 KiB   0 B   61 MiB  5.8 GiB  1.04  1.40    1      up          osd.3   0    ssd  0.00569   1.00000  5.9 GiB   27 MiB   440 KiB   0 B   26 MiB  5.8 GiB  0.44  0.60   32      up          osd.0                         TOTAL   35 GiB  267 MiB   4.3 MiB   0 B  262 MiB   35 GiB  0.74                                    MIN\/MAX VAR: 0.60\/1.40  STDDEV: 0.30 <\/code><\/pre>\n<p>  \u0414\u0435\u0442\u0430\u043b\u044c\u043d\u043e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0443 \u043f\u0443\u043b\u043e\u0432 \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u043c, \u0447\u0442\u043e \u0432\u0441\u0435 \u0432 \u043f\u043e\u0440\u044f\u0434\u043a\u0435. \u0417\u0430\u043f\u0438\u0441\u044c replicated size 3 \u2014 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442, \u0447\u0442\u043e \u0432\u0441\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0431\u0443\u0434\u0443\u0442 \u0445\u0440\u0430\u043d\u0438\u0442\u044c\u0441\u044f \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 \u0432 \u0442\u0440\u0435\u0445 \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440\u0430\u0445. \u041d\u0438\u0436\u0435 \u044f \u0435\u0435 \u043d\u0430\u0437\u044b\u0432\u0430\u044e \u00ab\u0440\u0430\u0437\u043c\u0435\u0440 \u043f\u0443\u043b\u0430\u00bb. \u0422\u0430\u043a\u0436\u0435 \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u0443 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043f\u0443\u043b\u0430 \u0435\u0441\u0442\u044c \u0441\u0432\u043e\u0439 id.<\/p>\n<pre><code class=\"plaintext\">root@node1:~# ceph osd pool ls detail pool 1 '.mgr' replicated size 3 min_size 2 crush_rule 0 object_hash rjenkins pg_num 1 pgp_num 1 autoscale_mode on last_change 21 flags hashpspool stripe_width 0 pg_num_max 32 pg_num_min 1 application mgr read_balance_score 6.00 pool 2 'nomad' replicated size 3 min_size 2 crush_rule 1 object_hash rjenkins pg_num 32 pgp_num 32 autoscale_mode on last_change 43 flags hashpspool stripe_width 0 application rbd read_balance_score 1.22 <\/code><\/pre>\n<p>  \u041a\u043e\u043c\u0430\u043d\u0434\u0430 \u0432\u044b\u0432\u043e\u0434\u0438\u0442 \u0441\u043b\u0443\u0436\u0435\u0431\u043d\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e PG: \u0433\u0434\u0435 \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f primary- \u0438 secondary-\u0434\u0430\u043d\u043d\u044b\u0435, \u0432 \u043a\u0430\u043a\u043e\u043c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 PG, \u043a\u043e\u0433\u0434\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u043b\u0430\u0441\u044c \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0446\u0435\u043b\u043e\u0441\u0442\u043d\u043e\u0441\u0442\u0438. PG \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u0441 id \u043f\u0443\u043b\u0430, \u0447\u0430\u0441\u0442\u044c\u044e \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043e\u043d\u0430 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f:<\/p>\n<pre><code class=\"plaintext\">root@node1:~# ceph pg ls PG    OBJECTS  DEGRADED  MISPLACED  UNFOUND  BYTES   OMAP_BYTES*  OMAP_KEYS*  LOG  LOG_DUPS  STATE         SINCE  VERSION  REPORTED  UP         ACTING     SCRUB_STAMP                      DEEP_SCRUB_STAMP                 LAST_SCRUB_DURATION  SCRUB_SCHEDULING                                           1.0         2         0          0        0  590368            0           0  413         0  active+clean     9h   27'413   43:1099  [3,5,4]p3  [3,5,4]p3  2024-04-04T23:01:31.874678+0000  2024-04-04T23:01:31.874678+0000                    0  periodic scrub scheduled @ 2024-04-05T23:57:41.643668+0000 ... ... 2.1e        0         0          0        0       0            0           0    0         0  active+clean    18m      0'0     43:21  [1,2,0]p1  [1,2,0]p1  2024-04-05T17:34:39.443193+0000  2024-04-05T17:34:39.443193+0000                    0  periodic scrub scheduled @ 2024-04-07T05:09:41.113721+0000 2.1f        0         0          0        0       0            0           0    0         0  active+clean    18m      0'0     43:22  [2,0,1]p2  [2,0,1]p2  2024-04-05T17:34:39.443193+0000  2024-04-05T17:34:39.443193+0000                    0  periodic scrub scheduled @ 2024-04-06T18:34:58.287296+0000 <\/code><\/pre>\n<p>  \u0415\u0449\u0435 \u0440\u0430\u0437 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0430 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u043c, \u0447\u0442\u043e \u0432\u0441\u0435 \u0432 \u043f\u043e\u0440\u044f\u0434\u043a\u0435:<\/p>\n<pre><code class=\"plaintext\">root@node1:~# ceph -s   cluster:     id:     6ba7d13c-642b-11ee-b8b2-c70be95e3c50     health: HEALTH_OK     services:     mon: 3 daemons, quorum node1,node2,node3 (age 19h)     mgr: node1.cauksk(active, since 20h), standbys: node2.ecffgz     osd: 6 osds: 6 up (since 9h), 6 in (since 19h)     data:     pools:   2 pools, 33 pgs     objects: 2 objects, 577 KiB     usage:   267 MiB used, 35 GiB \/ 35 GiB avail     pgs:     33 active+clean <\/code><\/pre>\n<p>  <a name=\"5\"><\/a><font color=\"#EB4247\"><\/p>\n<h2>\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430<\/h2>\n<p><\/font><br \/>  \u0410\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u044f \u0432 Ceph \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u043e\u043f\u0438\u0441\u0430\u043d\u0430 <a href=\"https:\/\/docs.ceph.com\/en\/latest\/rados\/operations\/user-management\/%23background\">\u0432 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438<\/a>. \u041e\u0442\u043c\u0435\u0447\u0443, \u0447\u0442\u043e \u043a\u0430\u043a\u043e\u0439 \u0431\u044b \u0442\u0438\u043f \u0441\u0435\u0440\u0432\u0438\u0441\u0430 \u0438\u043b\u0438 \u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u043d\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0441\u044f, Ceph \u0445\u0440\u0430\u043d\u0438\u0442 \u0432 \u0441\u0435\u0431\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u043e \u043d\u0438\u0445 \u0432 \u0432\u0438\u0434\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 RADOS. \u0423 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0438\u0437 \u043d\u0438\u0445 \u0435\u0441\u0442\u044c \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0439 \u0440\u044f\u0434 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 (caps), \u0430 \u0442\u0430\u043a\u0436\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u043e\u0431\u044a\u0435\u043a\u0442\u0430\u043c \u0438 \u043f\u0443\u043b\u0430\u043c \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f. \u0423\u0442\u0438\u043b\u0438\u0442\u044b Ceph \u0438\u0449\u0443\u0442 \u0444\u0430\u0439\u043b \u0441 \u043a\u043b\u044e\u0447\u043e\u043c \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u043e \u043f\u0443\u0442\u0438 \/etc\/ceph\/ceph.client.{name}.keyring.<\/p>\n<p>  \u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0434\u043b\u044f \u043a\u043b\u0438\u0435\u043d\u0442\u0430 Nomad CSI:<\/p>\n<pre><code class=\"plaintext\"># \u0441\u043e\u0437\u0434\u0430\u0435\u043c \u043a\u043b\u0438\u0435\u043d\u0442\u0430 nomad \u0441 \u043f\u0440\u0430\u0432\u0430\u043c\u0438, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u043c\u0438 \u043f\u0440\u0435\u0434\u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u043c \u043f\u0440\u043e\u0444\u0438\u043b\u0435\u043c rbd, \u0441 \u043f\u043e\u043b\u043d\u044b\u043c \u0434\u043e\u0441\u0442\u0443\u043f\u043e\u043c \u043a \u043f\u0443\u043b\u0443 nomad. root@node1:~# ceph auth get-or-create client.nomad mon 'profile rbd' osd 'profile rbd pool=nomad' mgr 'profile rbd pool=nomad' [client.nomad] key = AQA4PxBmD0uiARAAP5M3DrAyNNlr7CjjX6PnNw==  # \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u044b\u0445 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u044f\u0445 \u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u043c\u043e\u0436\u043d\u043e \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439: root@node1:~# ceph auth get client.nomad [client.nomad] key = AQA4PxBmD0uiARAAP5M3DrAyNNlr7CjjX6PnNw== caps mgr = \"profile rbd pool=nomad\" caps mon = \"profile rbd\" caps osd = \"profile rbd pool=nomad\" <\/code><\/pre>\n<p>  \u041e\u0447\u0435\u043d\u044c \u0432\u0430\u0436\u043d\u043e: \u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u0438\u0435 \u043a\u043b\u044e\u0447\u0438 \u0445\u0440\u0430\u043d\u044f\u0442\u0441\u044f \u0432 \u043e\u0431\u044b\u0447\u043d\u044b\u0445 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u0445 \u0444\u0430\u0439\u043b\u0430\u0445, \u0434\u043b\u044f \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u0434\u043e\u0441\u0442\u0443\u043f\u0430. \u041e\u043d\u0438 \u043d\u0435 \u0448\u0438\u0444\u0440\u0443\u044e\u0442 \u0442\u0440\u0430\u0444\u0438\u043a \u0438 \u043d\u0435 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044e\u0442 \u0441\u0435\u043a\u0440\u0435\u0442\u043d\u043e\u0441\u0442\u044c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0439 \u043c\u0435\u0436\u0434\u0443 \u0443\u0437\u043b\u0430\u043c\u0438\/\u0441\u0435\u0440\u0432\u0438\u0441\u0430\u043c\u0438 Ceph. \u041d\u0435 \u0448\u0438\u0444\u0440\u0443\u044e\u0442\u0441\u044f \u0438 \u0434\u0430\u043d\u043d\u044b\u0435 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435.<\/p>\n<blockquote><p>\u0415\u0441\u043b\u0438 \u0432\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0437\u0430\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435, \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u044d\u0442\u043e \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0434\u043e \u0438\u0445 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440.<\/p><\/blockquote>\n<p>  <a name=\"6\"><\/a><font color=\"#EB4247\"><\/p>\n<h2>\u0420\u0430\u0437\u0432\u043e\u0440\u0430\u0447\u0438\u0432\u0430\u0435\u043c Nomad<\/h2>\n<p><\/font><br \/>  \u0422\u0440\u0435\u0445 \u0443\u0437\u043b\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0443 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c, \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e, \u0447\u0442\u043e\u0431\u044b \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c Nomad \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u043d\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435. \u041d\u043e \u0442\u0430\u043a \u043a\u0430\u043a \u043c\u044b \u043d\u0435 \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u043c\u0441\u044f \u043a\u0440\u0443\u0442\u0438\u0442\u044c \u0432\u0441\u0435 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u043d\u0430 \u043e\u0434\u043d\u0438\u0445 \u0438 \u0442\u0435\u0445 \u0436\u0435 \u0445\u043e\u0441\u0442\u0430\u0445, \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043c Nomad \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \u043d\u0430 \u0447\u0435\u0442\u0432\u0435\u0440\u0442\u043e\u043c \u0445\u043e\u0441\u0442\u0435 \u0441\u0442\u0435\u043d\u0434\u0430. \u041a\u0441\u0442\u0430\u0442\u0438, \u043b\u0438\u0441\u0442\u0438\u043d\u0433 \u043a\u043e\u043c\u0430\u043d\u0434 \u043d\u0438\u0436\u0435 \u0438\u043b\u043b\u044e\u0441\u0442\u0440\u0438\u0440\u0443\u0435\u0442 \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u043c\u0435\u043d\u0435\u0434\u0436\u043c\u0435\u043d\u0442\u0430 \u0443\u0437\u043b\u043e\u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 Ceph:<\/p>\n<pre><code class=\"plaintext\"># \u043a\u043b\u0430\u0441\u0442\u0435\u0440 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u0442\u0440\u0435\u0445 \u0443\u0437\u043b\u043e\u0432. root@node1:~# ceph orch host ls HOST   ADDR          LABELS  STATUS   node1  192.168.56.5  _admin           node2  192.168.56.6                   node3  192.168.56.7                     # \u044d\u0442\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u0440\u0430\u0437\u043c\u0435\u0441\u0442\u0438\u0442 \u043a\u043b\u044e\u0447 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430 \u043d\u0430 \u0443\u0437\u043b\u0435 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 node2 \u0438 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u0438\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430. root@node1:~# ceph orch host  label add node2 _admin Added label _admin to host node2 root@node1:~# ceph orch host ls HOST   ADDR          LABELS  STATUS   node1  192.168.56.5  _admin           node2  192.168.56.6  _admin           node3  192.168.56.7                   3 hosts in cluster  # \u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0441\u043b\u0443\u0436\u0435\u0431\u043d\u044b\u0445 \u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0445 \u043b\u0435\u0439\u0431\u043b\u043e\u0432 \u043c\u043e\u0436\u043d\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0434\u0435\u043f\u043b\u043e\u0435\u043c \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 Ceph. \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u0437\u0430\u043f\u0440\u0435\u0442\u0438\u0442 \u0440\u0430\u0437\u043c\u0435\u0449\u0430\u0442\u044c \u043b\u044e\u0431\u044b\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b Ceph \u043d\u0430 \u043d\u043e\u0434\u0435, \u043a\u0440\u043e\u043c\u0435 OSD. \u041c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043f\u043e\u043b\u0435\u0437\u043d\u043e \u043f\u0440\u0438 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u0438 \u0443\u0437\u043b\u0430. root@node1:~# ceph orch host label add node3 _no_schedule  Added label _no_schedule to host node3  root@node1:~# ceph orch ps node3 NAME   HOST   PORTS  STATUS        REFRESHED  AGE  MEM USE  MEM LIM  VERSION  IMAGE ID      CONTAINER ID   osd.0  node3         running (3d)    40s ago   3d    42.5M    4096M  18.2.2   7b46ae09e5dc  c20a9a449e32   osd.3  node3         running (3d)    40s ago   3d    31.2M    4096M  18.2.2   7b46ae09e5dc  5cb04e5d04b4    root@node1:~# ceph orch ps node2 NAME                 HOST   PORTS             STATUS        REFRESHED  AGE  MEM USE  MEM LIM  VERSION  IMAGE ID      CONTAINER ID   ceph-exporter.node2  node2                    running (4d)    48s ago   4d    7531k        -  18.2.2   7b46ae09e5dc  518802272a35   crash.node2          node2                    running (4d)    48s ago   4d    2883k        -  18.2.2   7b46ae09e5dc  5e8b2fba0923   mgr.node2.ecffgz     node2  *:8443,9283,8765  running (4d)    48s ago   4d     128M        -  18.2.2   7b46ae09e5dc  2b8bb882c8b0   mon.node2            node2                    running (4d)    48s ago   4d    78.2M    2048M  18.2.2   7b46ae09e5dc  a42e6d5b346e   node-exporter.node2  node2  *:9100            running (4d)    48s ago   4d    13.3M        -  1.5.0    0da6a335fe13  27be86a587c0   osd.1                node2                    running (3d)    48s ago   3d    39.4M    4096M  18.2.2   7b46ae09e5dc  d6a3d414084b   osd.4                node2                    running (3d)    48s ago   3d    27.7M    4096M  18.2.2   7b46ae09e5dc  c2ad3d47caf5    # \u041f\u0440\u0438 \u044d\u0442\u043e\u043c \u0441\u0430\u043c \u043a\u043b\u0430\u0441\u0442\u0435\u0440 \u0431\u0443\u0434\u0435\u0442 \u0441\u0435\u0431\u044f \u043e\u0442\u043b\u0438\u0447\u043d\u043e \u0447\u0443\u0432\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c: root@node1:~# ceph health detail HEALTH_OK <\/code><\/pre>\n<blockquote><p>\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u043e\u0431 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0438 \u0445\u043e\u0441\u0442\u0430\u043c\u0438, \u043a\u0430\u043a \u0432\u0441\u0435\u0433\u0434\u0430, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e <a href=\"https:\/\/docs.ceph.com\/en\/latest\/cephadm\/host-management\/\">\u0432 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438<\/a>.  <\/p><\/blockquote>\n<p>  \u041f\u0435\u0440\u0435\u0439\u0434\u0435\u043c \u043a \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0435 Nomad. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0441 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0445\u043e\u0441\u0442\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u043c \u0432\u0445\u043e\u0434 \u043d\u0430 \u0447\u0435\u0442\u0432\u0435\u0440\u0442\u044b\u0439 \u0443\u0437\u0435\u043b \u0441\u0442\u0435\u043d\u0434\u0430. \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043c Nomad \u0438 Consul, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u043c \u0438\u0445 \u0437\u0430\u043f\u0443\u0441\u043a \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \u043a\u0430\u043a systemd-\u0441\u0435\u0440\u0432\u0438\u0441\u044b. \u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435: \u043c\u044b \u0440\u0430\u0437\u0440\u0435\u0448\u0430\u0435\u043c Nomad \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u044b \u0432 \u043f\u0440\u0438\u0432\u0438\u043b\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435. \u042d\u0442\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b Ceph-CSI Node. Consul \u2014 \u044d\u0442\u043e \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u043e\u0442 Hashicorp, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0438\u0441\u043a\u0430\u0442\u044c \u0441\u043b\u0443\u0436\u0431\u044b servicemesh \u0438 \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0432 \u0432\u0438\u0434\u0435 key\/value.<\/p>\n<pre><code class=\"plaintext\">:~$kitchen login node4  # \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0435\u0432 \u0438 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 Consul\/Nomad root@node4:~# wget -O- https:\/\/apt.releases.hashicorp.com\/gpg | gpg --dearmor -o \/usr\/share\/keyrings\/hashicorp-archive-keyring.gpg root@node4:~# echo \"deb [signed-by=\/usr\/share\/keyrings\/hashicorp-archive-keyring.gpg] https:\/\/apt.releases.hashicorp.com $(lsb_release -cs) main\" | tee \/etc\/apt\/sources.list.d\/hashicorp.list root@node4:~# apt-get update &amp;&amp; sudo apt-get install nomad consul root@node4:~# cat &lt;&lt;EOF >>\/etc\/systemd\/system\/consul.service  [Unit] Description=consul agent Requires=network-online.target After=network-online.target  [Service] User=root Group=root Restart=on-failure ExecStart=\/usr\/bin\/consul agent -dev ExecReload=\/bin\/kill -HUP $MAINPID KillSignal=SIGINT  [Install] WantedBy=multi-user.target EOF  root@node4:~# cat &lt;&lt;EOF >>\/etc\/systemd\/system\/nomad.service  [Unit] Description=nomad agent Requires=network-online.target After=network-online.target  [Service] User=root Group=root Restart=on-failure ExecStart=\/usr\/bin\/nomad agent -dev -config=\/etc\/nomad.d\/nomad.hcl ExecReload=\/bin\/kill -HUP $MAINPID KillSignal=SIGINT  [Install] WantedBy=multi-user.target EOF  # \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u0435\u043c \u043d\u0430\u0431\u043e\u0440 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432 CNI root@node4:~# wget https:\/\/github.com\/containernetworking\/plugins\/releases\/download\/v1.4.1\/cni-plugins-linux-amd64-v1.4.1.tgz root@node4:~# mkdir -p \/opt\/cni\/bin &amp;&amp; tar -C \/opt\/cni\/bin -xvf .\/cni-plugins-linux-amd64-v1.4.1.tgz # \u0420\u0430\u0437\u0440\u0435\u0448\u0430\u0435\u043c \u0437\u0430\u043f\u0443\u0441\u043a \u043f\u0440\u0438\u0432\u0438\u043b\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432 root@node4:~# cat >>\/etc\/nomad.d\/nomad.hcl&lt;&lt;EOF plugin \"docker\" {   config {     allow_privileged = true   } } EOF  # \u0412\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u043c\u043e\u0434\u0443\u043b\u044c \u044f\u0434\u0440\u0430 rbd root@node4:~# modprobe rbd  root@node4:~# systemctl daemon-reload root@noed4:~# systemctl start nomad consul  #\u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c, \u0447\u0442\u043e \u0432\u0441\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442. root@node4:~# consul members Node   Address         Status  Type    Build   Protocol  DC   Partition  Segment node4  127.0.0.1:8301  alive   server  1.18.1  2         dc1  default    &lt;all> root@node4:~# nomad node status ID        Node Pool  DC   Name   Class   Drain  Eligibility  Status 69e42712  default    dc1  node4  &lt;none>  false  eligible     ready  # \u0415\u0441\u043b\u0438 \u0432\u044b \u043d\u0435 \u043c\u0435\u043d\u044f\u043b\u0438 \u0430\u0434\u0440\u0435\u0441\u0430\u0446\u0438\u044e \u0432 \u0444\u0430\u0439\u043b\u0435 kitchen.yml, \u0432\u0435\u0431-\u043f\u0430\u043d\u0435\u043b\u044c Nomad \u0431\u0443\u0434\u0435\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u0441 \u0432\u0430\u0448\u0435\u0433\u043e \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0445\u043e\u0441\u0442\u0430. Nomad - http:\/\/192.168.56.8:4646 <\/code><\/pre>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c \u043f\u0435\u0440\u0435\u0439\u0434\u0435\u043c \u043a \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0435 \u043a\u043e\u043d\u043d\u0435\u043a\u0442\u043e\u0440\u0430 \u043a Ceph. \u0421\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u0444\u0430\u0439\u043b\u044b \u043f\u043b\u0430\u0433\u0438\u043d\u043e\u0432 Ceph-CSI \u0438 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043c \u0438\u0445. \u041d\u0430\u043c \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u0442\u0441\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043e\u0431 \u0430\u0434\u0440\u0435\u0441\u0430\u0445 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 MON \u0438 UUID-\u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 (\u043f\u043e\u043b\u044f clusterID, monitors). \u041f\u043e \u0441\u0443\u0442\u0438, \u043c\u044b \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c \u0432 \u044d\u0442\u0438\u0445 \u0444\u0430\u0439\u043b\u0430\u0445, \u0438\u0437 \u043a\u0430\u043a\u0438\u0445 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432 \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u043f\u043b\u0430\u0433\u0438\u043d\u043e\u0432, \u043a\u0430\u043a\u0438\u0435 \u043f\u043e\u0440\u0442\u044b \u043e\u0442\u043a\u0440\u044b\u0442\u044c, \u043a\u0430\u043a \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u0441\u044f \u043a Ceph, \u043a\u0430\u043a\u0438\u0435 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c.<\/p>\n<p>  \u0418\u0442\u0430\u043a, \u0441\u043f\u0435\u0440\u0432\u0430 \u0441\u043e\u0437\u0434\u0430\u0435\u043c \u0444\u0430\u0439\u043b ceph-csi-plugin-controller.nomad \u0441 \u0442\u0430\u043a\u0438\u043c \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u044b\u043c:<\/p>\n<pre><code class=\"plaintext\">job \"ceph-csi-plugin-controller\" {   datacenters = [\"dc1\"]   group \"controller\" {     network {       port \"metrics\" {}     }     task \"ceph-controller\" {       template {         data        = &lt;&lt;EOF [{     \"clusterID\": \"6ba7d13c-642b-11ee-b8b2-c70be95e3c50\",     \"monitors\": [         \"192.168.56.5\",         \"192.168.56.6\",         \"192.168.56.7\"     ] }] EOF         destination = \"local\/config.json\"         change_mode = \"restart\"       }       driver = \"docker\"       config {         image = \"quay.io\/cephcsi\/cephcsi:v3.3.1\"         volumes = [           \".\/local\/config.json:\/etc\/ceph-csi-config\/config.json\"         ]         mounts = [           {             type     = \"tmpfs\"             target   = \"\/tmp\/csi\/keys\"             readonly = false             tmpfs_options = {               size = 1000000 # size in bytes             }           }         ]         args = [           \"--type=rbd\",           \"--controllerserver=true\",           \"--drivername=rbd.csi.ceph.com\",           \"--endpoint=unix:\/\/csi\/csi.sock\",           \"--nodeid=${node.unique.name}\",           \"--instanceid=${node.unique.name}-controller\",           \"--pidlimit=-1\",           \"--logtostderr=true\",           \"--v=5\",           \"--metricsport=$${NOMAD_PORT_metrics}\"         ]       }       resources {         cpu    = 500         memory = 256       }       service {         name = \"ceph-csi-controller\"         port = \"metrics\"         tags = [ \"prometheus\" ]       }       csi_plugin {         id        = \"ceph-csi\"         type      = \"controller\"         mount_dir = \"\/csi\"       }     }   } } <\/code><\/pre>\n<p>  \u0417\u0430\u0442\u0435\u043c \u2014 \u0444\u0430\u0439\u043b ceph-csi-plugin-nodes.nomad:<\/p>\n<pre><code class=\"plaintext\">job \"ceph-csi-plugin-nodes\" {   datacenters = [\"dc1\"]   type        = \"system\"   group \"nodes\" {     network {       port \"metrics\" {}     }     task \"ceph-node\" {       driver = \"docker\"       template {         data        = &lt;&lt;EOF [{     \"clusterID\": \"6ba7d13c-642b-11ee-b8b2-c70be95e3c50\",     \"monitors\": [         \"192.168.56.5\",         \"192.168.56.6\",         \"192.168.56.7\"     ] }] EOF         destination = \"local\/config.json\"         change_mode = \"restart\"       }       config {         image = \"quay.io\/cephcsi\/cephcsi:v3.3.1\"         volumes = [           \".\/local\/config.json:\/etc\/ceph-csi-config\/config.json\"         ]         mounts = [           {             type     = \"tmpfs\"             target   = \"\/tmp\/csi\/keys\"             readonly = false             tmpfs_options = {               size = 1000000 # size in bytes             }           }         ]         args = [           \"--type=rbd\",           \"--drivername=rbd.csi.ceph.com\",           \"--nodeserver=true\",           \"--endpoint=unix:\/\/csi\/csi.sock\",           \"--nodeid=${node.unique.name}\",           \"--instanceid=${node.unique.name}-nodes\",           \"--pidlimit=-1\",           \"--logtostderr=true\",           \"--v=5\",           \"--metricsport=$${NOMAD_PORT_metrics}\"         ]         privileged = true       }       resources {         cpu    = 500         memory = 256       }       service {         name = \"ceph-csi-nodes\"         port = \"metrics\"         tags = [ \"prometheus\" ]       }       csi_plugin {         id        = \"ceph-csi\"         type      = \"node\"         mount_dir = \"\/csi\"       }     }   } } <\/code><\/pre>\n<p>  \u0417\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u043f\u043b\u0430\u0433\u0438\u043d\u044b ceph-csi \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c, \u0447\u0442\u043e \u0432\u0441\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442:<\/p>\n<pre><code class=\"plaintext\">root@node4:~# nomad job run ceph-csi-plugin-controller.nomad root@node4:~# nomad job run ceph-csi-plugin-nodes.nomad  root@node4:~# nomad plugin status ceph-csi ID                   = ceph-csi Provider             = rbd.csi.ceph.com Version              = v3.3.1 Controllers Healthy  = 1 Controllers Expected = 1 Nodes Healthy        = 1 Nodes Expected       = 1  Allocations ID        Node ID   Task Group  Version  Desired  Status   Created    Modified e191676d  e895f83f  nodes       0        run      running  3m8s ago   2m57s ago b1224cdf  e895f83f  controller  0        run      running  3m25s ago  3m14s ago  # \u0432 \u0432\u0435\u0431 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0435 \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u044f\u0432\u0438\u0442\u0441\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043e\u0431 \u044d\u0442\u0438\u0445 \u0437\u0430\u0434\u0430\u043d\u0438\u044f\u0445. http:\/\/192.168.56.8:4646\/ui\/jobs <\/code><\/pre>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c \u043f\u0435\u0440\u0435\u0439\u0434\u0435\u043c \u043a volume.hcl. \u0414\u0430\u043d\u043d\u044b\u0439 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442 \u0440\u0430\u0437\u043c\u0435\u0440 \u0434\u0438\u0441\u043a\u0430, \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u043c\u043e\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0433\u0434\u0435 \u0438 \u043f\u043e\u0434 \u043a\u0430\u043a\u043e\u0439 \u0443\u0447\u0435\u0442\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u044c\u044e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0441\u0430\u043c \u0434\u0438\u0441\u043a.<\/p>\n<pre><code class=\"plaintext\">root@node4:~# cat .\/prom-volume.hcl id = \"ceph-prometheus-volume\" name = \"ceph-prometheus-volume\" type = \"csi\" plugin_id = \"ceph-csi\" capacity_max = \"2G\" capacity_min = \"1G\"  capability {   access_mode     = \"single-node-writer\"   attachment_mode = \"file-system\" }  secrets {   userID  = \"nomad\"   userKey = \"AQA4PxBmD0uiARAAP5M3DrAyNNlr7CjjX6PnNw==\" }  parameters {   clusterID = \"6ba7d13c-642b-11ee-b8b2-c70be95e3c50\"   pool = \"nomad\"   imageFeatures = \"layering\"   mkfsOptions = \"-t ext4\" }  # \u0421\u043e\u0437\u0434\u0430\u0435\u043c \u0434\u0438\u0441\u043a. root@node4:~# nomad volume create .\/prom-volume.hcl <\/code><\/pre>\n<p>  \u041e\u043f\u0438\u0448\u0435\u043c \u0444\u0430\u0439\u043b \u0437\u0430\u0434\u0430\u043d\u0438\u044f. \u0412\u044b\u0448\u0435 \u043c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438 \u043a\u043e\u043f\u0438\u043f\u0430\u0441\u0442\u0443 \u0438\u0437 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438 Ceph, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c \u0431\u0443\u0434\u0435\u043c Prometheus, \u0430 \u0445\u043e\u0434\u0438\u0442\u044c \u0437\u0430 \u043c\u0435\u0442\u0440\u0438\u043a\u0430\u043c\u0438 \u0432 \u043d\u0430\u0448 \u0436\u0435 \u043a\u043b\u0430\u0441\u0442\u0435\u0440 Ceph. \u041f\u0440\u043e\u0441\u0442\u043e \u0447\u0442\u043e\u0431\u044b \u0431\u044b\u043b\u043e \u043d\u0435 \u0441\u043a\u0443\u0447\u043d\u043e.<\/p>\n<blockquote><p>Cephadm \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u043e\u0434\u043d\u0438\u043c\u0430\u0435\u0442 \u0441\u0435\u0440\u0432\u0438\u0441\u044b \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433\u0430 \u0438 Prometheus. \u0422\u043e \u0435\u0441\u0442\u044c \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u0447\u0430\u0441\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u044b \u043c\u043e\u0436\u043d\u043e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c, \u043d\u043e \u043c\u044b \u0432 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043f\u0440\u043e\u0434\u0435\u043b\u0430\u0435\u043c \u0432\u0441\u0435 \u0432\u0440\u0443\u0447\u043d\u0443\u044e, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0448\u0435 \u0438\u0437\u0443\u0447\u0438\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b Ceph.  <\/p><\/blockquote>\n<pre><code class=\"plaintext\"># \u0421\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u0441\u0430\u043c \u0444\u0430\u0439\u043b \u0437\u0430\u0434\u0430\u043d\u0438\u044f. \u041f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u0432\u0441\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u043e \u0432 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438 Nomad. root@node4:~# cat .\/prometheus.nomad  job \"prometheus-server\" {   datacenters = [\"dc1\"]   type        = \"service\"   group \"prometheus-server\" {     count = 1     \/\/\u041d\u0430\u0448 volume, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u043b\u0438 \u0432\u044b\u0448\u0435\/\/     volume \"ceph-prometheus-volume\" {       type      = \"csi\"       attachment_mode = \"file-system\"       access_mode     = \"single-node-writer\"       read_only = false       source    = \"ceph-prometheus-volume\"     }     \/\/\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c CNI \u0434\u0440\u0430\u0439\u0432\u0435\u0440 \u0438 \u043c\u0430\u043f\u0438\u043c \u043f\u043e\u0440\u0442\u044b\/\/     network {       mode = \"bridge\"       port \"prometheus\" {         static = 9090         to     = 9090       }     }     \/\/\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0440\u0435\u0441\u0442\u0430\u0440\u0442\u0430 \u0437\u0430\u0434\u0430\u043d\u0438\u044f, \u0435\u0441\u043b\u0438 \u0447\u0442\u043e-\u0442\u043e \u0438\u0434\u0435\u0442 \u043d\u0435 \u0442\u0430\u043a\/\/     restart {       attempts = 10       interval = \"5m\"       delay    = \"25s\"       mode     = \"delay\"     }     \/\/\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0441\u0430\u043c\u043e\u0439 \u0442\u0430\u0441\u043a\u0438. \u0418\u043c\u044f, \u0434\u0440\u0430\u0439\u0432\u0435\u0440, \u043a\u0443\u0434\u0430 \u043c\u043e\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u0434\u0438\u0441\u043a, \u0438\u0437 \u043a\u0430\u043a\u043e\u0433\u043e \u043e\u0431\u0440\u0430\u0437\u0430 \u0441\u043e\u0431\u0440\u0430\u0442\u044c, \u043a\u0430\u043a\u0438\u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0438 \u043f\u0440\u043e\u043a\u0438\u043d\u0443\u0442\u044c \u0432\u043d\u0443\u0442\u0440\u044c, \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u0432\u044b\u0434\u0435\u043b\u0438\u0442\u044c\/\/     task \"prometheus-server\" {       driver = \"docker\"       volume_mount {         volume      = \"ceph-prometheus-volume\"         destination = \"\/prometheus\"         read_only   = false       }        env {         MY_ENV_VARS = \"HelloWorld\"       }       config {         image = \"prom\/prometheus:latest\"         args  = []         ports = [\"prometheus\"]         volumes = [ \"local\/prometheus.yml:\/etc\/prometheus\/prometheus.yml\" ]       }       template {         data = file(\"\/root\/prometheus.yml\")         destination = \"local\/prometheus.yml\"       }       resources {         cpu    = 500         memory = 256       }       service {         name = \"prometheus-server\"         port = \"prometheus\"         check {           path     = \"\/-\/helthy\"           type     = \"tcp\"           interval = \"10s\"           timeout  = \"2s\"         }       }     }   } }  # \u0424\u0430\u0439\u043b \u043a\u043e\u043d\u0444\u0438\u0433\u0430 Prometheus. \u0423\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u043c \u043d\u0430 \u043d\u0430\u0448 \u043a\u043b\u0430\u0441\u0442\u0435\u0440 \u0438 \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0435\u0440\u044b. root@node4:~# cat prometheus.yml  global:   scrape_interval: 10s   scrape_timeout: 10s   evaluation_interval: 10s scrape_configs: - job_name: node   honor_timestamps: true   scrape_interval: 5s   scrape_timeout: 5s   metrics_path: \/metrics   scheme: http   follow_redirects: true   enable_http2: true   http_sd_configs:   - follow_redirects: true     enable_http2: true     refresh_interval: 1m     url: http:\/\/192.168.56.6:8765\/sd\/prometheus\/sd-config?service=node-exporter - job_name: ceph   scrape_interval: 5s   scrape_timeout: 5s   metrics_path: \/metrics   scheme: http   follow_redirects: true   enable_http2: true   http_sd_configs:   - follow_redirects: true     enable_http2: true     refresh_interval: 1m     url: http:\/\/192.168.56.6:8765\/sd\/prometheus\/sd-config?service=mgr-prometheus - job_name: ceph-exporter   scrape_interval: 5s   scrape_timeout: 5s   metrics_path: \/metrics   scheme: http   follow_redirects: true   enable_http2: true   http_sd_configs:   - follow_redirects: true     enable_http2: true     refresh_interval: 1m     url: http:\/\/192.168.56.6:8765\/sd\/prometheus\/sd-config?service=ceph-exporter  # \u041d\u0443 \u0438, \u043d\u0430\u043a\u043e\u043d\u0435\u0446, \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u0437\u0430\u0434\u0430\u043d\u0438\u0435. root@node4:~# nomad job run prometheus.nomad  ==> 2024-04-11T22:33:00Z: Monitoring evaluation \"16580069\"     2024-04-11T22:33:00Z: Evaluation triggered by job \"prometheus-server\"     2024-04-11T22:33:00Z: Evaluation within deployment: \"fa62c7ea\"     2024-04-11T22:33:00Z: Allocation \"0d02495c\" created: node \"e895f83f\", group \"prometheus-server\"     2024-04-11T22:33:00Z: Evaluation status changed: \"pending\" -> \"complete\" ==> 2024-04-11T22:33:00Z: Evaluation \"16580069\" finished with status \"complete\" ==> 2024-04-11T22:33:00Z: Monitoring deployment \"fa62c7ea\"   \u2713 Deployment \"fa62c7ea\" successful          2024-04-11T22:33:18Z     ID          = fa62c7ea     Job ID      = prometheus-server     Job Version = 0     Status      = successful     Description = Deployment completed successfully          Deployed     Task Group         Desired  Placed  Healthy  Unhealthy  Progress Deadline     prometheus-server  1        1       1        0          2024-04-11T22:43:16Z <\/code><\/pre>\n<p>  \u041d\u0430\u0433\u043b\u044f\u0434\u043d\u0435\u0435 \u0432\u0441\u0435\u0433\u043e \u0431\u0443\u0434\u0435\u0442 \u043f\u0435\u0440\u0435\u0439\u0442\u0438 \u0432 \u0432\u0435\u0431-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 Nomad \u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c, \u043a\u0430\u043a \u044d\u0442\u043e \u0432\u0441\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442. \u041c\u043e\u0436\u0435\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u044d\u0442\u043e \u0437\u0430\u0434\u0430\u043d\u0438\u0435, \u0430 \u0437\u0430\u0442\u0435\u043c \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0435\u0433\u043e \u0435\u0449\u0435 \u0440\u0430\u0437. \u0422\u0435\u043c \u043d\u0435 \u043c\u0435\u043d\u0435\u0435, \u0441\u0430\u043c Prometheus \u0431\u0443\u0434\u0435\u0442 \u043f\u0438\u0441\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0432 \u0441\u0435\u0442\u0435\u0432\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435, \u0447\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0443\u0432\u0438\u0434\u0435\u0442\u044c \u043f\u043e \u0440\u043e\u0441\u0442\u0443 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 \u0438 \u0447\u0438\u0441\u043b\u0443 \u043c\u0435\u0442\u0440\u0438\u043a TSDB.<\/p>\n<pre><code class=\"plaintext\">http:\/\/192.168.56.8:4646\/ui\/jobs http:\/\/192.168.56.8:9090\/tsdb-status  root@node1:~# ceph -s ...   data:     pools:   2 pools, 33 pgs     objects: 28 objects, 46 MiB     usage:   499 MiB used, 35 GiB \/ 35 GiB avail     pgs:     33 active+clean     io:     client:   27 KiB\/s wr, 0 op\/s rd, 4 op\/s wr <\/code><\/pre>\n<p>  <a name=\"7\"><\/a><font color=\"#EB4247\"><\/p>\n<h2>\u0413\u0434\u0435 \u0445\u0440\u0430\u043d\u044f\u0442\u0441\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 Ceph<\/h2>\n<p><\/font><br \/>  \u0420\u0430\u043d\u044c\u0448\u0435 \u0432\u0441\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043e\u0431\u044a\u044f\u0432\u043b\u044f\u043b\u0438\u0441\u044c \u0432 \/etc\/ceph\/ceph.conf. \u0421\u0435\u0439\u0447\u0430\u0441 \u043e\u0442 \u044d\u0442\u043e\u0433\u043e \u043f\u043e\u0434\u0445\u043e\u0434\u0430 \u043e\u0442\u043a\u0430\u0437\u0430\u043b\u0438\u0441\u044c, \u0442\u0430\u043a \u043a\u0430\u043a \u0444\u0430\u0439\u043b \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u043d\u0435\u0447\u0438\u0442\u0430\u0435\u043c\u044b\u043c \u0438\u0437-\u0437\u0430 \u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u044d\u0442\u0438\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u0443 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0438\u0437 \u0441\u0435\u0440\u0432\u0438\u0441\u0430 Ceph.<\/p>\n<p>  \u0421\u0435\u0439\u0447\u0430\u0441 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043f\u0440\u0438\u043d\u044f\u0442\u043e \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0432\u043d\u0443\u0442\u0440\u0438 \u0431\u0430\u0437\u044b \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0430:<\/p>\n<pre><code class=\"plaintext\"># \u041a\u043e\u043c\u0430\u043d\u0434\u0430 \u0432\u0435\u0440\u043d\u0435\u0442 \u043f\u0435\u0440\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432. root@node1:~# ceph config dump WHO     MASK  LEVEL     OPTION                                 VALUE                                                                                      RO global        advanced  cluster_network                        192.168.56.0\/24                                                                            *  global        basic     container_image                        quay.io\/ceph\/ceph@sha256:06ddc3ef5b66f2dcc6d16e41842d33a3d7f497849981b0842672ef9014a96726  *  mon           advanced  auth_allow_insecure_global_id_reclaim  false                                                                                         mon           advanced  public_network                         192.168.56.0\/24                                                                            *  mgr           advanced  mgr\/cephadm\/container_init             True                                                                                       *  mgr           advanced  mgr\/cephadm\/migration_current          6                                                                                          *  mgr           advanced  mgr\/dashboard\/ALERTMANAGER_API_HOST    http:\/\/node1:9093                                                                          *  mgr           advanced  mgr\/dashboard\/GRAFANA_API_SSL_VERIFY   false                                                                                      *  mgr           advanced  mgr\/dashboard\/GRAFANA_API_URL          https:\/\/192.168.56.5:3000                                                                  *  mgr           advanced  mgr\/dashboard\/PROMETHEUS_API_HOST      http:\/\/node1:9095                                                                          *  mgr           advanced  mgr\/dashboard\/ssl_server_port          8443                                                                                       *  mgr           advanced  mgr\/orchestrator\/orchestrator          cephadm                                                                                       osd           advanced  osd_memory_target_autotune             true <\/code><\/pre>\n<p>  \u0414\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0439 \u043e\u043f\u0446\u0438\u0438 \u0435\u0441\u0442\u044c \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0443\u043a\u0430\u0437\u0430\u043d\u043e, \u043c\u043e\u0436\u0435\u0442 \u043b\u0438 \u043e\u043d\u0430 \u0431\u044b\u0442\u044c \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0430 \u00ab\u043d\u0430 \u043b\u0435\u0442\u0443\u00bb. \u0415\u0441\u043b\u0438 \u044d\u0442\u043e \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, MON \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e \u0443\u0432\u0435\u0434\u043e\u043c\u0438\u0442 \u0441\u0435\u0440\u0432\u0438\u0441 \u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u043a\u0430.<\/p>\n<pre><code class=\"plaintext\">root@node1:~# ceph config help osd_memory_target osd_memory_target - When tcmalloc and cache autotuning is enabled, try to keep this many bytes mapped in memory.   (size, basic)   Default: 4294967296   Minimum: 939524096   Maximum:   Can update at runtime: true   See also: [bluestore_cache_autotune,osd_memory_cache_min,osd_memory_base,osd_memory_target_autotune]   The minimum value must be at least equal to osd_memory_base + osd_memory_cache_min. <\/code><\/pre>\n<p>  \u0422\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u043d\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0435\u0439 \u0447\u0435\u0440\u0435\u0437 \u0441\u043e\u043a\u0435\u0442 \u0438 \u0443\u0442\u0438\u043b\u0438\u0442\u043e\u0439 ceph tell. \u041d\u043e \u0435\u0441\u0442\u044c \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f: \u0432 \u043f\u0435\u0440\u0432\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u0441 \u043d\u043e\u0434\u044b, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0440\u0430\u0437\u0432\u0435\u0440\u043d\u0443\u0442 \u0441\u0435\u0440\u0432\u0438\u0441. \u0410 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f, \u0432\u043d\u0435\u0441\u0435\u043d\u043d\u044b\u0435 \u043e\u0431\u043e\u0438\u043c\u0438 \u043f\u0443\u0442\u044f\u043c\u0438, \u043d\u0435 \u0431\u0443\u0434\u0443\u0442 \u043e\u0442\u0440\u0430\u0436\u0435\u043d\u044b \u0432 \u0431\u0430\u0437\u0435 \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0430. \u042d\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u043a \u043f\u0435\u0447\u0430\u043b\u044c\u043d\u044b\u043c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430\u043c, \u0435\u0441\u043b\u0438 \u0432\u044b \u043d\u0435 \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430.<\/p>\n<pre><code class=\"plaintext\"># \u041f\u0440\u0438\u043c\u0435\u0440 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u0438\u0432\u043d\u043e\u0433\u043e \u0441\u043e\u043a\u0435\u0442\u0430. root@node1:~# ceph daemon \/var\/run\/ceph\/6ba7d13c-642b-11ee-b8b2-c70be95e3c50\/ceph-osd.2.asok config show | grep debug_osd     \"debug_osd\": \"1\/5\",  root@node1:~# ceph daemon \/var\/run\/ceph\/6ba7d13c-642b-11ee-b8b2-c70be95e3c50\/ceph-osd.7.asok config set debug_osd 10 {     \"success\": \"\" }  # \u041f\u0440\u0438\u043c\u0435\u0440 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f ceph tell. \u041f\u0440\u0438\u043c\u0435\u043d\u0438\u043c debug_osd=10 \u043a\u043e \u0432\u0441\u0435\u043c \u0441\u0435\u0440\u0432\u0438\u0441\u0430\u043c. root@node1:~# ceph tell osd.* injectargs \"--debug_osd 10\" <\/code><\/pre>\n<blockquote><p>\u0415\u0441\u043b\u0438 \u0432\u044b \u0437\u0430\u0434\u0430\u043b\u0438 \u043a\u0430\u043a\u0438\u0435-\u0442\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0432 \/etc\/ceph\/ceph.conf, Ceph \u043d\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u0438\u0445 \u043f\u043e\u043c\u0435\u043d\u044f\u0442\u044c \u0447\u0435\u0440\u0435\u0437 \u0431\u0430\u0437\u0443 \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0430, \u0442\u0430\u043a \u043a\u0430\u043a \u0444\u0430\u0439\u043b \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0438\u043c\u0435\u0435\u0442 \u0431\u043e\u043b\u044c\u0448\u0438\u0439 \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442.  <\/p><\/blockquote>\n<p>  <a name=\"8\"><\/a><font color=\"#EB4247\"><\/p>\n<h2>\u041e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u0435 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430<\/h2>\n<p><\/font><br \/>  \u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043e\u0440\u043a\u0435\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043f\u0435\u0440\u0435\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u0445\u043e\u0441\u0442 \u0432 \u0440\u0435\u0436\u0438\u043c \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f. \u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u0432\u0441\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b \u0431\u0443\u0434\u0443\u0442 \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u044b, \u0430 \u043c\u044b \u0441\u043c\u043e\u0436\u0435\u043c \u0432\u044b\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0443\u0437\u0435\u043b \u0438 \u043f\u0440\u043e\u0432\u0435\u0441\u0442\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u0440\u0430\u0431\u043e\u0442\u044b. \u0414\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0432\u0432\u0435\u0441\u0442\u0438 \u043a\u043e\u043c\u0430\u043d\u0434\u0443:<\/p>\n<pre><code class=\"plaintext\"># \u041f\u0435\u0440\u0435\u0432\u043e\u0434\u0438\u043c \u043a\u043b\u0430\u0441\u0442\u0435\u0440 \u0432 \u0440\u0435\u0436\u0438\u043c \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f. root@node1:~# ceph orch host maintenance enter node3 Daemons for Ceph cluster 6ba7d13c-642b-11ee-b8b2-c70be95e3c50 stopped on host node3. Host node3 moved to maintenance mode   root@node1:~# ceph orch host ls HOST   ADDR          LABELS  STATUS        node1  192.168.56.5  _admin                node2  192.168.56.6  _admin                node3  192.168.56.7  _admin  Maintenance   3 hosts in cluster  root@node1:~# ceph -s   cluster:     id:     6ba7d13c-642b-11ee-b8b2-c70be95e3c50     health: HEALTH_WARN             1 host is in maintenance mode             1\/3 mons down, quorum node1,node2             2 osds down             1 OSDs or CRUSH {nodes, device-classes} have {NOUP,NODOWN,NOIN,NOOUT} flags set             1 host (2 osds) down             Degraded data redundancy: 124\/372 objects degraded (33.333%), 32 pgs degraded     services:     mon: 3 daemons, quorum node1,node2 (age 17s), out of quorum: node3     mgr: node2.ecffgz(active, since 7h), standbys: node1.cauksk     osd: 6 osds: 4 up (since 16s), 6 in (since 5h)     data:     pools:   2 pools, 33 pgs     objects: 124 objects, 397 MiB     usage:   2.2 GiB used, 33 GiB \/ 35 GiB avail     pgs:     124\/372 objects degraded (33.333%)              32 active+undersized+degraded              1  active+undersized     io:     client:   4.0 KiB\/s wr, 0 op\/s rd, 0 op\/s wr <\/code><\/pre>\n<p>  \u0412 \u0432\u044b\u0432\u043e\u0434\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0432\u0438\u0434\u0438\u043c, \u0447\u0442\u043e \u043a\u043b\u0430\u0441\u0442\u0435\u0440 \u0432 \u0441\u0442\u0430\u0442\u0443\u0441\u0435 WARN, \u0430 \u0447\u0443\u0442\u044c \u043d\u0438\u0436\u0435 \u043f\u0440\u0438\u0447\u0438\u043d\u044b.<\/p>\n<ul>\n<li>\u041d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u043e\u0434\u0438\u043d \u0441\u0435\u0440\u0432\u0438\u0441 \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0430 MON \u0438 \u043d\u0430\u0440\u0443\u0448\u0435\u043d \u043a\u0432\u043e\u0440\u0443\u043c (\u0432 \u0438\u0434\u0435\u0430\u043b\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 MON \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u043f\u044f\u0442\u044c, \u043d\u043e \u043c\u0430\u043b\u043e \u043a\u0442\u043e \u0434\u0435\u043b\u0430\u0435\u0442 \u0431\u043e\u043b\u044c\u0448\u0435 \u0442\u0440\u0435\u0445. \u041a\u0441\u0442\u0430\u0442\u0438, \u0438\u0445 \u0432\u0441\u0435-\u0442\u0430\u043a\u0438 \u043b\u0443\u0447\u0448\u0435 \u0434\u0435\u0440\u0436\u0430\u0442\u044c \u043d\u0430 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u0443\u0437\u043b\u0430\u0445, \u0435\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0431\u043e\u043b\u044c\u0448\u0430\u044f \u0438\u043d\u0441\u0442\u0430\u043b\u043b\u044f\u0446\u0438\u044f).<\/li>\n<li>\u0414\u0432\u0430 \u0441\u0435\u0440\u0432\u0438\u0441\u0430 OSD \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 down.<\/li>\n<li>\u041e\u0434\u0438\u043d \u0443\u0437\u0435\u043b \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 down.<\/li>\n<li>33% \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0434\u0435\u0433\u0440\u0430\u0434\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u043c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 (\u043d\u0430 \u0434\u0430\u043d\u043d\u044b\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0447\u0430\u0441\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0445).<\/li>\n<\/ul>\n<p>  \u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u0438\u0439 \u0432\u0432\u043e\u0434\/\u0432\u044b\u0432\u043e\u0434 \u043d\u0435 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u0441\u044f. \u0417\u0430\u0433\u043b\u044f\u043d\u0443\u0432 \u0432 \u0432\u0435\u0431-\u043f\u0430\u043d\u0435\u043b\u044c Nomad \u0438 Prometheus, \u0432\u044b \u0432 \u044d\u0442\u043e\u043c \u043b\u0435\u0433\u043a\u043e \u0443\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c.<\/p>\n<p>  \u0412\u0435\u0440\u043d\u0435\u043c \u043a\u0430\u043a \u0431\u044b\u043b\u043e \u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c, \u0447\u0442\u043e \u043f\u0440\u043e\u0438\u0437\u043e\u0439\u0434\u0435\u0442:<\/p>\n<pre><code class=\"plaintext\"># \u0412\u044b\u0432\u043e\u0434\u0438\u043c \u0443\u0437\u0435\u043b \u0438\u0437 \u0440\u0435\u0436\u0438\u043c\u0430 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f. root@node1:~# ceph orch host maintenance exit node3 Ceph cluster 6ba7d13c-642b-11ee-b8b2-c70be95e3c50 on node3 has exited maintenance mode  # \u041f\u043e\u0441\u043b\u0435 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0432\u0441\u0435\u0445 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 \u043d\u0430 \u0443\u0437\u043b\u0435 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 root@node1:~# ceph -s   cluster:     id:     6ba7d13c-642b-11ee-b8b2-c70be95e3c50     health: HEALTH_WARN             Reduced data availability: 10 pgs peering     services:     mon: 3 daemons, quorum node1,node2,node3 (age 8s)     mgr: node2.ecffgz(active, since 7h), standbys: node1.cauksk     osd: 6 osds: 6 up (since 4s), 6 in (since 6h)     data:     pools:   2 pools, 33 pgs     objects: 124 objects, 397 MiB     usage:   2.5 GiB used, 33 GiB \/ 35 GiB avail     pgs:     69.697% pgs not active              23 peering              10 active+clean     io:     client:   1.7 MiB\/s rd, 22 op\/s rd, 0 op\/s wr     recovery: 685 KiB\/s, 0 objects\/s  # \u0427\u0435\u0440\u0435\u0437 \u043a\u0430\u043a\u043e\u0435-\u0442\u043e \u0432\u0440\u0435\u043c\u044f node3 \u0434\u043e\u0433\u043e\u043d\u044f\u0435\u0442 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f, \u0435\u0441\u043b\u0438 \u043e\u043d\u0438 \u0431\u044b\u043b\u0438, \u0438 \u043a\u043b\u0430\u0441\u0442\u0435\u0440 \u0432\u043d\u043e\u0432\u044c \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442. root@node1:~# ceph -s   cluster:     id:     6ba7d13c-642b-11ee-b8b2-c70be95e3c50     health: HEALTH_OK     services:     mon: 3 daemons, quorum node1,node2,node3 (age 20s)     mgr: node2.ecffgz(active, since 7h), standbys: node1.cauksk     osd: 6 osds: 6 up (since 16s), 6 in (since 6h)     data:     pools:   2 pools, 33 pgs     objects: 124 objects, 397 MiB     usage:   2.2 GiB used, 33 GiB \/ 35 GiB avail     pgs:     33 active+clean     io:     client:   24 KiB\/s wr, 0 op\/s rd, 3 op\/s wr     recovery: 196 KiB\/s, 0 objects\/s <\/code><\/pre>\n<p>  \u0410 \u0447\u0442\u043e, \u0435\u0441\u043b\u0438 \u043d\u0430\u043c \u043d\u0430\u0434\u043e \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c \u0434\u0438\u0441\u043a? \u0412 \u043f\u0435\u0440\u0432\u0443\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c, \u043e\u0442\u043c\u043e\u0442\u0430\u0435\u043c \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043d\u0430\u0437\u0430\u0434 \u0438 \u0432\u0441\u043f\u043e\u043c\u043d\u0438\u043c, \u043a\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u043c\u044b \u0440\u0430\u0437\u0432\u0435\u0440\u043d\u0443\u043b\u0438 \u0441\u0435\u0440\u0432\u0438\u0441\u044b OSD. \u041c\u044b \u0443\u043a\u0430\u0437\u0430\u043b\u0438, \u0447\u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0432\u0441\u0435 \u043d\u0435\u0437\u0430\u043d\u044f\u0442\u044b\u0435 \u0434\u0438\u0441\u043a\u0438 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430. \u0414\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u043d\u043e\u0432\u044b\u0435 \u0434\u0438\u0441\u043a\u0438 \u043d\u0435 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u043b\u0438\u0441\u044c \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u043e\u0432\u0435\u0441\u0438\u0442\u044c \u0444\u043b\u0430\u0433 &#8212;unmanaged.<\/p>\n<pre><code class=\"plaintext\">ceph orch apply osd --all-available-devices --unmanaged=true <\/code><\/pre>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c \u0443\u0434\u0430\u043b\u044f\u0435\u043c OSD \u0441 \u043f\u043e\u043c\u0435\u0442\u043a\u043e\u0439, \u0447\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u0430 \u0437\u0430\u043c\u0435\u043d\u0430, \u0438 \u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0441\u0442\u0430\u0442\u0443\u0441:<\/p>\n<pre><code class=\"plaintext\">root@node1:~# ceph orch osd rm 0 --replace Scheduled OSD(s) for removal. VG\/LV for the OSDs won't be zapped (--zap wasn't passed). Run the `ceph-volume lvm zap` command with `--destroy` against the VG\/LV if you want them to be destroyed.  root@node1:~# ceph orch osd rm status OSD  HOST   STATE     PGS  REPLACE  FORCE  ZAP    DRAIN STARTED AT             0    node3  draining   32  True     False  False  2024-04-12 15:02:05.987153 <\/code><\/pre>\n<p>  \u041c\u044b \u043e\u0436\u0438\u0434\u0430\u043b\u0438, \u0447\u0442\u043e \u0432\u0441\u0435 PG \u043d\u0430 \u0443\u0434\u0430\u043b\u044f\u0435\u043c\u043e\u043c OSD \u0431\u0443\u0434\u0443\u0442 \u044d\u0432\u0430\u043a\u0443\u0438\u0440\u043e\u0432\u0430\u043d\u044b \u0438 \u0434\u0438\u0441\u043a \u0431\u0443\u0434\u0435\u0442 \u0443\u0434\u0430\u043b\u0435\u043d, \u043d\u043e \u044d\u0442\u043e\u0433\u043e \u043d\u0435 \u043f\u0440\u043e\u0438\u0437\u043e\u0448\u043b\u043e, \u0442\u0430\u043a \u043a\u0430\u043a \u043f\u0443\u0442\u0435\u0439 \u0434\u043b\u044f \u044d\u0432\u0430\u043a\u0443\u0430\u0446\u0438\u0438 \u043d\u0435\u0442. \u0412 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u0445 \u043f\u0443\u043b\u0430 (\u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e) Nomad \u0443\u043a\u0430\u0437\u0430\u043d\u043e, \u0447\u0442\u043e \u0435\u0433\u043e \u0440\u0430\u0437\u043c\u0435\u0440 \u0440\u0430\u0432\u0435\u043d \u0442\u0440\u0435\u043c. \u041a\u043e\u0433\u0434\u0430 \u0432\u0441\u0435 \u0432 \u043f\u043e\u0440\u044f\u0434\u043a\u0435, \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u043c\u0438\u043d\u0438\u043c\u0443\u043c \u0442\u0440\u0438 \u043a\u043e\u043f\u0438\u0438 \u0434\u0430\u043d\u043d\u044b\u0445, \u0430 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440\u2014 \u0434\u0432\u0435 \u043a\u043e\u043f\u0438\u0438.<\/p>\n<pre><code class=\"plaintext\">root@node1:~# ceph osd pool ls detail ... pool 2 'nomad' replicated size 3 min_size 2 crush_rule 1 object_hash rjenkins pg_num 32 pgp_num 32 autoscale_mode on last_change 131 flags hashpspool,selfmanaged_snaps stripe_width 0 application rbd read_balance_score 1.78 <\/code><\/pre>\n<p>  \u041c\u044b \u043c\u043e\u0436\u0435\u043c \u043e\u0431\u043e\u0439\u0442\u0438 \u044d\u0442\u043e \u0434\u0432\u0443\u043c\u044f \u043f\u0443\u0442\u044f\u043c\u0438. \u041f\u0435\u0440\u0432\u044b\u0439 \u2014 \u0441\u043c\u0435\u043d\u0438\u0442\u044c \u043a\u043b\u0430\u0441\u0441 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 osd.3 \u043d\u0430 SSD, \u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d\u043d\u044b\u0439 \u043d\u0430 \u0442\u043e\u0439 \u0436\u0435 \u043d\u043e\u0434\u0435. \u0412\u0442\u043e\u0440\u043e\u0439 \u2014 \u0443\u043c\u0435\u043d\u044c\u0448\u0438\u0442\u044c \u0440\u0430\u0437\u043c\u0435\u0440 \u043f\u0443\u043b\u0430 \u0434\u043e \u0434\u0432\u0443\u0445. \u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u0438\u043c\u0435\u043d\u043d\u043e \u044d\u0442\u043e\u0442 \u0432\u0430\u0440\u0438\u0430\u043d\u0442, \u043d\u043e \u043b\u0438\u0448\u044c \u043f\u043e\u0442\u043e\u043c\u0443, \u0447\u0442\u043e \u043a\u043b\u0430\u0441\u0441\u044b \u043c\u0435\u043d\u044f\u0442\u044c \u043c\u044b \u0443\u0436\u0435 \u043d\u0430\u0443\u0447\u0438\u043b\u0438\u0441\u044c (\u0445\u043e\u0442\u044f \u0432 \u043f\u0440\u043e\u0434\u0435 \u0442\u0430\u043a, \u043a\u043e\u043d\u0435\u0447\u043d\u043e, \u043b\u0443\u0447\u0448\u0435 \u043d\u0435 \u0434\u0435\u043b\u0430\u0442\u044c).<\/p>\n<pre><code class=\"plaintext\">root@node1:~# ceph osd pool set nomad size 2 set pool 2 size to 2 <\/code><\/pre>\n<p>  \u0412\u0441\u0435 PG \u0431\u044b\u043b\u0438 \u0443\u0434\u0430\u043b\u0435\u043d\u044b. \u0412 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 \u043f\u0440\u043e\u0448\u0435\u043b \u043f\u0440\u043e\u0446\u0435\u0441\u0441 remap, \u0442\u043e \u0435\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 PG:<\/p>\n<pre><code class=\"plaintext\">root@node1:\/home\/vagrant# ceph -s   cluster:    id:     6ba7d13c-642b-11ee-b8b2-c70be95e3c50     health: HEALTH_OK ...      pgs:     122\/372 objects misplaced (32.796%)              32 active+clean+remapped              1  active+clean <\/code><\/pre>\n<p>  \u0423\u0434\u0430\u043b\u0438\u043c \u0440\u0430\u0437\u043c\u0435\u0442\u043a\u0443, \u0447\u0442\u043e\u0431\u044b \u044d\u043c\u0443\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0437\u0430\u043c\u0435\u043d\u0443 \u0434\u0438\u0441\u043a\u0430, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0431\u044b\u043b \u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d osd.0. \u041a\u0441\u0442\u0430\u0442\u0438, \u0430 \u043a\u0430\u043a\u043e\u0439 \u044d\u0442\u043e \u0434\u0438\u0441\u043a? \u0421\u0435\u0439\u0447\u0430\u0441 \u0432\u044b\u044f\u0441\u043d\u0438\u043c. \u042d\u0442\u043e \u043b\u0435\u0433\u043a\u043e \u0434\u0435\u043b\u0430\u0442\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0443\u0442\u0438\u043b\u0438\u0442\u044b ceph-volume. \u0417\u0430\u0439\u0434\u0435\u043c \u043d\u0430 node3 \u0438 \u0443\u0434\u0430\u043b\u0438\u043c \u0440\u0430\u0437\u043c\u0435\u0442\u043a\u0443:<\/p>\n<pre><code class=\"plaintext\">root@node3:~# apt install ceph-volume -y root@node3:~# ceph-volume lvm list ====== osd.0 =======   [block]       \/dev\/ceph-28366058-ad51-452c-af65-3a0114b4a2f0\/osd-block-d6b1004d-bdfe-4d01-b010-31940432d912       block device              \/dev\/ceph-28366058-ad51-452c-af65-3a0114b4a2f0\/osd-block-d6b1004d-bdfe-4d01-b010-31940432d912       block uuid                mkuCJu-wyBv-YiFn-hTlp-tzy5-p503-73Y328       cephx lockbox secret             cluster fsid              6ba7d13c-642b-11ee-b8b2-c70be95e3c50       cluster name              ceph       crush device class               encrypted                 0       osd fsid                  d6b1004d-bdfe-4d01-b010-31940432d912       osd id                    0       osdspec affinity          all-available-devices       type                      block       vdo                       0       devices                   \/dev\/sdb  root@node3:~# ceph-volume lvm zap \/dev\/sdb --> Zapping: \/dev\/sdb --> Zapping lvm member \/dev\/sdb. <\/code><\/pre>\n<p>  \u0417\u0430\u0442\u0435\u043c \u2014 \u043e\u0431\u043d\u043e\u0432\u0438\u043c \u0441\u043f\u0438\u0441\u043e\u043a \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432:<\/p>\n<pre><code class=\"plaintext\">root@node1:~# ceph orch device ls node3 --refresh HOST   PATH      TYPE  DEVICE ID                           SIZE  AVAILABLE  REFRESHED  REJECT REASONS                                                            node3  \/dev\/sdb  hdd   VBOX_HARDDISK_VBef988c66-7de380c8  6000M  Yes        0s ago                                                                               node3  \/dev\/sdc  hdd   VBOX_HARDDISK_VBb42afeb2-1643e145  6000M  No         0s ago     Has a FileSystem, Insufficient space (&lt;10 extents) on vgs, LVM detected <\/code><\/pre>\n<p>  \u0421\u043d\u0438\u043c\u0435\u043c \u0444\u043b\u0430\u0433 unmaneged \u0438 \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u043c \u0440\u0430\u0437\u043c\u0435\u0440 \u043f\u0443\u043b\u0430 \u0434\u043e \u0442\u0440\u0435\u0445. \u0412\u0438\u0434\u043d\u043e, \u0447\u0442\u043e PG \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 \u0441\u043d\u043e\u0432\u0430 \u00ab\u043f\u043e\u0435\u0445\u0430\u043b\u0438\u00bb: \u0432 \u044d\u0442\u043e\u0442 \u0440\u0430\u0437 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b\u0441\u044f \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0440\u0435\u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438. \u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u043f\u0443\u043b nomad \u0440\u0430\u0437\u044a\u0435\u0445\u0430\u043b\u0441\u044f \u0440\u0430\u0432\u043d\u043e\u043c\u0435\u0440\u043d\u043e \u043f\u043e \u0442\u0440\u0435\u043c \u0434\u0438\u0441\u043a\u0430\u043c.<\/p>\n<pre><code class=\"plaintext\">root@node1:~# ceph osd df tree class ssd ID  CLASS  WEIGHT   REWEIGHT  SIZE     RAW USE  DATA     OMAP     META     AVAIL    %USE   VAR   PGS  STATUS  TYPE NAME      -1         0.03415         -   18 GiB  1.4 GiB  763 MiB    4 KiB  625 MiB   16 GiB   7.71  1.00    -          root default   -7         0.01138         -  5.9 GiB  379 MiB  259 MiB    4 KiB  120 MiB  5.5 GiB   6.32  0.82    -              host node1  2    ssd  0.00569   1.00000  5.9 GiB  379 MiB  259 MiB    4 KiB  120 MiB  5.5 GiB   6.32  0.82   19      up          osd.2  -3         0.01138         -  5.9 GiB  714 MiB  252 MiB      0 B  461 MiB  5.2 GiB  11.90  1.54    -              host node2  1    ssd  0.00569   1.00000  5.9 GiB  714 MiB  252 MiB      0 B  461 MiB  5.2 GiB  11.90  1.54   24      up          osd.1  -5         0.01138         -  5.9 GiB  295 MiB  251 MiB      0 B   44 MiB  5.6 GiB   4.92  0.64    -              host node3  0    ssd  0.00569   1.00000  5.9 GiB  295 MiB  251 MiB      0 B   44 MiB  5.6 GiB   4.92  0.64   21      up          osd.0                         TOTAL   18 GiB  1.4 GiB  763 MiB  4.2 KiB  625 MiB   16 GiB   7.71 <\/code><\/pre>\n<p>  \u041f\u043e\u0441\u043b\u0435 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u0440\u0430\u0437\u043c\u0435\u0440\u0430 \u043f\u0443\u043b\u0430 \u043e\u0436\u0438\u0434\u0430\u0435\u043c \u0432\u043d\u043e\u0432\u044c \u0440\u0430\u0432\u043d\u043e\u043c\u0435\u0440\u043d\u043e\u0433\u043e \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f, \u043f\u043e 32 PG \u043d\u0430 OSD.<\/p>\n<pre><code class=\"plaintext\">root@node1:~# ceph osd pool set nomad size 3 set pool 2 size to 3 <\/code><\/pre>\n<p>  \u041e\u043f\u044f\u0442\u044c \u043f\u0440\u043e\u0438\u0437\u043e\u0448\u0435\u043b \u043f\u0440\u043e\u0446\u0435\u0441\u0441 recovery, \u0432\u0441\u0435 PG \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u0438\u0441\u044c \u0432 \u0442\u0440\u0435\u0445 \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440\u0430\u0445:<\/p>\n<pre><code class=\"plaintext\">root@node1:~# ceph osd df tree class ssd ID  CLASS  WEIGHT   REWEIGHT  SIZE     RAW USE  DATA     OMAP     META     AVAIL    %USE   VAR   PGS  STATUS  TYPE NAME      -1         0.03415         -   18 GiB  1.7 GiB  1.1 GiB    4 KiB  630 MiB   16 GiB   9.85  1.00    -          root default   -7         0.01138         -  5.9 GiB  484 MiB  380 MiB    4 KiB  104 MiB  5.4 GiB   8.08  0.82    -              host node1  2    ssd  0.00569   1.00000  5.9 GiB  484 MiB  380 MiB    4 KiB  104 MiB  5.4 GiB   8.08  0.82   32      up          osd.2  -3         0.01138         -  5.9 GiB  842 MiB  380 MiB      0 B  461 MiB  5.0 GiB  14.04  1.43    -              host node2  1    ssd  0.00569   1.00000  5.9 GiB  842 MiB  380 MiB      0 B  461 MiB  5.0 GiB  14.04  1.43   32      up          osd.1  -5         0.01138         -  5.9 GiB  446 MiB  380 MiB      0 B   65 MiB  5.4 GiB   7.43  0.75    -              host node3  0    ssd  0.00569   1.00000  5.9 GiB  446 MiB  380 MiB      0 B   65 MiB  5.4 GiB   7.43  0.75   32      up          osd.0                         TOTAL   18 GiB  1.7 GiB  1.1 GiB  4.2 KiB  630 MiB   16 GiB   9.85                                    MIN\/MAX VAR: 0.75\/1.43  STDDEV: 2.97 <\/code><\/pre>\n<p>  \u041a\u043b\u0430\u0441\u0442\u0435\u0440 \u043f\u0435\u0440\u0435\u0448\u0435\u043b \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 OK, \u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u0438\u0439 \u0432\u0432\u043e\u0434\/\u0432\u044b\u0432\u043e\u0434 \u043d\u0435 \u043f\u0440\u0435\u043a\u0440\u0430\u0449\u0430\u043b\u0441\u044f, \u0437\u0430\u0434\u0430\u043d\u0438\u0435 \u0432 NOMAD \u043d\u0435 \u043f\u0430\u0434\u0430\u043b\u043e, \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 Prometheus \u043d\u0435 \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u043b\u043e\u0441\u044c. \u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0435 \u0432\u0438\u0434\u043d\u043e \u043d\u0430 \u0433\u0440\u0430\u0444\u0438\u043a\u0435 \u043c\u0435\u0442\u0440\u0438\u043a\u0438 \u0438 \u0432 uptime \u0437\u0430\u0434\u0430\u043d\u0438\u044f Prometheus:<\/p>\n<pre><code class=\"plaintext\">root@node4:~# nomad alloc exec -it -task prometheus-server 0d02495c \/bin\/sh \/prometheus $ uptime  15:51:33 up 3 days,  4:47,  0 users,  load average: 0.33, 0.41, 0.42 <\/code><\/pre>\n<p>  <a name=\"9\"><\/a><font color=\"#EB4247\"><\/p>\n<h2>\u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435<\/h2>\n<p><\/font><br \/>  \u0425\u043e\u0442\u044f \u0441\u0442\u0430\u0442\u044c\u044f \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0430\u0441\u044c \u043e\u0431\u044a\u0435\u043c\u043d\u043e\u0439, \u0443\u043b\u043e\u0436\u0438\u0442\u044c \u0432 \u043d\u0435\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c \u043b\u0438\u0448\u044c \u043c\u0430\u043b\u0443\u044e \u0447\u0430\u0441\u0442\u044c \u0434\u0430\u0436\u0435 \u0431\u0430\u0437\u043e\u0432\u044b\u0445 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439 \u0432 Ceph. \u0417\u0434\u0435\u0441\u044c \u043d\u0435 \u0443\u043f\u043e\u043c\u044f\u043d\u0443\u0442\u044b \u0434\u0440\u0443\u0433\u0438\u0435 \u0442\u0438\u043f\u044b \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u0434\u0430\u043d\u043d\u044b\u043c, \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0435 \u0444\u043b\u0430\u0433\u0438, \u043a\u0432\u043e\u0442\u044b, \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u043c \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u0438 \u043c\u043d\u043e\u0433\u043e\u0435 \u0434\u0440\u0443\u0433\u043e\u0435. \u0412\u043f\u0440\u043e\u0447\u0435\u043c, \u044d\u0442\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u043b\u0435\u0433\u043a\u043e \u0438\u0437\u0443\u0447\u0438\u0442\u044c \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432\u0441\u0435 \u0432 \u0432\u0430\u0448\u0438\u0445 \u0440\u0443\u043a\u0430\u0445. \u0410 \u043f\u043e\u043a\u0430, \u043a\u0430\u043a \u0434\u043e\u0433\u043e\u0432\u0430\u0440\u0438\u0432\u0430\u043b\u0438\u0441\u044c \u0432 \u043d\u0430\u0447\u0430\u043b\u0435, \u0434\u043e\u0431\u0440\u043e \u043f\u043e\u0436\u0430\u043b\u043e\u0432\u0430\u0442\u044c \u0432 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0438.<\/div>\n<\/div>\n<\/div>\n<p><!----><!----><\/div>\n<p><!----><!----><br \/> \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\/articles\/814507\/\"> https:\/\/habr.com\/ru\/articles\/814507\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-1\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/post_images\/f17\/6bf\/fa2\/f176bffa201c84f54d4d996931c81969.png\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/f17\/6bf\/fa2\/f176bffa201c84f54d4d996931c81969.png\"\/><\/div>\n<p>  \u041f\u0440\u0438\u0432\u0435\u0442! \u042f \u0412\u043b\u0430\u0434\u0438\u043c\u0438\u0440 \u0418\u0432\u0430\u043d\u043e\u0432, \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 <a href=\"https:\/\/selectel.ru\/services\/dedicated\/?utm_source=habr.com&amp;utm_medium=referral&amp;utm_campaign=dedicated_article_ceph_160524_content\">\u0432\u044b\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432<\/a> \u0432 Selectel. \u041c\u044b \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0447\u0430\u0441\u0442\u043e \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0438\u0440\u0443\u0435\u043c \u0441 \u043f\u043e\u0434\u0445\u043e\u0434\u0430\u043c\u0438, \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430\u043c\u0438 \u0438 \u0440\u0435\u0448\u0435\u043d\u0438\u044f\u043c\u0438. \u0412 \u043e\u0434\u043d\u043e\u043c \u0438\u0437 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u043e\u0432 \u0434\u043e\u0431\u0440\u0430\u043b\u0438\u0441\u044c \u0434\u043e Ceph: \u0441\u0434\u0435\u043b\u0430\u043b\u0438 \u0442\u0440\u0435\u043d\u0430\u0436\u0435\u0440, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043c\u043e\u0436\u043d\u043e \u00ab\u043f\u043e\u0442\u044b\u043a\u0430\u0442\u044c\u00bb \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430, \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u0433\u0438\u043f\u043e\u0442\u0435\u0437\u044b, \u0447\u0442\u043e-\u0442\u043e \u0441\u043b\u043e\u043c\u0430\u0442\u044c\/\u043f\u043e\u0447\u0438\u043d\u0438\u0442\u044c, \u043d\u0435 \u0441\u043e\u0431\u0438\u0440\u0430\u044f \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u0436\u0435\u043b\u0435\u0437\u043d\u044b\u0439 \u043a\u043b\u0430\u0441\u0442\u0435\u0440. \u0412 \u0441\u043b\u0443\u0447\u0430\u0435 \u0444\u0435\u0439\u043b\u0430 \u044d\u0442\u043e\u0442 \u0442\u0440\u0435\u043d\u0430\u0436\u0435\u0440 \u043c\u043e\u0436\u043d\u043e \u0440\u0430\u0437\u0432\u0435\u0440\u043d\u0443\u0442\u044c \u0437\u0430\u043d\u043e\u0432\u043e \u0432 \u043f\u0430\u0440\u0443 \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u044b\u0445 \u043a\u043e\u043c\u0430\u043d\u0434.<\/p>\n<p>  \u0422\u0430\u043a \u0438 \u043f\u043e\u044f\u0432\u0438\u043b\u0430\u0441\u044c \u0438\u0434\u0435\u044f \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u044d\u0442\u0443 \u0441\u0442\u0430\u0442\u044c\u044e. \u042f \u043f\u043e\u043a\u0430\u0436\u0443, \u043a\u0430\u043a \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c Ceph \u043a \u043e\u0440\u043a\u0435\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0443 Nomad, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0434\u043b\u044f \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432. \u0415\u0441\u043b\u0438 \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u043e\u0431\u043b\u0438\u0436\u0435 \u043f\u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f \u0441 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u043c\u0438 \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u0438 \u0438 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f Ceph, \u043f\u0440\u043e\u0448\u0443 \u043f\u043e\u0434 \u043a\u0430\u0442! \u0410 \u0435\u0441\u043b\u0438 \u0443\u0436\u0435 \u0437\u043d\u0430\u043a\u043e\u043c\u044b \u2014 \u043f\u0440\u043e\u0448\u0443 \u0432 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0438, \u043f\u043e\u0434\u0435\u043b\u0438\u0442\u0435\u0441\u044c \u0441\u0432\u043e\u0438\u043c \u043e\u043f\u044b\u0442\u043e\u043c.<\/p>\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-376205","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/376205","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=376205"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/376205\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=376205"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=376205"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=376205"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}