{"id":53717,"date":"2019-12-08T00:00:00","date_gmt":"2019-12-07T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/ustanovka-raspredelyonnogo-otkazoustojchivogo-hranilishha-obektov-leofs-sovmestimogo-s-klientami-ispolzuyushhimi-s3-nfs"},"modified":"2020-02-18T14:01:38","modified_gmt":"2020-02-18T11:01:38","slug":"ustanovka-raspredelyonnogo-otkazoustojchivogo-hranilishha-obektov-leofs-sovmestimogo-s-klientami-ispolzuyushhimi-s3-nfs","status":"publish","type":"post","link":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/ustanovka-raspredelyonnogo-otkazoustojchivogo-hranilishha-obektov-leofs-sovmestimogo-s-klientami-ispolzuyushhimi-s3-nfs","title":{"rendered":"Installazione di uno storage distribuito e fault-tolerant LeoFS, compatibile con i client che utilizzano S3, NFS","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>\u0421\u043e\u0433\u043b\u0430\u0441\u043d\u043e <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=48357\">Opennet<\/a><\/noindex>: <noindex><a rel=\"nofollow\" href=\"http:\/\/leo-project.net\/leofs\/index.html\">LeoFS<\/a><\/noindex> \u2014 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u043e\u0435 \u043e\u0442\u043a\u0430\u0437\u043e\u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 <noindex><a rel=\"nofollow\" href=\"http:\/\/leo-project.net\/leofs\/index.html\">LeoFS<\/a><\/noindex>, \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0435 \u0441 \u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043c\u0438, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0438\u043c\u0438 API Amazon S3 \u0438 REST-API, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0440\u0435\u0436\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u044b \u0432 \u0440\u043e\u043b\u0438 NFS-\u0441\u0435\u0440\u0432\u0435\u0440\u0430. \u0418\u043c\u0435\u044e\u0442\u0441\u044f \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u043a\u0430\u043a \u043c\u0435\u043b\u043a\u0438\u0445, \u0442\u0430\u043a \u0438 \u043e\u0447\u0435\u043d\u044c \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432, \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0439 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u043a\u044d\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u0430 \u0440\u0435\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u044f \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449 \u043c\u0435\u0436\u0434\u0443 \u0434\u0430\u0442\u0430-\u0446\u0435\u043d\u0442\u0440\u0430\u043c\u0438. \u0421\u0440\u0435\u0434\u0438 \u0446\u0435\u043b\u0435\u0439 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u043e\u0442\u043c\u0435\u0447\u0430\u0435\u0442\u0441\u044f \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u0435 \u043d\u0430\u0434\u0451\u0436\u043d\u043e\u0441\u0442\u0438 99.9999999% \u0437\u0430 \u0441\u0447\u0451\u0442 \u0438\u0437\u0431\u044b\u0442\u043e\u0447\u043d\u043e\u0433\u043e \u0440\u0435\u043f\u043b\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u0443\u0431\u043b\u0438\u043a\u0430\u0442\u043e\u0432 \u0438 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0435\u0434\u0438\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0438 \u043e\u0442\u043a\u0430\u0437\u0430. \u041a\u043e\u0434 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u043d\u0430\u043f\u0438\u0441\u0430\u043d \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Erlang.<\/p>\n<p><\/p>\n<p>LeoFS \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u0442\u0440\u0451\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432:<\/p>\n<p><\/p>\n<ul>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/leo-project.net\/leofs\/docs\/architecture\/leo_storage\/\">LeoFS Storage<\/a><\/noindex> \u2014 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u0435\u0442 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f, \u0438\u0437\u0432\u043b\u0435\u0447\u0435\u043d\u0438\u044f \u0438 \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u044f \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 \u0438 \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0445, \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u0437\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0440\u0435\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u0438, \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u0438 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043e\u0447\u0435\u0440\u0435\u0434\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u0432.<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/leo-project.net\/leofs\/docs\/architecture\/leo_gateway\/\">LeoFS Gateway<\/a><\/noindex> \u2014 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u0435\u0442 HTTP-\u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0438 \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u043e\u0442\u0432\u0435\u0442\u044b \u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043c \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c REST-API \u0438\u043b\u0438 S3-API, \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0435\u0442 \u043a\u044d\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0432\u043e\u0441\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u043f\u0430\u043c\u044f\u0442\u0438 \u0438 \u043d\u0430 \u0434\u0438\u0441\u043a\u0435.<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/leo-project.net\/leofs\/docs\/architecture\/leo_manager\/\">LeoFS Manager<\/a><\/noindex> \u2014 \u043e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0443 \u0443\u0437\u043b\u043e\u0432 LeoFS Gateway \u0438 LeoFS Storage, \u0432\u0435\u0434\u0451\u0442 \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0443\u0437\u043b\u043e\u0432 \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u0442 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u044b\u0435 \u0441\u0443\u043c\u043c\u044b. \u0413\u0430\u0440\u0430\u043d\u0442\u0438\u0440\u0443\u0435\u0442 \u0446\u0435\u043b\u043e\u0441\u0442\u043d\u043e\u0441\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u0432\u044b\u0441\u043e\u043a\u0443\u044e \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u044c \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430.<\/li>\n<\/ul>\n<p><\/p>\n<p>\u0412 \u044d\u0442\u043e\u043c \u043f\u043e\u0441\u0442\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043c Leofs c \u043f\u043e\u043c\u043e\u0449\u044c\u044e ansible-playbook, \u043f\u0440\u043e\u0442\u0435\u0441\u0442\u0438\u0440\u0443\u0435\u043c S3, NFS.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>\u0415\u0441\u043b\u0438 \u0432\u044b \u043f\u043e\u043f\u044b\u0442\u0430\u0435\u0442\u0435\u0441\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c LeoFS \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0435 playbook-\u0438, \u0442\u043e \u0432\u0430\u0441 \u0436\u0434\u0443\u0442 \u0440\u0430\u0437\u043d\u044b\u0435 \u043e\u0448\u0438\u0431\u043a\u0438: <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/leo-project\/leofs_ansible\/issues\/5\">1<\/a><\/noindex>,<noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/leo-project\/leofs_ansible\/issues\/4\">2<\/a><\/noindex>. \u0412 \u044d\u0442\u043e\u043c \u043f\u043e\u0441\u0442\u0435 \u043d\u0430\u043f\u0438\u0448\u0443 \u0447\u0442\u043e \u043d\u0443\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0447\u0442\u043e\u0431\u044b \u044d\u0442\u0438 \u043e\u0448\u0438\u0431\u043a\u0438 \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c.<\/p>\n<p><\/p>\n<p>\u0422\u0430\u043c \u0433\u0434\u0435 \u0432\u044b \u0431\u0443\u0434\u0435\u0442\u0435 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c ansible-playbook, \u043d\u0443\u0436\u043d\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c netcat.<\/p>\n<p><\/p>\n<h4 id=\"primer-inventory\">\u041f\u0440\u0438\u043c\u0435\u0440 inventory<\/h4>\n<p>\n<b class=\"spoiler_title\">\u041f\u0440\u0438\u043c\u0435\u0440 inventory (\u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 hosts.sample):<\/b><\/p>\n<pre><code class=\"plaintext\"># Please check roles\/common\/vars\/leofs_releases for available versions\n[all:vars]\nleofs_version=1.4.3\nbuild_temp_path=\"\/tmp\/leofs_builder\"\nbuild_install_path=\"\/tmp\/\"\nbuild_branch=\"master\"\nsource=\"package\"\n\n#[builder]\n#172.26.9.177\n\n# nodename of leo_manager_0 and leo_manager_1 are set at group_vars\/all\n[leo_manager_0]\n172.26.9.176\n\n# nodename of leo_manager_0 and leo_manager_1 are set at group_vars\/all\n[leo_manager_1]\n172.26.9.178\n\n[leo_storage]\n172.26.9.179 leofs_module_nodename=S0@172.26.9.179\n172.26.9.181 leofs_module_nodename=S0@172.26.9.181\n172.26.9.182 leofs_module_nodename=S0@172.26.9.182\n172.26.9.183 leofs_module_nodename=S0@172.26.9.183\n\n[leo_gateway]\n172.26.9.180 leofs_module_nodename=G0@172.26.9.180\n172.26.9.184 leofs_module_nodename=G0@172.26.9.184\n\n[leofs_nodes:children]\nleo_manager_0\nleo_manager_1\nleo_gateway\nleo_storage<\/code><\/pre>\n<p><\/p>\n<h4 id=\"podgotovka-serverov\">\u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432<\/h4>\n<p><\/p>\n<p>\u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 Selinux. \u041d\u0430\u0434\u0435\u044e\u0441\u044c \u0447\u0442\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u043e \u0441\u043e\u0437\u0434\u0430\u0441\u0442 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438 Selinux \u0434\u043b\u044f LeoFS.<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">    - name: Install libselinux as prerequisite for SELinux Ansible module\n      yum:\n        name: \"{{item}}\"\n        state: latest\n      with_items:\n        - libselinux-python\n        - libsemanage-python\n\n    - name: Disable SELinux at next reboot\n      selinux:\n        state: disabled\n\n    - name: Set SELinux in permissive mode until the machine is rebooted\n      command: setenforce 0\n      ignore_errors: true\n      changed_when: false\n<\/code><\/pre>\n<p><\/p>\n<p>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 <code>netcat<\/code> \u0438 <code>redhat-lsb-core<\/code>. <code>netcat<\/code> \u043d\u0443\u0436\u0435\u043d \u0434\u043b\u044f <code>leofs-adm<\/code>, <code>redhat-lsb-core<\/code> \u043d\u0443\u0436\u0435\u043d \u0434\u043b\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0432\u0435\u0440\u0441\u0438\u0438 \u041e\u0421 <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/leo-project\/leofs_ansible\/blob\/master\/roles\/common\/tasks\/install_package.yml#L5\">\u0437\u0434\u0435\u0441\u044c<\/a><\/noindex>.<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">    - name: Install Packages\n      yum: name={{ item }} state=present\n      with_items:\n        - nmap-ncat\n        - redhat-lsb-core<\/code><\/pre>\n<p><\/p>\n<p>\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u044e\u0437\u0435\u0440\u0430 leofs \u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0435\u0433\u043e \u0432 \u0433\u0440\u0443\u043f\u043f\u0443 wheel<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">    - name: Create user leofs\n      group:\n        name: leofs\n        state: present\n\n    - name: Allow 'wheel' group to have passwordless sudo\n      lineinfile:\n        dest: \/etc\/sudoers\n        state: present\n        regexp: '^%wheel'\n        line: '%wheel ALL=(ALL) NOPASSWD: ALL'\n        validate: 'visudo -cf %s'\n\n    - name: Add the user 'leofs' to group 'wheel'\n      user:\n        name: leofs\n        groups: wheel\n        append: yes<\/code><\/pre>\n<p><\/p>\n<p>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 Erlang<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">    - name: Remote erlang-20.3.8.23-1.el7.x86_64.rpm install with yum\n      yum: name=https:\/\/github.com\/rabbitmq\/erlang-rpm\/releases\/download\/v20.3.8.23\/erlang-20.3.8.23-1.el7.x86_64.rpm\n<\/code><\/pre>\n<p><\/p>\n<p>\u041f\u043e\u043b\u043d\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u043f\u043e\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u044b\u0445 ansible playbook \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0439\u0442\u0438 \u0437\u0434\u0435\u0441\u044c: <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/patsevanton\/leofs_ansible\">https:\/\/github.com\/patsevanton\/leofs_ansible<\/a><\/noindex><\/p>\n<p><\/p>\n<h4 id=\"ustanovka-konfigurirovanie-zapusk\">\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430, \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435, \u0437\u0430\u043f\u0443\u0441\u043a<\/h4>\n<p><\/p>\n<p>\u0414\u0430\u043b\u0435\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c \u043a\u0430\u043a \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u0432 <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/leo-project\/leofs_ansible\">https:\/\/github.com\/leo-project\/leofs_ansible<\/a><\/noindex> \u0431\u0435\u0437 build_leofs.yml<\/p>\n<p><\/p>\n<pre><code class=\"bash\">## Install LeoFS\n$ ansible-playbook -i hosts install_leofs.yml\n\n## Config LeoFS\n$ ansible-playbook -i hosts config_leofs.yml\n\n## Start LeoFS\n$ ansible-playbook -i hosts start_leofs.yml<\/code><\/pre>\n<p><\/p>\n<h4 id=\"proveryaem-status-klastera-na-primary-leomanager\">\u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c \u0441\u0442\u0430\u0442\u0443\u0441 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 \u043d\u0430 Primary LeoManager<\/h4>\n<p><\/p>\n<pre><code class=\"bash\">leofs-adm status<\/code><\/pre>\n<p><\/p>\n<p>Primary \u0438 Secondary \u043c\u043e\u0436\u043d\u043e \u0443\u0432\u0438\u0434\u0435\u0442\u044c \u0432 \u043b\u043e\u0433\u0430\u0445 ansible-playbook<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u043e\u0433\u043e \u043e\u0442\u043a\u0430\u0437\u043e\u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 LeoFS, \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0433\u043e \u0441 \u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043c\u0438, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0438\u043c\u0438 S3, NFS\" src=\"\/wp-content\/uploads\/2019\/12\/49e45af113fcf1b3893b3b335a1c715b.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u043e\u0433\u043e \u043e\u0442\u043a\u0430\u0437\u043e\u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 LeoFS, \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0433\u043e \u0441 \u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043c\u0438, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0438\u043c\u0438 S3, NFS\" src=\"\/wp-content\/uploads\/2019\/12\/1e2eabe18ff2ec1ba618bbcb2c0bd344.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\n<b class=\"spoiler_title\">\u0412\u044b\u0432\u043e\u0434 \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0442\u0430\u043a\u043e\u0439<\/b><\/p>\n<pre><code class=\"bash\"> [System Confiuration]\n-----------------------------------+----------\n Item                              | Value    \n-----------------------------------+----------\n Basic\/Consistency level\n-----------------------------------+----------\n                    system version | 1.4.3\n                        cluster Id | leofs_1\n                             DC Id | dc_1\n                    Total replicas | 2\n          number of successes of R | 1\n          number of successes of W | 1\n          number of successes of D | 1\n number of rack-awareness replicas | 0\n                         ring size | 2^128\n-----------------------------------+----------\n Multi DC replication settings\n-----------------------------------+----------\n [mdcr] max number of joinable DCs | 2\n [mdcr] total replicas per a DC    | 1\n [mdcr] number of successes of R   | 1\n [mdcr] number of successes of W   | 1\n [mdcr] number of successes of D   | 1\n-----------------------------------+----------\n Manager RING hash\n-----------------------------------+----------\n                 current ring-hash | a0314afb\n                previous ring-hash | a0314afb\n-----------------------------------+----------\n\n [State of Node(s)]\n-------+----------------------+--------------+---------+----------------+----------------+----------------------------\n type  |         node         |    state     | rack id |  current ring  |   prev ring    |          updated at         \n-------+----------------------+--------------+---------+----------------+----------------+----------------------------\n  S    | S0@172.26.9.179      | running      |         | a0314afb       | a0314afb       | 2019-12-05 10:33:47 +0000\n  S    | S0@172.26.9.181      | running      |         | a0314afb       | a0314afb       | 2019-12-05 10:33:47 +0000\n  S    | S0@172.26.9.182      | running      |         | a0314afb       | a0314afb       | 2019-12-05 10:33:47 +0000\n  S    | S0@172.26.9.183      | attached     |         |                |                | 2019-12-05 10:33:58 +0000\n  G    | G0@172.26.9.180      | running      |         | a0314afb       | a0314afb       | 2019-12-05 10:33:49 +0000\n  G    | G0@172.26.9.184      | running      |         | a0314afb       | a0314afb       | 2019-12-05 10:33:49 +0000\n-------+----------------------+--------------+---------+----------------+----------------+----------------------------<\/code><\/pre>\n<p><\/p>\n<h4 id=\"sozdaem-yuzera\">\u0421\u043e\u0437\u0434\u0430\u0435\u043c \u044e\u0437\u0435\u0440\u0430<\/h4>\n<p><\/p>\n<p>\u0421\u043e\u0437\u0434\u0430\u0435\u043c \u044e\u0437\u0435\u0440\u0430 leofs:<\/p>\n<p><\/p>\n<pre><code class=\"bash\">leofs-adm create-user leofs leofs\n\n  access-key-id: 9c2615f32e81e6a1caf5\n  secret-access-key: 8aaaa35c1ad78a2cbfa1a6cd49ba8aaeb3ba39eb<\/code><\/pre>\n<p><\/p>\n<p>\u0421\u043f\u0438\u0441\u043e\u043a \u044e\u0437\u0435\u0440\u043e\u0432:<\/p>\n<p><\/p>\n<pre><code class=\"bash\">leofs-adm get-users\nuser_id     | role_id | access_key_id          | created_at                \n------------+---------+------------------------+---------------------------\n_test_leofs | 9       | 05236                  | 2019-12-02 06:56:49 +0000\nleofs       | 1       | 9c2615f32e81e6a1caf5   | 2019-12-02 10:43:29 +0000<\/code><\/pre>\n<p><\/p>\n<h4 id=\"sozdaem-bucket\">\u0421\u043e\u0437\u0434\u0430\u0435\u043c Bucket<\/h4>\n<p><\/p>\n<p>\u0421\u0434\u0435\u043b\u0430\u043b bucket<\/p>\n<p><\/p>\n<pre><code class=\"bash\">leofs-adm add-bucket leofs 9c2615f32e81e6a1caf5\nOK<\/code><\/pre>\n<p><\/p>\n<p>\u0421\u043f\u0438\u0441\u043e\u043a bucket:<\/p>\n<p><\/p>\n<pre><code class=\"bash\"> leofs-adm get-buckets\ncluster id   | bucket   | owner  | permissions      | created at                \n-------------+----------+--------+------------------+---------------------------\nleofs_1      | leofs    | leofs  | Me(full_control) | 2019-12-02 10:44:02 +0000<\/code><\/pre>\n<p><\/p>\n<h4 id=\"konfigurirovanie-s3cmd\">\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 s3cmd<\/h4>\n<p><\/p>\n<p>\u0412 \u043f\u043e\u043b\u0435 <code>HTTP Proxy server name<\/code> \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u043c IP \u0441\u0435\u0440\u0432\u0435\u0440\u0430 Gateway<\/p>\n<p><\/p>\n<pre><code class=\"bash\">s3cmd --configure \n\nEnter new values or accept defaults in brackets with Enter.\nRefer to user manual for detailed description of all options.\n\nAccess key and Secret key are your identifiers for Amazon S3. Leave them empty for using the env variables.\nAccess Key [9c2615f32e81e6a1caf5]: \nSecret Key [8aaaa35c1ad78a2cbfa1a6cd49ba8aaeb3ba39eb]: \nDefault Region [US]: \n\nUse \"s3.amazonaws.com\" for S3 Endpoint and not modify it to the target Amazon S3.\nS3 Endpoint [s3.amazonaws.com]: \n\nUse \"%(bucket)s.s3.amazonaws.com\" to the target Amazon S3. \"%(bucket)s\" and \"%(location)s\" vars can be used\nif the target S3 system supports dns based buckets.\nDNS-style bucket+hostname:port template for accessing a bucket [%(bucket)s.s3.amazonaws.com]: leofs\n\nEncryption password is used to protect your files from reading\nby unauthorized persons while in transfer to S3\nEncryption password: \nPath to GPG program [\/usr\/bin\/gpg]: \n\nWhen using secure HTTPS protocol all communication with Amazon S3\nservers is protected from 3rd party eavesdropping. This method is\nslower than plain HTTP, and can only be proxied with Python 2.7 or newer\nUse HTTPS protocol [No]: \n\nOn some networks all internet access must go through a HTTP proxy.\nTry setting it here if you can't connect to S3 directly\nHTTP Proxy server name [172.26.9.180]: \nHTTP Proxy server port [8080]: \n\nNew settings:\n  Access Key: 9c2615f32e81e6a1caf5\n  Secret Key: 8aaaa35c1ad78a2cbfa1a6cd49ba8aaeb3ba39eb\n  Default Region: US\n  S3 Endpoint: s3.amazonaws.com\n  DNS-style bucket+hostname:port template for accessing a bucket: leofs\n  Encryption password: \n  Path to GPG program: \/usr\/bin\/gpg\n  Use HTTPS protocol: False\n  HTTP Proxy server name: 172.26.9.180\n  HTTP Proxy server port: 8080\n\nTest access with supplied credentials? [Y\/n] Y\nPlease wait, attempting to list all buckets...\nSuccess. Your access key and secret key worked fine :-)\n\nNow verifying that encryption works...\nNot configured. Never mind.\n\nSave settings? [y\/N] y\nConfiguration saved to '\/home\/user\/.s3cfg'<\/code><\/pre>\n<p><\/p>\n<p>\u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u043f\u043e\u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043e\u0448\u0438\u0431\u043a\u0430 ERROR: S3 error: 403 (AccessDenied): Access Denied:<\/p>\n<p><\/p>\n<pre><code class=\"bash\">s3cmd put test.py s3:\/\/leofs\/\nupload: 'test.py' -&gt; 's3:\/\/leofs\/test.py'  [1 of 1]\n 382 of 382   100% in    0s     3.40 kB\/s  done\nERROR: S3 error: 403 (AccessDenied): Access Denied<\/code><\/pre>\n<p><\/p>\n<p>\u0422\u043e \u043d\u0443\u0436\u043d\u043e \u0432 \u043a\u043e\u043d\u0444\u0438\u0433\u0435 s3cmd \u043f\u043e\u043f\u0440\u0430\u0432\u0438\u0442\u044c signature_v2 \u043d\u0430 True. \u041f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0438 \u0432 \u044d\u0442\u043e\u043c <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/leo-project\/leofs\/issues\/487\">issue<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p>\u0415\u0441\u043b\u0438 signature_v2 \u0431\u0443\u0434\u0435\u0442 False, \u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0432\u043e\u0442 \u0442\u0430\u043a\u0430\u044f \u043e\u0448\u0438\u0431\u043a\u0430:<\/p>\n<p><\/p>\n<pre><code class=\"bash\">WARNING: Retrying failed request: \/?delimiter=%2F (getaddrinfo() argument 2 must be integer or string)\nWARNING: Waiting 3 sec...\nWARNING: Retrying failed request: \/?delimiter=%2F (getaddrinfo() argument 2 must be integer or string)\nWARNING: Waiting 6 sec...\nERROR: Test failed: Request failed for: \/?delimiter=%2F<\/code><\/pre>\n<p><\/p>\n<h4 id=\"testirovanie-zagruzki\">\u0422\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438<\/h4>\n<p><\/p>\n<p>\u0421\u043e\u0437\u0434\u0430\u0435\u043c \u0444\u0430\u0439\u043b 1\u0413\u0411<\/p>\n<p><\/p>\n<pre><code class=\"bash\">fallocate -l 1GB 1gb<\/code><\/pre>\n<p><\/p>\n<p>\u0417\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043c \u0435\u0433\u043e \u0432 Leofs<\/p>\n<p><\/p>\n<pre><code class=\"bash\">time s3cmd put 1gb s3:\/\/leofs\/\nreal    0m19.099s\nuser    0m7.855s\nsys 0m1.620s<\/code><\/pre>\n<p><\/p>\n<h4 id=\"statistika\">\u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430<\/h4>\n<p><\/p>\n<p>leofs-adm du \u0434\u043b\u044f 1 \u043d\u043e\u0434\u044b:<\/p>\n<p><\/p>\n<pre><code class=\"bash\">leofs-adm du S0@172.26.9.179\n active number of objects: 156\n  total number of objects: 156\n   active size of objects: 602954495\n    total size of objects: 602954495\n     ratio of active size: 100.0%\n    last compaction start: ____-__-__ __:__:__\n      last compaction end: ____-__-__ __:__:__<\/code><\/pre>\n<p><\/p>\n<p>\u0412\u0438\u0434\u0438\u043c \u0447\u0442\u043e \u0432\u044b\u0432\u043e\u0434 \u043d\u0435 \u043e\u0447\u0435\u043d\u044c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0432\u043d\u044b\u0439.<\/p>\n<p><\/p>\n<p>\u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0433\u0434\u0435 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d \u044d\u0442\u043e\u0442 \u0444\u0430\u0439\u043b.<br \/>\nleofs-adm whereis leofs\/1gb<\/p>\n<p><\/p>\n<pre><code class=\"bash\">leofs-adm whereis leofs\/1gb\n-------+----------------------+--------------------------------------+------------+--------------+----------------+----------------+----------------+----------------------------\n del?  |         node         |             ring address             |    size    |   checksum   |  has children  |  total chunks  |     clock      |             when            \n-------+----------------------+--------------------------------------+------------+--------------+----------------+----------------+----------------+----------------------------\n       | S0@172.26.9.181      | 657a9f3a3db822a7f1f5050925b26270     |    976563K |   a4634eea55 | true           |             64 | 598f2aa976a4f  | 2019-12-05 10:48:15 +0000\n       | S0@172.26.9.182      | 657a9f3a3db822a7f1f5050925b26270     |    976563K |   a4634eea55 | true           |             64 | 598f2aa976a4f  | 2019-12-05 10:48:15 +0000<\/code><\/pre>\n<p><\/p>\n<h4 id=\"aktiviruem-nfs\">\u0410\u043a\u0442\u0438\u0432\u0438\u0440\u0443\u0435\u043c NFS<\/h4>\n<p><\/p>\n<p>\u0410\u043a\u0442\u0438\u0432\u0438\u0440\u0443\u0435\u043c NFS \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 Leo Gateway 172.26.9.184. <\/p>\n<p><\/p>\n<p>\u041d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u0438 \u043a\u043b\u0438\u0435\u043d\u0442\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043c nfs-utils<\/p>\n<p><\/p>\n<pre><code class=\"bash\">sudo yum install nfs-utils<\/code><\/pre>\n<p><\/p>\n<p>\u0421\u043e\u0433\u043b\u0430\u0441\u043d\u043e \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u043f\u043e\u043f\u0440\u0430\u0432\u0438\u043c \u0444\u0430\u0439\u043b \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 <code>\/usr\/local\/leofs\/current\/leo_gateway\/etc\/leo_gateway.conf<\/code><\/p>\n<p><\/p>\n<pre><code class=\"bash\">protocol = nfs<\/code><\/pre>\n<p><\/p>\n<p>\u041d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 172.26.9.184 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043c rpcbind \u0438 leofs-gateway<\/p>\n<p><\/p>\n<pre><code class=\"bash\">sudo service rpcbind start\nsudo service leofs-gateway restart<\/code><\/pre>\n<p><\/p>\n<p>\u041d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u0433\u0434\u0435 \u0437\u0430\u043f\u0443\u0449\u0435\u043d leo_manager \u0441\u043e\u0437\u0434\u0430\u0434\u0438\u043c bucket \u0434\u043b\u044f NFS \u0438 \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u043c \u043a\u043b\u044e\u0447 \u0434\u043b\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043a NFS<\/p>\n<p><\/p>\n<pre><code class=\"bash\">leofs-adm add-bucket test 05236\nleofs-adm gen-nfs-mnt-key test 05236 ip-\u0430\u0434\u0440\u0435\u0441-nfs-\u043a\u043b\u0438\u0435\u043d\u0442\u0430<\/code><\/pre>\n<p><\/p>\n<h4 id=\"podklyuchenie-k-nfs\">\u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043a NFS<\/h4>\n<p><\/p>\n<pre><code class=\"bash\">sudo mkdir \/mnt\/leofs\n## for Linux - \"sudo mount -t nfs -o nolock &lt;host&gt;:\/&lt;bucket&gt;\/&lt;token&gt; &lt;dir&gt;\"\nsudo mount -t nfs -o nolock ip-\u0430\u0434\u0440\u0435\u0441-nfs-\u0441\u0435\u0440\u0432\u0435\u0440\u0430-\u0442\u0430\u043c-\u0433\u0434\u0435-\u0443-\u0432\u0430\u0441-\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d-gateway:\/bucket\/access_key_id\/\u043a\u043b\u044e\u0447-\u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0439-\u043e\u0442-gen-nfs-mnt-key \/mnt\/leofs\nsudo mount -t nfs -o nolock 172.26.9.184:\/test\/05236\/bb5034f0c740148a346ed663ca0cf5157efb439f \/mnt\/leofs<\/code><\/pre>\n<p><\/p>\n<h4 id=\"prosmotr-diskovogo-prostanstva-cherez-nfs-klient\">\u041f\u0440\u043e\u0441\u043c\u043e\u0442\u0440 \u0434\u0438\u0441\u043a\u043e\u0432\u043e\u0433\u043e \u043f\u0440\u043e\u0441\u0442\u0430\u043d\u0441\u0442\u0432\u0430 \u0447\u0435\u0440\u0435\u0437 NFS \u043a\u043b\u0438\u0435\u043d\u0442<\/h4>\n<p><\/p>\n<p>\u0414\u0438\u0441\u043a\u043e\u0432\u043e\u0435 \u043f\u0440\u043e\u0441\u0442\u0430\u043d\u0441\u0442\u0432\u043e c \u0443\u0447\u0435\u0442\u043e\u043c \u0447\u0442\u043e \u043a\u0430\u0436\u0434\u0430\u044f \u043d\u043e\u0434\u0430 storage \u0438\u043c\u0435\u0435\u0442 \u0434\u0438\u0441\u043a 40\u0413\u0411 (3 \u043d\u043e\u0434\u044b running, 1 \u043d\u043e\u0434\u0430 attached):<\/p>\n<p><\/p>\n<pre><code class=\"bash\">df -hP\nFilesystem                                                         Size  Used Avail Use% Mounted on\n172.26.9.184:\/test\/05236\/e7298032e78749149dd83a1e366afb328811c95b   60G  3.6G   57G   6% \/mnt\/leofs<\/code><\/pre>\n<p><\/p>\n<h4 id=\"ustanovka-leofs-s-6-storage-nodami\">\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 LeoFS \u0441 6 storage \u043d\u043e\u0434\u0430\u043c\u0438.<\/h4>\n<p>\n<b class=\"spoiler_title\">Inventory (\u0431\u0435\u0437 builder):<\/b><\/p>\n<pre><code class=\"bash\"># Please check roles\/common\/vars\/leofs_releases for available versions\n[all:vars]\nleofs_version=1.4.3\nbuild_temp_path=\"\/tmp\/leofs_builder\"\nbuild_install_path=\"\/tmp\/\"\nbuild_branch=\"master\"\nsource=\"package\"\n\n# nodename of leo_manager_0 and leo_manager_1 are set at group_vars\/all\n[leo_manager_0]\n172.26.9.177\n\n# nodename of leo_manager_0 and leo_manager_1 are set at group_vars\/all\n[leo_manager_1]\n172.26.9.176\n\n[leo_storage]\n172.26.9.178 leofs_module_nodename=S0@172.26.9.178\n172.26.9.179 leofs_module_nodename=S0@172.26.9.179\n172.26.9.181 leofs_module_nodename=S0@172.26.9.181\n172.26.9.182 leofs_module_nodename=S0@172.26.9.182\n172.26.9.183 leofs_module_nodename=S0@172.26.9.183\n172.26.9.185 leofs_module_nodename=S0@172.26.9.185\n\n[leo_gateway]\n172.26.9.180 leofs_module_nodename=G0@172.26.9.180\n172.26.9.184 leofs_module_nodename=G0@172.26.9.184\n\n[leofs_nodes:children]\nleo_manager_0\nleo_manager_1\nleo_gateway\nleo_storage<\/code><\/pre>\n<p><\/p>\n<h4 id=\"vyvod-leofs-adm-status\">\u0412\u044b\u0432\u043e\u0434 leofs-adm status<\/h4>\n<p>\n<b class=\"spoiler_title\">\u0412\u044b\u0432\u043e\u0434 leofs-adm status<\/b><\/p>\n<pre><code class=\"bash\"> [System Confiuration]\n-----------------------------------+----------\n Item                              | Value    \n-----------------------------------+----------\n Basic\/Consistency level\n-----------------------------------+----------\n                    system version | 1.4.3\n                        cluster Id | leofs_1\n                             DC Id | dc_1\n                    Total replicas | 2\n          number of successes of R | 1\n          number of successes of W | 1\n          number of successes of D | 1\n number of rack-awareness replicas | 0\n                         ring size | 2^128\n-----------------------------------+----------\n Multi DC replication settings\n-----------------------------------+----------\n [mdcr] max number of joinable DCs | 2\n [mdcr] total replicas per a DC    | 1\n [mdcr] number of successes of R   | 1\n [mdcr] number of successes of W   | 1\n [mdcr] number of successes of D   | 1\n-----------------------------------+----------\n Manager RING hash\n-----------------------------------+----------\n                 current ring-hash | d8ff465e\n                previous ring-hash | d8ff465e\n-----------------------------------+----------\n\n [State of Node(s)]\n-------+----------------------+--------------+---------+----------------+----------------+----------------------------\n type  |         node         |    state     | rack id |  current ring  |   prev ring    |          updated at         \n-------+----------------------+--------------+---------+----------------+----------------+----------------------------\n  S    | S0@172.26.9.178      | running      |         | d8ff465e       | d8ff465e       | 2019-12-06 05:18:29 +0000\n  S    | S0@172.26.9.179      | running      |         | d8ff465e       | d8ff465e       | 2019-12-06 05:18:29 +0000\n  S    | S0@172.26.9.181      | running      |         | d8ff465e       | d8ff465e       | 2019-12-06 05:18:30 +0000\n  S    | S0@172.26.9.182      | running      |         | d8ff465e       | d8ff465e       | 2019-12-06 05:18:29 +0000\n  S    | S0@172.26.9.183      | running      |         | d8ff465e       | d8ff465e       | 2019-12-06 05:18:29 +0000\n  S    | S0@172.26.9.185      | running      |         | d8ff465e       | d8ff465e       | 2019-12-06 05:18:29 +0000\n  G    | G0@172.26.9.180      | running      |         | d8ff465e       | d8ff465e       | 2019-12-06 05:18:31 +0000\n  G    | G0@172.26.9.184      | running      |         | d8ff465e       | d8ff465e       | 2019-12-06 05:18:31 +0000\n-------+----------------------+--------------+---------+----------------+----------------+----------------------------<\/code><\/pre>\n<p><\/p>\n<p>\u0414\u0438\u0441\u043a\u043e\u0432\u043e\u0435 \u043f\u0440\u043e\u0441\u0442\u0430\u043d\u0441\u0442\u0432\u043e c \u0443\u0447\u0435\u0442\u043e\u043c \u0447\u0442\u043e \u043a\u0430\u0436\u0434\u0430\u044f \u043d\u043e\u0434\u0430 storage \u0438\u043c\u0435\u0435\u0442 \u0434\u0438\u0441\u043a 40\u0413\u0411 (6 \u043d\u043e\u0434 running):<\/p>\n<p><\/p>\n<pre><code class=\"bash\">df -hP\nFilesystem                                                         Size  Used Avail Use% Mounted on\n172.26.9.184:\/test\/05236\/e7298032e78749149dd83a1e366afb328811c95b  120G  3.6G  117G   3% \/mnt\/leofs<\/code><\/pre>\n<p><\/p>\n<h4 id=\"esli-ispolzuetsya-5-nod-storage\">\u0415\u0441\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f 5 \u043d\u043e\u0434 storage<\/h4>\n<p><\/p>\n<pre><code class=\"bash\">[leo_storage]\n172.26.9.178 leofs_module_nodename=S0@172.26.9.178\n172.26.9.179 leofs_module_nodename=S1@172.26.9.179\n172.26.9.181 leofs_module_nodename=S2@172.26.9.181\n172.26.9.182 leofs_module_nodename=S3@172.26.9.182\n172.26.9.183 leofs_module_nodename=S4@172.26.9.183<\/code><\/pre>\n<p><\/p>\n<pre><code class=\"bash\">df -hP\n172.26.9.184:\/test\/05236\/e7298032e78749149dd83a1e366afb328811c95b  100G  3.0G   97G   3% \/mnt\/leofs<\/code><\/pre>\n<p><\/p>\n<h4 id=\"logi\">\u041b\u043e\u0433\u0438<\/h4>\n<p><\/p>\n<p>\u041b\u043e\u0433\u0438 \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0432 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f\u0445 <code>\/usr\/local\/leofs\/current\/*\/log<\/code><\/p>\n<p><\/p>\n<p>\u0422\u0435\u043b\u0435\u0433\u0440\u0430\u043c \u043a\u0430\u043d\u0430\u043b: <noindex><a rel=\"nofollow\" href=\"https:\/\/t.me\/sds_ru\">SDS \u0438 \u041a\u043b\u0430\u0441\u0442\u0435\u0440\u043d\u044b\u0435 FS<\/a><\/noindex><\/p>\n<p>\u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/478990\/\">habr.com<\/a><\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0421\u043e\u0433\u043b\u0430\u0441\u043d\u043e Opennet: LeoFS \u2014 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u043e\u0435 \u043e\u0442\u043a\u0430\u0437\u043e\u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 LeoFS, \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0435 \u0441 \u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043c\u0438, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0438\u043c\u0438 API Amazon S3 \u0438 REST-API, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0440\u0435\u0436\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u044b \u0432 \u0440\u043e\u043b\u0438 NFS-\u0441\u0435\u0440\u0432\u0435\u0440\u0430. \u0418\u043c\u0435\u044e\u0442\u0441\u044f \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u043a\u0430\u043a \u043c\u0435\u043b\u043a\u0438\u0445, \u0442\u0430\u043a \u0438 \u043e\u0447\u0435\u043d\u044c \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432, \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0439 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u043a\u044d\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u0430 \u0440\u0435\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u044f \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449 \u043c\u0435\u0436\u0434\u0443 \u0434\u0430\u0442\u0430-\u0446\u0435\u043d\u0442\u0440\u0430\u043c\u0438. \u0421\u0440\u0435\u0434\u0438 \u0446\u0435\u043b\u0435\u0439 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u043e\u0442\u043c\u0435\u0447\u0430\u0435\u0442\u0441\u044f \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u0435 \u043d\u0430\u0434\u0451\u0436\u043d\u043e\u0441\u0442\u0438 99.9999999% \u0437\u0430 \u0441\u0447\u0451\u0442 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-53717","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0421\u043e\u0433\u043b\u0430\u0441\u043d\u043e Opennet: LeoFS \u2014 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u043e\u0435 \u043e\u0442\u043a\u0430\u0437\u043e\u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 LeoFS, \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0435 \u0441 \u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043c\u0438, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0438\u043c\u0438 API Amazon S3 \u0438 REST-API, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0440\u0435\u0436\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u044b \u0432 \u0440\u043e\u043b\u0438 NFS-\u0441\u0435\u0440\u0432\u0435\u0440\u0430. \u0418\u043c\u0435\u044e\u0442\u0441\u044f \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u043a\u0430\u043a \u043c\u0435\u043b\u043a\u0438\u0445, \u0442\u0430\u043a \u0438 \u043e\u0447\u0435\u043d\u044c \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432, \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0439 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u043a\u044d\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u0430 \u0440\u0435\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u044f \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449 \u043c\u0435\u0436\u0434\u0443 \u0434\u0430\u0442\u0430-\u0446\u0435\u043d\u0442\u0440\u0430\u043c\u0438. \u0421\u0440\u0435\u0434\u0438 \u0446\u0435\u043b\u0435\u0439 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u043e\u0442\u043c\u0435\u0447\u0430\u0435\u0442\u0441\u044f \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u0435 \u043d\u0430\u0434\u0451\u0436\u043d\u043e\u0441\u0442\u0438 99.9999999% \u0437\u0430 \u0441\u0447\u0451\u0442\" \/>\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\/it\/blog\/administrirovanie\/ustanovka-raspredelyonnogo-otkazoustojchivogo-hranilishha-obektov-leofs-sovmestimogo-s-klientami-ispolzuyushhimi-s3-nfs\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"it_IT\" \/>\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\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u043e\u0433\u043e \u043e\u0442\u043a\u0430\u0437\u043e\u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 LeoFS, \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0433\u043e \u0441 \u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043c\u0438, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0438\u043c\u0438 S3, NFS | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0421\u043e\u0433\u043b\u0430\u0441\u043d\u043e Opennet: LeoFS \u2014 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u043e\u0435 \u043e\u0442\u043a\u0430\u0437\u043e\u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 LeoFS, \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0435 \u0441 \u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043c\u0438, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0438\u043c\u0438 API Amazon S3 \u0438 REST-API, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0440\u0435\u0436\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u044b \u0432 \u0440\u043e\u043b\u0438 NFS-\u0441\u0435\u0440\u0432\u0435\u0440\u0430. \u0418\u043c\u0435\u044e\u0442\u0441\u044f \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u043a\u0430\u043a \u043c\u0435\u043b\u043a\u0438\u0445, \u0442\u0430\u043a \u0438 \u043e\u0447\u0435\u043d\u044c \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432, \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0439 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u043a\u044d\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u0430 \u0440\u0435\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u044f \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449 \u043c\u0435\u0436\u0434\u0443 \u0434\u0430\u0442\u0430-\u0446\u0435\u043d\u0442\u0440\u0430\u043c\u0438. \u0421\u0440\u0435\u0434\u0438 \u0446\u0435\u043b\u0435\u0439 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u043e\u0442\u043c\u0435\u0447\u0430\u0435\u0442\u0441\u044f \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u0435 \u043d\u0430\u0434\u0451\u0436\u043d\u043e\u0441\u0442\u0438 99.9999999% \u0437\u0430 \u0441\u0447\u0451\u0442\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/ustanovka-raspredelyonnogo-otkazoustojchivogo-hranilishha-obektov-leofs-sovmestimogo-s-klientami-ispolzuyushhimi-s3-nfs\" \/>\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-12-07T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:01:38+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\udd47Installazione di uno storage oggetti distribuito e tollerante ai guasti LeoFS, compatibile con i client che utilizzano S3, NFS | ProHoster","description":"Secondo Opennet: LeoFS \u00e8 uno storage oggetti distribuito e tollerante ai guasti, compatibile con i client che utilizzano l'API Amazon S3 e REST-API, e supporta anche il funzionamento come server NFS. Sono presenti ottimizzazioni per memorizzare sia piccoli che molto grandi oggetti, con un meccanismo di caching integrato, \u00e8 possibile la replica degli storage tra i data center. Tra gli obiettivi del progetto si evidenzia il raggiungimento di un'affidabilit\u00e0 del 99,9999999% grazie a","canonical_url":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/ustanovka-raspredelyonnogo-otkazoustojchivogo-hranilishha-obektov-leofs-sovmestimogo-s-klientami-ispolzuyushhimi-s3-nfs","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"it_IT","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\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u043e\u0433\u043e \u043e\u0442\u043a\u0430\u0437\u043e\u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 LeoFS, \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0433\u043e \u0441 \u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043c\u0438, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0438\u043c\u0438 S3, NFS | ProHoster","og:description":"\u0421\u043e\u0433\u043b\u0430\u0441\u043d\u043e Opennet: LeoFS \u2014 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u043e\u0435 \u043e\u0442\u043a\u0430\u0437\u043e\u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 LeoFS, \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0435 \u0441 \u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043c\u0438, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0438\u043c\u0438 API Amazon S3 \u0438 REST-API, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0440\u0435\u0436\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u044b \u0432 \u0440\u043e\u043b\u0438 NFS-\u0441\u0435\u0440\u0432\u0435\u0440\u0430. \u0418\u043c\u0435\u044e\u0442\u0441\u044f \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u043a\u0430\u043a \u043c\u0435\u043b\u043a\u0438\u0445, \u0442\u0430\u043a \u0438 \u043e\u0447\u0435\u043d\u044c \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432, \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0439 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u043a\u044d\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u0430 \u0440\u0435\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u044f \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449 \u043c\u0435\u0436\u0434\u0443 \u0434\u0430\u0442\u0430-\u0446\u0435\u043d\u0442\u0440\u0430\u043c\u0438. \u0421\u0440\u0435\u0434\u0438 \u0446\u0435\u043b\u0435\u0439 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u043e\u0442\u043c\u0435\u0447\u0430\u0435\u0442\u0441\u044f \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u0435 \u043d\u0430\u0434\u0451\u0436\u043d\u043e\u0441\u0442\u0438 99.9999999% \u0437\u0430 \u0441\u0447\u0451\u0442","og:url":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/ustanovka-raspredelyonnogo-otkazoustojchivogo-hranilishha-obektov-leofs-sovmestimogo-s-klientami-ispolzuyushhimi-s3-nfs","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-12-07T21:00:00+00:00","article:modified_time":"2020-02-18T11:01:38+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"53717","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-01-24 08:28:20","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 20:19:21","updated":"2026-01-24 08:28:20"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/53717","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/comments?post=53717"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/53717\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media?parent=53717"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/categories?post=53717"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/tags?post=53717"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}