{"id":30623,"date":"2019-10-31T21:36:34","date_gmt":"2019-10-31T18:36:34","guid":{"rendered":"https:\/\/prohoster.info\/blog\/klasternoe-hranilishhe-dlya-nebolshih-web-klasterov-na-baze-drbd-ocfs2\/"},"modified":"2019-10-31T21:36:34","modified_gmt":"2019-10-31T18:36:34","slug":"klasternoe-hranilishhe-dlya-nebolshih-web-klasterov-na-baze-drbd-ocfs2","status":"publish","type":"post","link":"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/klasternoe-hranilishhe-dlya-nebolshih-web-klasterov-na-baze-drbd-ocfs2","title":{"rendered":"Armazenamento em cluster para pequenos clusters web usando drbd+ocfs2","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><b>Sobre o que vamos falar:<\/b><br \/>\nComo implementar rapidamente um armazenamento compartilhado para dois servidores com solu\u00e7\u00f5es drbd+ocfs2. <\/p>\n<p><b>Para quem isso ser\u00e1 \u00fatil:<\/b><br \/>\nEste tutorial ser\u00e1 \u00fatil para administradores de sistema e todos que est\u00e3o escolhendo uma forma de implementar um armazenamento ou querem experimentar a solu\u00e7\u00e3o.<\/p>\n<h3>De quais solu\u00e7\u00f5es desistimos e por qu\u00ea<\/h3>\n<p>\nFrequentemente nos deparamos com a situa\u00e7\u00e3o em que precisamos implementar um armazenamento compartilhado em um pequeno web cluster com boa performance em leitura e grava\u00e7\u00e3o. Testamos v\u00e1rias op\u00e7\u00f5es de implementa\u00e7\u00f5es de armazenamento compartilhado para nossos projetos, mas poucas conseguiram nos satisfazer em v\u00e1rios aspectos ao mesmo tempo. Agora, vamos explicar o porqu\u00ea.<\/p>\n<ul>\n<li>O Glusterfs n\u00e3o nos atendeu em performance de leitura e grava\u00e7\u00e3o, surgiram problemas com a leitura simult\u00e2nea de um grande n\u00famero de arquivos, houve uma alta carga na CPU. O problema de leitura de arquivos poderia ser resolvido acessando-os diretamente nos bricks, mas isso nem sempre \u00e9 aplic\u00e1vel e, de modo geral, \u00e9 inadequado. <\/li>\n<\/ul>\n<p><\/p>\n<ul>\n<li>O Ceph nos desagrada pela complexidade excessiva, que pode ser prejudicial em projetos com 2-4 <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/pt\/server\/dts-dusseldorf\/\"   title=\"servidores\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"3413\">servidores<\/a>, especialmente se o projeto for posteriormente mantido. Al\u00e9m disso, existem s\u00e9rias limita\u00e7\u00f5es de desempenho que for\u00e7am a constru\u00e7\u00e3o de clusters de armazenamento separados, assim como com o glusterfs. <\/li>\n<\/ul>\n<p><\/p>\n<ul>\n<li>O uso de um \u00fanico servidor NFS para implementar o armazenamento compartilhado levanta quest\u00f5es sobre a resili\u00eancia. <\/li>\n<\/ul>\n<p><\/p>\n<ul>\n<li> S3 \u00e9 uma excelente solu\u00e7\u00e3o popular para alguns tipos de tarefas, mas n\u00e3o \u00e9 um sistema de arquivos, o que limita seu campo de aplica\u00e7\u00e3o.<\/li>\n<\/ul>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<ul>\n<li>Lsyncd. J\u00e1 que come\u00e7amos a falar sobre \"n\u00e3o-sistemas de arquivos\", vale a pena mencionar esta solu\u00e7\u00e3o popular. Al\u00e9m de n\u00e3o ser adequada para troca bidirecional (mas se realmente for necess\u00e1rio, \u00e9 poss\u00edvel), ela tamb\u00e9m n\u00e3o funciona de forma est\u00e1vel com um grande n\u00famero de arquivos. Um adicional curioso \u00e9 que ela \u00e9 de thread \u00fanica. A raz\u00e3o para isso est\u00e1 na arquitetura do programa: ele usa inotify para monitorar os objetos em opera\u00e7\u00e3o, que ele configura ao iniciar e ao reescanear. O m\u00e9todo de transfer\u00eancia utilizado \u00e9 o rsync. <\/li>\n<\/ul>\n<p><\/p>\n<h3>Tutorial: como implementar um armazenamento compartilhado com drbd+ocfs2<\/h3>\n<p>\nUma das solu\u00e7\u00f5es mais convenientes para n\u00f3s foi a combina\u00e7\u00e3o <b>ocfs2+drbd<\/b>. Agora, vamos mostrar como \u00e9 poss\u00edvel implementar rapidamente um armazenamento compartilhado para dois <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/pt\/server\/\"   title=\"servidores\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"1291\">servidores<\/a> base de dados de solu\u00e7\u00f5es. Mas primeiro, um pouco sobre os componentes:<\/p>\n<p><b>DRBD<\/b> \u2014 sistema de armazenamento padr\u00e3o do Linux que permite replicar dados entre servidores em blocos. Sua principal aplica\u00e7\u00e3o est\u00e1 na constru\u00e7\u00e3o de armazenamentos com alta disponibilidade.<\/p>\n<p><b>OCFS2<\/b> \u2014 sistema de arquivos que permite o uso compartilhado do mesmo armazenamento entre v\u00e1rias sistemas. Faz parte da distribui\u00e7\u00e3o do Linux e consiste em um m\u00f3dulo do kernel e ferramentas de espa\u00e7o de usu\u00e1rio para trabalhar com o sistema de arquivos. O OCFS2 pode ser usado n\u00e3o apenas sobre o DRBD, mas tamb\u00e9m sobre iSCSI com m\u00faltiplas conex\u00f5es. No nosso exemplo, estamos usando DRBD.<\/p>\n<p>Todas as a\u00e7\u00f5es s\u00e3o realizadas no ubuntu server 18.04 em configura\u00e7\u00e3o m\u00ednima.<\/p>\n<p><b>Passo 1. Configurando o DRBD:<br \/>\n<\/b><br \/>\nNo arquivo \/etc\/drbd.d\/drbd0.res descrevemos nosso dispositivo de bloco virtual \/dev\/drbd0:<\/p>\n<pre><code class=\"plaintext\">resource drbd0 {\n    syncer { rate 1000M; }\n    net {\n        allow-two-primaries;\n        after-sb-0pri discard-zero-changes;\n        after-sb-1pri discard-secondary;\n        after-sb-2pri disconnect;\n    }\n    startup { become-primary-on both; }\n    on drbd1 {\n        meta-disk internal;\n        device \/dev\/drbd0;\n        disk \/dev\/vdb1;\n        address 10.10.10.192:7789;\n}\n    on drbd2 {\n        meta-disk internal;\n        device \/dev\/drbd0;\n        disk \/dev\/vdb1;\n        address 10.10.10.193:7789;\n}\n}<\/code><\/pre>\n<p>\n<i>meta-disk internal<\/i> \u2014 utilizar os mesmos dispositivos de bloco para armazenar metadados<br \/>\n<i>device \/dev\/drbd0<\/i> \u2014 usar \/dev\/drbd0 como caminho para o drbd.<br \/>\n<i>disk \/dev\/vdb1<\/i> \u2014 usar \/dev\/vdb1 <br \/>\n<i>syncer { rate 1000M; }<\/i> \u2014 usar largura de banda de um gigabit do canal<br \/>\n<i>allow-two-primaries<\/i> \u2014 op\u00e7\u00e3o importante que permite que altera\u00e7\u00f5es sejam aceitas em dois servidores prim\u00e1rios<br \/>\n<i>after-sb-0pri, after-sb-1pri, after-sb-2pri<\/i> \u2014 op\u00e7\u00f5es que controlam as a\u00e7\u00f5es do n\u00f3 ao detectar split-brain. Mais detalhes podem ser encontrados na documenta\u00e7\u00e3o.<br \/>\n<i>become-primary-on both<\/i> \u2014 estabelece ambos os n\u00f3s como prim\u00e1rios.<\/p>\n<p>No nosso caso, temos duas VMs id\u00eanticas, com uma rede virtual dedicada com largura de banda de 10 gigabits.<\/p>\n<p>No nosso exemplo, os nomes de rede dos dois n\u00f3s do cluster s\u00e3o drbd1 e drbd2. Para um funcionamento correto, \u00e9 necess\u00e1rio mapear os nomes e endere\u00e7os IP dos n\u00f3s no \/etc\/hosts.<\/p>\n<pre><code class=\"bash\">10.10.10.192 drbd1\n10.10.10.193 drbd2<\/code><\/pre>\n<p>\n<b>Passo 2. Configurando os n\u00f3s:<\/b><\/p>\n<p>Em ambos os servidores, execute:<\/p>\n<pre><code class=\"bash\">drbdadm create-md drbd0<\/code><\/pre>\n<p>\n<img decoding=\"async\" alt=\"Armazenamento em cluster para pequenos clusters web usando drbd+ocfs2\" src=\"\/wp-content\/uploads\/2019\/03\/38b0a4a4fc60ac617abfad6e8f755ae7.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<pre><code class=\"bash\">modprobe drbd\ndrbdadm up drbd0\ncat \/proc\/drbd<\/code><\/pre>\n<p>\nObtivemos o seguinte:<\/p>\n<p><img decoding=\"async\" alt=\"Armazenamento em cluster para pequenos clusters web usando drbd+ocfs2\" src=\"\/wp-content\/uploads\/2019\/03\/91c48ed32cd1471e4076934d041966d8.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nPodemos iniciar a sincroniza\u00e7\u00e3o. No primeiro n\u00f3, \u00e9 necess\u00e1rio executar:<\/p>\n<pre><code class=\"bash\">drbdadm primary --force drbd0<\/code><\/pre>\n<p>\nVerifique o status:<\/p>\n<pre><code class=\"bash\">cat \/proc\/drbd<\/code><\/pre>\n<p>\n<img decoding=\"async\" alt=\"Armazenamento em cluster para pequenos clusters web usando drbd+ocfs2\" src=\"\/wp-content\/uploads\/2019\/03\/b94b54b1050595bec774adf6c5190968.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n\u00d3timo, a sincroniza\u00e7\u00e3o come\u00e7ou. Esperamos a conclus\u00e3o e vemos a situa\u00e7\u00e3o:<\/p>\n<p><img decoding=\"async\" alt=\"Armazenamento em cluster para pequenos clusters web usando drbd+ocfs2\" src=\"\/wp-content\/uploads\/2019\/03\/7f9e2d3664d3a578c74e72b8bc4c1a7f.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>Passo 3. Iniciando a sincroniza\u00e7\u00e3o no segundo n\u00f3:<\/b><\/p>\n<pre><code class=\"bash\">drbdadm primary --force drbd0\n<\/code><\/pre>\n<p>\nObtivemos o seguinte:<\/p>\n<p><img decoding=\"async\" alt=\"Armazenamento em cluster para pequenos clusters web usando drbd+ocfs2\" src=\"\/wp-content\/uploads\/2019\/03\/ad3d616ca84fa26a18574f433bb7d9fe.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAgora podemos escrever no drbd a partir de dois servidores.<\/p>\n<p><b>Passo 4. Instala\u00e7\u00e3o e configura\u00e7\u00e3o do ocfs2.<\/b><\/p>\n<p>Usaremos uma configura\u00e7\u00e3o bastante trivial:<\/p>\n<pre><code class=\"plaintext\">cluster:\n     node_count = 2\n     name = ocfs2cluster\n\nnode:\n     number = 1\n     cluster = ocfs2cluster\n     ip_port = 7777\n     ip_address = 10.10.10.192\n     name = drbd1\n\nnode:\n     number = 2\n     cluster = ocfs2cluster\n     ip_port = 7777\n     ip_address = 10.10.10.193\n     name = drbd2\n<\/code><\/pre>\n<p>\nEle precisa ser gravado em <i>\/etc\/ocfs2\/cluster.conf<\/i> ambas as nodos.<\/p>\n<p>Criamos um sistema de arquivos no drbd0 em qualquer nodo:<\/p>\n<pre><code class=\"bash\">mkfs.ocfs2 -L \"testVol\" \/dev\/drbd0\n<\/code><\/pre>\n<p>\nAqui criamos um sistema de arquivos com o r\u00f3tulo testVol no drbd0, usando os par\u00e2metros padr\u00f5es.<\/p>\n<p><img decoding=\"async\" alt=\"Armazenamento em cluster para pequenos clusters web usando drbd+ocfs2\" src=\"\/wp-content\/uploads\/2019\/03\/d147b91ca6f39d846023d8b5c35a240e.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nEm \/etc\/default\/o2cb, \u00e9 necess\u00e1rio definir (como em nosso arquivo de configura\u00e7\u00e3o)<\/p>\n<pre><code class=\"bash\">O2CB_ENABLED=true \nO2CB_BOOTCLUSTER=ocfs2cluster <\/code><\/pre>\n<p>\ne executar em cada nodo:<\/p>\n<pre><code class=\"bash\">o2cb register-cluster ocfs2cluster<\/code><\/pre>\n<p>\nEm seguida, ativamos e adicionamos ao in\u00edcio autom\u00e1tico todas as unidades necess\u00e1rias:<\/p>\n<pre><code class=\"bash\">systemctl enable drbd o2cb ocfs2\nsystemctl start drbd o2cb ocfs2<\/code><\/pre>\n<p>\nParte disso j\u00e1 ser\u00e1 iniciada durante a configura\u00e7\u00e3o.<\/p>\n<p><b>Passo 5. Adicionamos pontos de montagem no fstab em ambas as nodos:<\/b><\/p>\n<pre><code class=\"bash\">\/dev\/drbd0 \/media\/shared ocfs2 defaults,noauto,heartbeat=local 0 0<\/code><\/pre>\n<p>\nO diret\u00f3rio <i>\/media\/shared<\/i> deve ser criado previamente.<\/p>\n<p>Aqui usamos as op\u00e7\u00f5es noauto, que significa que o sistema de arquivos n\u00e3o ser\u00e1 montado na inicializa\u00e7\u00e3o (prefiro montar sistemas de arquivos de rede via systemd) e heartbeat=local, que significa o uso do servi\u00e7o heartbeat em cada nodo. Existe tamb\u00e9m o heartbeat global, que \u00e9 mais adequado para grandes clusters.<\/p>\n<p>A seguir, podemos montar <i>\/media\/shared<\/i> e verificar a sincroniza\u00e7\u00e3o do conte\u00fado.<\/p>\n<p><b>Pronto!<\/b> Como resultado, obtemos um armazenamento mais ou menos tolerante a falhas, com possibilidade de escalabilidade e desempenho decente.<br \/>\n<br \/>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/445612\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041e \u0447\u0435\u043c \u043c\u044b \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0435\u043c: \u041a\u0430\u043a \u0431\u044b\u0441\u0442\u0440\u043e \u0440\u0430\u0437\u0432\u0435\u0440\u043d\u0443\u0442\u044c \u043e\u0431\u0449\u0435\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0434\u043b\u044f \u0434\u0432\u0443\u0445 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u043d\u0430 \u0431\u0430\u0437\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0439 drbd+ocfs2. \u0414\u043b\u044f \u043a\u043e\u0433\u043e \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u043b\u0435\u0437\u043d\u043e: \u0422\u0443\u0442\u043e\u0440\u0438\u0430\u043b \u0441\u0442\u0430\u043d\u0435\u0442 \u043f\u043e\u043b\u0435\u0437\u0435\u043d \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u043c \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430\u043c \u0438 \u0432\u0441\u0435\u043c, \u043a\u0442\u043e \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u0442 \u0441\u043f\u043e\u0441\u043e\u0431 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 \u0438\u043b\u0438 \u0445\u043e\u0442\u044f\u0442 \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u0440\u0435\u0448\u0435\u043d\u0438\u0435. \u041e\u0442 \u043a\u0430\u043a\u0438\u0445 \u0440\u0435\u0448\u0435\u043d\u0438\u0439 \u043c\u044b \u043e\u0442\u043a\u0430\u0437\u0430\u043b\u0438\u0441\u044c \u0438 \u043f\u043e\u0447\u0435\u043c\u0443 \u0427\u0430\u0441\u0442\u043e \u043c\u044b \u0441\u0442\u0430\u043b\u043a\u0438\u0432\u0430\u0435\u043c\u0441\u044f \u0441 \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u0435\u0439, \u043a\u043e\u0433\u0434\u0430 \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0430 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u043c [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":22614,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-30623","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041e \u0447\u0435\u043c \u043c\u044b \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0435\u043c: \u041a\u0430\u043a \u0431\u044b\u0441\u0442\u0440\u043e \u0440\u0430\u0437\u0432\u0435\u0440\u043d\u0443\u0442\u044c \u043e\u0431\u0449\u0435\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0434\u043b\u044f \u0434\u0432\u0443\u0445 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u043d\u0430 \u0431\u0430\u0437\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0439 drbd+ocfs2.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/klasternoe-hranilishhe-dlya-nebolshih-web-klasterov-na-baze-drbd-ocfs2\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"pt_PT\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041a\u043b\u0430\u0441\u0442\u0435\u0440\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0434\u043b\u044f \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u0445 web-\u043a\u043b\u0430\u0441\u0442\u0435\u0440\u043e\u0432 \u043d\u0430 \u0431\u0430\u0437\u0435 drbd+ocfs2 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041e \u0447\u0435\u043c \u043c\u044b \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0435\u043c: \u041a\u0430\u043a \u0431\u044b\u0441\u0442\u0440\u043e \u0440\u0430\u0437\u0432\u0435\u0440\u043d\u0443\u0442\u044c \u043e\u0431\u0449\u0435\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0434\u043b\u044f \u0434\u0432\u0443\u0445 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u043d\u0430 \u0431\u0430\u0437\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0439 drbd+ocfs2.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/klasternoe-hranilishhe-dlya-nebolshih-web-klasterov-na-baze-drbd-ocfs2\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T18:36:34+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:36:34+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Armazenamento em cluster para pequenos web clusters baseado em drbd+ocfs2 | ProHoster","description":"Sobre o que falaremos: Como implementar rapidamente um armazenamento comum para dois servidores baseado em solu\u00e7\u00f5es drbd+ocfs2.","canonical_url":"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/klasternoe-hranilishhe-dlya-nebolshih-web-klasterov-na-baze-drbd-ocfs2","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"pt_PT","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041a\u043b\u0430\u0441\u0442\u0435\u0440\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0434\u043b\u044f \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u0445 web-\u043a\u043b\u0430\u0441\u0442\u0435\u0440\u043e\u0432 \u043d\u0430 \u0431\u0430\u0437\u0435 drbd+ocfs2 | ProHoster","og:description":"\u041e \u0447\u0435\u043c \u043c\u044b \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0435\u043c: \u041a\u0430\u043a \u0431\u044b\u0441\u0442\u0440\u043e \u0440\u0430\u0437\u0432\u0435\u0440\u043d\u0443\u0442\u044c \u043e\u0431\u0449\u0435\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0434\u043b\u044f \u0434\u0432\u0443\u0445 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u043d\u0430 \u0431\u0430\u0437\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0439 drbd+ocfs2.","og:url":"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/klasternoe-hranilishhe-dlya-nebolshih-web-klasterov-na-baze-drbd-ocfs2","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T18:36:34+00:00","article:modified_time":"2019-10-31T18:36:34+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"30623","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-02-19 09:14:07","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 03:31:24","updated":"2026-02-19 09:14:07","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/30623","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/comments?post=30623"}],"version-history":[{"count":2,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/30623\/revisions"}],"predecessor-version":[{"id":161788,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/30623\/revisions\/161788"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/media\/22614"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/media?parent=30623"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/categories?post=30623"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/tags?post=30623"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}