{"id":34595,"date":"2019-10-31T21:59:15","date_gmt":"2019-10-31T18:59:15","guid":{"rendered":"https:\/\/prohoster.info\/blog\/uskoryaem-ansible-s-pomoshhyu-mitogen\/"},"modified":"2019-10-31T21:59:15","modified_gmt":"2019-10-31T18:59:15","slug":"uskoryaem-ansible-s-pomoshhyu-mitogen","status":"publish","type":"post","link":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/uskoryaem-ansible-s-pomoshhyu-mitogen","title":{"rendered":"Wir beschleunigen Ansible mit Mitogen","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><noindex><a rel=\"nofollow\" href=\"https:\/\/www.ansible.com\/\">Ansible<\/a><\/noindex> \u0441\u0442\u0430\u043b \u043e\u0434\u043d\u0438\u043c \u0438\u0437 \u0441\u0430\u043c\u044b\u0445 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0445 <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Configuration_management#Operating_System_configuration_management\">Configuration Management \u0441\u0438\u0441\u0442\u0435\u043c<\/a><\/noindex>. \u041f\u043e\u0441\u043b\u0435 \u0442\u043e\u0433\u043e \u043a\u0430\u043a <noindex><a rel=\"nofollow\" href=\"https:\/\/www.redhat.com\/en\/blog\/why-red-hat-acquired-ansible\">\u0431\u044b\u043b \u043a\u0443\u043f\u043b\u0435\u043d Red Hat<\/a><\/noindex> \u0432 2015 \u0433\u043e\u0434\u0443 \u0447\u0438\u0441\u043b\u043e <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/ansible\/ansible\/graphs\/contributors\">\u0443\u0447\u0430\u0441\u0442\u043d\u0438\u043a\u043e\u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0430<\/a><\/noindex> \u043f\u0440\u0435\u0432\u044b\u0441\u0438\u043b\u043e \u0442\u044b\u0441\u044f\u0447\u0438 \u0438 Ansible \u0441\u0442\u0430\u043b \u043d\u0430\u0432\u0435\u0440\u043d\u043e\u0435 \u0441\u0430\u043c\u044b\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439 \u0440\u0430\u0437\u0432\u0435\u0440\u0442\u044b\u0432\u0430\u043d\u0438\u044f \u0438 \u043e\u0440\u043a\u0435\u0441\u0442\u0440\u0430\u0446\u0438\u0438. \u0415\u0433\u043e \u0448\u0438\u0440\u043e\u043a\u0438\u0435 \u043e\u0431\u043b\u0430\u0441\u0442\u0438 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043e\u0447\u0435\u043d\u044c \u0432\u043f\u0435\u0447\u0430\u0442\u043b\u044f\u044e\u0442.<\/p>\n<p><\/p>\n<p>Ansible \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0447\u0435\u0440\u0435\u0437 SSH \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u043a \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u043c \u0445\u043e\u0441\u0442\u0430\u043c. \u041e\u043d \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442 SSH \u0441\u0435\u0441\u0441\u0438\u044e, \u0434\u0435\u043b\u0430\u0435\u0442 \u043b\u043e\u0433\u0438\u043d, \u043a\u043e\u043f\u0438\u0440\u0443\u0435\u0442 \u043a\u043e\u0434 \u043d\u0430 Python \u043f\u043e \u0441\u0435\u0442\u0438 \u0438 \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442 \u0435\u0433\u043e \u0432 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b. \u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u043e\u043d \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442 \u044d\u0442\u043e\u0442 \u0444\u0430\u0439\u043b \u043d\u0430 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u0435. \u0412\u0441\u044f \u044d\u0442\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439 \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0434\u043e\u043b\u0433\u0430\u044f \u0438 \u043d\u0443\u0434\u043d\u0430\u044f, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0442 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u0441\u043f\u043e\u0441\u043e\u0431\u044b \u0435\u0435 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>\u041e\u0434\u043d\u0438\u043c \u0438\u0437 \u044d\u0442\u0438\u0445 \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u0432 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.ansible.com\/ansible\/2.3\/intro_configuration.html#pipelining\">SSH pipelines<\/a><\/noindex> \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u0434\u043d\u0443 SSH \u0441\u0435\u0441\u0441\u0438\u044e \u0434\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439, \u0430 \u043d\u0435 \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0442\u044c \u043a\u0430\u0436\u0434\u044b\u0439 \u0440\u0430\u0437 \u043d\u043e\u0432\u0443\u044e \u0441\u0435\u0441\u0441\u0438\u044e, \u0447\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u044d\u043a\u043e\u043d\u043e\u043c\u0438\u0442\u044c \u043d\u0430\u043c \u043c\u043d\u043e\u0433\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438. (\u0422\u043e\u043b\u044c\u043a\u043e \u043d\u0435 \u0437\u0430\u0431\u044b\u0432\u0430\u0439\u0442\u0435 \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c <code>requiretty<\/code> \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0443 \u0434\u043b\u044f sudo \u0432 \u0432\u0430\u0448\u0435\u043c <code>\/etc\/sudoers<\/code> \u0444\u0430\u0439\u043b\u0435 \u043d\u0430 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u0435)<\/p>\n<p><\/p>\n<p>\u041d\u043e\u0432\u044b\u043c \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u043c &#171;\u0440\u0430\u0437\u043e\u0433\u043d\u0430\u0442\u044c&#187; Ansible \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 python \u043f\u043e \u0438\u043c\u0435\u043d\u0438 <noindex><a rel=\"nofollow\" href=\"https:\/\/mitogen.networkgenomics.com\/\">Mitogen<\/a><\/noindex>. \u0435\u0441\u043b\u0438 \u043a\u0442\u043e-\u0442\u043e \u043e \u043d\u0435\u0439 \u043d\u0435 \u0441\u043b\u044b\u0448\u0430\u043b \u2014 \u0442\u043e \u0432\u043a\u0440\u0430\u0442\u0446\u0435 \u043e\u043f\u0438\u0448\u0443 \u0435\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u044c. \u041e\u043d\u0430 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0431\u044b\u0441\u0442\u0440\u043e\u0435 \u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043a\u043e\u0434\u0430 python \u043d\u0430 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u0435 \u0438 Ansible \u044d\u0442\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u0434\u0438\u043d \u0438\u0437 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f. Mitogen \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 UNIX pipe \u043d\u0430 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u0435 \u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442 \u043a\u043e\u0434 python \u0441\u0436\u0430\u0442\u044b\u0439 zlib \u0438 \u0441\u0435\u0440\u0438\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e pickle. \u042d\u0442\u043e \u043f\u043e\u043c\u043e\u0433\u0430\u0435\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0435\u0433\u043e \u0431\u044b\u0441\u0442\u0440\u0435\u0435 \u0438 \u044d\u043a\u043e\u043d\u043e\u043c\u0438\u0442 \u0442\u0440\u0430\u0444\u0438\u043a. \u0415\u0441\u043b\u0438 \u0432\u044b \u0437\u0430\u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043e\u0432\u0430\u043d\u044b \u0432 \u0431\u043e\u043b\u0435\u0435 \u0434\u0435\u0442\u0430\u043b\u044c\u043d\u043e\u043c \u043e\u0431\u044a\u044f\u0441\u043d\u0435\u043d\u0438\u0438, \u043b\u0443\u0447\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u043e\u0431 \u044d\u0442\u043e\u043c \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 <noindex><a rel=\"nofollow\" href=\"https:\/\/mitogen.networkgenomics.com\/howitworks.html\">&#171;How it works&#187;<\/a><\/noindex>. \u041d\u043e \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u043c\u044b \u0441\u0444\u043e\u043a\u0443\u0441\u0438\u0440\u0443\u0435\u043c\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0441 Ansible.<\/p>\n<p><\/p>\n<p>Mitogen \u0432 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445 \u043e\u0431\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0430\u0445 \u043c\u043e\u0436\u0435\u0442 \u0443\u0441\u043a\u043e\u0440\u0438\u0442\u044c \u0432\u0430\u0448 Ansible \u043a\u043e\u0434 \u0432 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0440\u0430\u0437 \u0438 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0443\u043c\u0435\u043d\u044c\u0448\u0438\u0442\u044c \u0440\u0430\u0441\u0445\u043e\u0434 \u0442\u0440\u0430\u0444\u0438\u043a\u0430. \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u043c \u0441\u0430\u043c\u044b\u0435 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043d\u0430\u043c \u044d\u0442\u043e \u043f\u043e\u043c\u043e\u0433\u0430\u0435\u0442.<\/p>\n<p><\/p>\n<p>\u042f \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e Ansible \u0434\u043b\u044f: \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u043e\u0432 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u043d\u0430 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u0435, \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043f\u0430\u043a\u0435\u0442\u043e\u0432, \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0444\u0430\u0439\u043b\u043e\u0432 \u043d\u0430 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u0443\u044e \u043c\u0430\u0448\u0438\u043d\u0443 \u0438 \u043e\u0431\u0440\u0430\u0442\u043d\u043e. \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0443 \u0432\u0430\u0441 \u0435\u0441\u0442\u044c \u0434\u0440\u0443\u0433\u0438\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u2014 \u043d\u0430\u043f\u0438\u0448\u0438\u0442\u0435 \u0432 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f\u0445.<\/p>\n<p><\/p>\n<p>\u041f\u043e\u0435\u0445\u0430\u043b\u0438!<\/p>\n<p><\/p>\n<p>\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f Mitogen \u0434\u043b\u044f Ansible \u043e\u0447\u0435\u043d\u044c \u043f\u0440\u043e\u0441\u0442\u0430:<br \/>\n\u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c Mitogen \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443:<\/p>\n<p><\/p>\n<pre><code class=\"bash\">pip install mitogen<\/code><\/pre>\n<p><\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0435\u0441\u0442\u044c \u0434\u0432\u0430 \u0440\u0430\u0432\u043d\u043e\u0437\u043d\u0430\u0447\u043d\u044b\u0445 \u0441\u043f\u043e\u0441\u043e\u0431\u0430 \u2014 \u0438\u043b\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043e\u043f\u0446\u0438\u0438 \u0432 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u043c \u0444\u0430\u0439\u043b\u0435 ansible.cfg, \u0438\u043b\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043d\u0443\u0436\u043d\u044b\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f.<\/p>\n<p><\/p>\n<p>\u041f\u0440\u0435\u0434\u043f\u043e\u043b\u043e\u0436\u0438\u043c \u0447\u0442\u043e \u043f\u0443\u0442\u044c \u043a \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u043e\u043c\u0443 Mitogen \u0431\u0443\u0434\u0435\u0442 <code>\/usr\/lib\/python2.7\/site-packages\/ansible_mitogen\/plugins\/strategy<\/code>. \u0422\u043e\u0433\u0434\u0430:<\/p>\n<p><\/p>\n<pre><code class=\"bash\">export ANSIBLE_STRATEGY_PLUGINS=\/usr\/lib\/python2.7\/site-packages\/ansible_mitogen\/plugins\/strategy\nexport ANSIBLE_STRATEGY=mitogen_linear<\/code><\/pre>\n<p><\/p>\n<p>\u0438\u043b\u0438<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">[defaults]\nstrategy = mitogen_linear\nstrategy_plugins = \/usr\/lib\/python2.7\/site-packages\/ansible_mitogen\/plugins\/strategy<\/code><\/pre>\n<p><\/p>\n<p>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043c Ansible \u0432 virtualenv, \u0441 Mitogen \u0438 \u0431\u0435\u0437 \u043d\u0435\u0435:<\/p>\n<p><\/p>\n<pre><code class=\"bash\">virtualenv mitogen_ansible\n.\/mitogen_ansible\/bin\/pip install ansible==2.7.10 mitogen\nvirtualenv pure_ansible\n.\/pure_ansible\/bin\/pip install ansible==2.7.10<\/code><\/pre>\n<p><\/p>\n<p><strong>\u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u0447\u0442\u043e Mitogen 0.2.7 \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0441 Ansible 2.8 (\u043d\u0430 \u043c\u0430\u0439 2019)<\/strong><\/p>\n<p><\/p>\n<p>\u0414\u0435\u043b\u0430\u0435\u043c aliases:<\/p>\n<p><\/p>\n<pre><code class=\"bash\">alias pure-ansible-playbook='$(pwd)\/pure_ansible\/bin\/ansible-playbook'\nalias mitogen-ansible-playbook='ANSIBLE_STRATEGY_PLUGINS=$(pwd)\/mitogen_ansible\/lib\/python3.7\/site-packages\/ansible_mitogen\/plugins\/strategy ANSIBLE_STRATEGY=mitogen_linear $(pwd)\/mitogen_ansible\/bin\/ansible-playbook'<\/code><\/pre>\n<p><\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c playbook \u0441\u043e\u0437\u0434\u0430\u044e\u0449\u0438\u0439 \u0444\u0430\u0439\u043b\u044b \u043d\u0430 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u0435:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">---\n- hosts: all\n  gather_facts: false\n  tasks:\n    - name: Create files with copy content module\n      copy:\n        content: |\n          test file {{ item }}\n        dest: ~\/file_{{ item }}\n      with_sequence: start=1 end={{ n }}<\/code><\/pre>\n<p><\/p>\n<p>\u0418 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043c \u0441 Mitogen \u0438 \u0431\u0435\u0437 \u043d\u0435\u0435 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f 10 \u0444\u0430\u0439\u043b\u043e\u0432:<\/p>\n<p><\/p>\n<pre><code class=\"bash\">time mitogen-ansible-playbook file_creation.yml -i hosts -e n=10 &amp;&gt;\/dev\/null\n\nreal    0m2.603s\nuser    0m1.152s\nsys     0m0.096s\n\ntime pure-ansible-playbook file_creation.yml -i hosts -e n=10 &amp;&gt;\/dev\/null\n\nreal    0m5.908s\nuser    0m1.745s\nsys     0m0.643s<\/code><\/pre>\n<p><\/p>\n<p>\u041c\u044b \u0432\u0438\u0434\u0438\u043c \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u0435 \u0432 2 \u0440\u0430\u0437\u0430. \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u043c \u0434\u043b\u044f 20, 30, &#8230;, 100 \u0444\u0430\u0439\u043b\u043e\u0432:<\/p>\n<p><\/p>\n<pre><code class=\"bash\">time pure-ansible-playbook file_creation.yml -i hosts -e n=100 &amp;&gt;\/dev\/null\n\nreal    0m51.775s\nuser    0m8.039s\nsys     0m6.305s\n\ntime mitogen-ansible-playbook file_creation.yml -i hosts -e n=100 &amp;&gt;\/dev\/null\n\nreal    0m4.331s\nuser    0m1.903s\nsys     0m0.197s<\/code><\/pre>\n<p><\/p>\n<p>\u0412 \u0438\u0442\u043e\u0433\u0435 \u043c\u044b \u0443\u0441\u043a\u043e\u0440\u0438\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0431\u043e\u043b\u0435\u0435 \u0447\u0435\u043c \u0432 10 \u0440\u0430\u0437!<br \/>\n\u0422\u0435\u043f\u0435\u0440\u044c \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u0438 \u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0443 \u043d\u0430\u0441 \u0431\u044b\u0441\u0442\u0440\u0435\u0435 \u0432\u0441\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442:<\/p>\n<p><\/p>\n<ul>\n<li>\n<p>\u0421\u0446\u0435\u043d\u0430\u0440\u0438\u0439 \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u043e\u0432 \u043d\u0430 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0439 \u0445\u043e\u0441\u0442 \u0441 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e (\u0441 \u043c\u043e\u0434\u0443\u043b\u0435\u043c <code>copy<\/code>):<br \/>\n<img decoding=\"async\" alt=\"\u0423\u0441\u043a\u043e\u0440\u044f\u0435\u043c Ansible \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Mitogen\" src=\"\/wp-content\/uploads\/2019\/05\/db95b463ba2eedf4b0ed222a885c0416.svg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\n<\/li>\n<li>\n<p>\u0421\u0446\u0435\u043d\u0430\u0440\u0438\u0439 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u043e\u0432 \u043d\u0430 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u043c \u0445\u043e\u0441\u0442\u0435 \u0441 <code>copy<\/code> \u043c\u043e\u0434\u0443\u043b\u0435\u043c:<br \/>\n<img decoding=\"async\" alt=\"\u0423\u0441\u043a\u043e\u0440\u044f\u0435\u043c Ansible \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Mitogen\" src=\"\/wp-content\/uploads\/2019\/05\/1a4a4c99a8f2af698e176535791e758d.svg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\n<\/li>\n<li>\n<p>\u0421\u0446\u0435\u043d\u0430\u0440\u0438\u0439 \u0441 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u043e\u0439 \u0444\u0430\u0439\u043b\u043e\u0432 \u0441 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u0445\u043e\u0441\u0442\u0430 \u043d\u0430 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439:<br \/>\n<img decoding=\"async\" alt=\"\u0423\u0441\u043a\u043e\u0440\u044f\u0435\u043c Ansible \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Mitogen\" src=\"\/wp-content\/uploads\/2019\/05\/c21523df2907ed03bd135e2b11c8cc3f.svg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\n<\/li>\n<\/ul>\n<p><\/p>\n<p>\u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u0439 \u0441 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c\u0438 (3) \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u043c\u0438 \u043c\u0430\u0448\u0438\u043d\u0430\u043c\u0438, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u0439 \u0441 \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0444\u0430\u0439\u043b\u043e\u0432 \u043d\u0430 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0439 \u0445\u043e\u0441\u0442:<br \/>\n<img decoding=\"async\" alt=\"\u0423\u0441\u043a\u043e\u0440\u044f\u0435\u043c Ansible \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Mitogen\" src=\"\/wp-content\/uploads\/2019\/05\/ea8c48af75f69671ef0f838e6867153d.svg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>\u041a\u0430\u043a \u0432\u0438\u0434\u043d\u043e Mitogen \u044d\u043a\u043e\u043d\u043e\u043c\u0438\u0442 \u043d\u0430\u043c \u043a\u0430\u043a \u0432\u0440\u0435\u043c\u044f \u0442\u0430\u043a \u0438 \u0442\u0440\u0430\u0444\u0438\u043a \u0432 \u044d\u0442\u0438\u0445 \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u044f\u0445. \u041d\u043e \u0435\u0441\u043b\u0438 &#171;\u0431\u0443\u0442\u044b\u043b\u043e\u0447\u043d\u043e\u0435 \u0433\u043e\u0440\u043b\u044b\u0448\u043a\u043e&#187; \u043d\u0435 \u0432 Ansible, \u0430 \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0432 I\/O \u0434\u0438\u0441\u043a\u0430 \u0438\u043b\u0438 \u0441\u0435\u0442\u0438, \u0438\u043b\u0438 \u0433\u0434\u0435 \u043b\u0438\u0431\u043e \u0435\u0449\u0435, \u0442\u043e\u0433\u0434\u0430 \u0442\u0440\u0443\u0434\u043d\u043e \u043e\u0436\u0438\u0434\u0430\u0442\u044c \u0447\u0442\u043e Mitogen \u043d\u0430\u043c \u043f\u043e\u043c\u043e\u0436\u0435\u0442.<\/p>\n<p><\/p>\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u0439 \u0441 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u043e\u0439 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0441 yum\/dnf \u0438 \u043c\u043e\u0434\u0443\u043b\u0435\u0439 python \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e pip. \u041f\u0430\u043a\u0435\u0442\u044b \u0431\u044b\u043b\u0438 \u0437\u0430\u043a\u0435\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u044b \u0447\u0442\u043e\u0431\u044b \u043d\u0435 \u0437\u0430\u0432\u0438\u0441\u0435\u0442\u044c \u043e\u0442 \u0433\u043b\u044e\u043a\u043e\u0432 \u0432 \u0441\u0435\u0442\u0438:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">---\n- hosts: all\n  gather_facts: false\n  tasks:\n    - name: Install packages\n      become: true\n      package:\n        name:\n          - samba\n          - httpd\n          - nano\n          - ruby\n        state: present\n\n    - name: Install pip modules\n      become: true\n      pip:\n        name:\n          - pytest-split-tests\n          - bottle\n          - pep8\n          - flask\n        state: present\n<\/code><\/pre>\n<p><\/p>\n<p>\u0421 Mitogen \u044d\u0442\u043e \u0432\u0437\u044f\u043b\u043e 12 \u0441\u0435\u043a\u0443\u043d\u0434, \u043a\u0430\u043a \u0438 \u0431\u0435\u0437 \u043d\u0435\u0433\u043e.<br \/>\n\u041d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 <noindex><a rel=\"nofollow\" href=\"https:\/\/mitogen.networkgenomics.com\/ansible_detailed.html\">Mitogen for Ansible page<\/a><\/noindex> \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0434\u0440\u0443\u0433\u0438\u0435 \u0431\u0435\u043d\u0447\u043c\u0430\u0440\u043a\u0438 \u0438 \u0442\u0435\u0441\u0442\u044b. \u041a\u0430\u043a \u0443\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435:<\/p>\n<p><\/p>\n<blockquote><p>Mitogen \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u0443\u0441\u043a\u043e\u0440\u0438\u0442\u044c \u043c\u043e\u0434\u0443\u043b\u044c \u043a\u043e\u0433\u0434\u0430 \u043e\u043d \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f. \u041e\u043d \u043c\u043e\u0436\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u0442\u043e\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f \u043d\u0430\u0441\u0442\u043e\u043b\u044c\u043a\u043e \u0431\u044b\u0441\u0442\u0440\u044b\u043c \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u044d\u0442\u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e.<\/p><\/blockquote>\n<p>\u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432\u0430\u0436\u043d\u043e \u043d\u0430\u0439\u0442\u0438 \u0432\u0430\u0448\u0438 \u0443\u0437\u043a\u0438\u0435 \u043c\u0435\u0441\u0442\u0430 \u0432 \u0440\u0430\u0437\u0432\u0435\u0440\u0442\u044b\u0432\u0430\u043d\u0438\u0438 \u0438 \u0435\u0441\u043b\u0438 \u043e\u043d\u0438 \u0438\u0437-\u0437\u0430 Ansible, \u0442\u043e Mitogen \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u0432\u0430\u043c \u0440\u0435\u0448\u0438\u0442\u044c \u0438\u0445 \u0438 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0443\u0441\u043a\u043e\u0440\u0438\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0432\u0430\u0448\u0438\u0445 playbooks.<\/p>\n<p>\u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/453520\/\">habr.com<\/a><\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>Ansible \u0441\u0442\u0430\u043b \u043e\u0434\u043d\u0438\u043c \u0438\u0437 \u0441\u0430\u043c\u044b\u0445 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0445 Configuration Management \u0441\u0438\u0441\u0442\u0435\u043c. \u041f\u043e\u0441\u043b\u0435 \u0442\u043e\u0433\u043e \u043a\u0430\u043a \u0431\u044b\u043b \u043a\u0443\u043f\u043b\u0435\u043d Red Hat \u0432 2015 \u0433\u043e\u0434\u0443 \u0447\u0438\u0441\u043b\u043e \u0443\u0447\u0430\u0441\u0442\u043d\u0438\u043a\u043e\u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u043f\u0440\u0435\u0432\u044b\u0441\u0438\u043b\u043e \u0442\u044b\u0441\u044f\u0447\u0438 \u0438 Ansible \u0441\u0442\u0430\u043b \u043d\u0430\u0432\u0435\u0440\u043d\u043e\u0435 \u0441\u0430\u043c\u044b\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439 \u0440\u0430\u0437\u0432\u0435\u0440\u0442\u044b\u0432\u0430\u043d\u0438\u044f \u0438 \u043e\u0440\u043a\u0435\u0441\u0442\u0440\u0430\u0446\u0438\u0438. \u0415\u0433\u043e \u0448\u0438\u0440\u043e\u043a\u0438\u0435 \u043e\u0431\u043b\u0430\u0441\u0442\u0438 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043e\u0447\u0435\u043d\u044c \u0432\u043f\u0435\u0447\u0430\u0442\u043b\u044f\u044e\u0442. Ansible \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0447\u0435\u0440\u0435\u0437 SSH \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u043a \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u043c \u0445\u043e\u0441\u0442\u0430\u043c. \u041e\u043d \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442 SSH \u0441\u0435\u0441\u0441\u0438\u044e, \u0434\u0435\u043b\u0430\u0435\u0442 \u043b\u043e\u0433\u0438\u043d, \u043a\u043e\u043f\u0438\u0440\u0443\u0435\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-34595","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=\"Ansible \u0441\u0442\u0430\u043b \u043e\u0434\u043d\u0438\u043c \u0438\u0437 \u0441\u0430\u043c\u044b\u0445 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0445 Configuration Management \u0441\u0438\u0441\u0442\u0435\u043c. \u041f\u043e\u0441\u043b\u0435 \u0442\u043e\u0433\u043e \u043a\u0430\u043a \u0431\u044b\u043b \u043a\u0443\u043f\u043b\u0435\u043d Red Hat \u0432 2015 \u0433\u043e\u0434\u0443 \u0447\u0438\u0441\u043b\u043e \u0443\u0447\u0430\u0441\u0442\u043d\u0438\u043a\u043e\u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u043f\u0440\u0435\u0432\u044b\u0441\u0438\u043b\u043e \u0442\u044b\u0441\u044f\u0447\u0438 \u0438 Ansible \u0441\u0442\u0430\u043b \u043d\u0430\u0432\u0435\u0440\u043d\u043e\u0435 \u0441\u0430\u043c\u044b\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439 \u0440\u0430\u0437\u0432\u0435\u0440\u0442\u044b\u0432\u0430\u043d\u0438\u044f \u0438 \u043e\u0440\u043a\u0435\u0441\u0442\u0440\u0430\u0446\u0438\u0438. \u0415\u0433\u043e \u0448\u0438\u0440\u043e\u043a\u0438\u0435 \u043e\u0431\u043b\u0430\u0441\u0442\u0438 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043e\u0447\u0435\u043d\u044c \u0432\u043f\u0435\u0447\u0430\u0442\u043b\u044f\u044e\u0442. Ansible \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0447\u0435\u0440\u0435\u0437 SSH \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u043a \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u043c \u0445\u043e\u0441\u0442\u0430\u043c. \u041e\u043d \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442 SSH \u0441\u0435\u0441\u0441\u0438\u044e, \u0434\u0435\u043b\u0430\u0435\u0442 \u043b\u043e\u0433\u0438\u043d, \u043a\u043e\u043f\u0438\u0440\u0443\u0435\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\/de\/blog\/administrirovanie\/uskoryaem-ansible-s-pomoshhyu-mitogen\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\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\u043a\u043e\u0440\u044f\u0435\u043c Ansible \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Mitogen | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"Ansible \u0441\u0442\u0430\u043b \u043e\u0434\u043d\u0438\u043c \u0438\u0437 \u0441\u0430\u043c\u044b\u0445 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0445 Configuration Management \u0441\u0438\u0441\u0442\u0435\u043c. \u041f\u043e\u0441\u043b\u0435 \u0442\u043e\u0433\u043e \u043a\u0430\u043a \u0431\u044b\u043b \u043a\u0443\u043f\u043b\u0435\u043d Red Hat \u0432 2015 \u0433\u043e\u0434\u0443 \u0447\u0438\u0441\u043b\u043e \u0443\u0447\u0430\u0441\u0442\u043d\u0438\u043a\u043e\u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u043f\u0440\u0435\u0432\u044b\u0441\u0438\u043b\u043e \u0442\u044b\u0441\u044f\u0447\u0438 \u0438 Ansible \u0441\u0442\u0430\u043b \u043d\u0430\u0432\u0435\u0440\u043d\u043e\u0435 \u0441\u0430\u043c\u044b\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439 \u0440\u0430\u0437\u0432\u0435\u0440\u0442\u044b\u0432\u0430\u043d\u0438\u044f \u0438 \u043e\u0440\u043a\u0435\u0441\u0442\u0440\u0430\u0446\u0438\u0438. \u0415\u0433\u043e \u0448\u0438\u0440\u043e\u043a\u0438\u0435 \u043e\u0431\u043b\u0430\u0441\u0442\u0438 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043e\u0447\u0435\u043d\u044c \u0432\u043f\u0435\u0447\u0430\u0442\u043b\u044f\u044e\u0442. Ansible \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0447\u0435\u0440\u0435\u0437 SSH \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u043a \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u043c \u0445\u043e\u0441\u0442\u0430\u043c. \u041e\u043d \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442 SSH \u0441\u0435\u0441\u0441\u0438\u044e, \u0434\u0435\u043b\u0430\u0435\u0442 \u043b\u043e\u0433\u0438\u043d, \u043a\u043e\u043f\u0438\u0440\u0443\u0435\u0442\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/uskoryaem-ansible-s-pomoshhyu-mitogen\" \/>\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:59:15+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:59:15+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\udd47 Beschleunigung von Ansible mit Mitogen | ProHoster","description":"Ansible ist eines der beliebtesten Systeme zur Konfigurationsverwaltung geworden. Nachdem es 2015 von Red Hat \u00fcbernommen wurde, hat die Anzahl der Projektmitarbeiter die Tausendergrenze \u00fcberschritten und Ansible ist vermutlich das am h\u00e4ufigsten verwendete System zur Bereitstellung und Orchestrierung geworden. Die breiten Anwendungsm\u00f6glichkeiten sind \u00e4u\u00dferst beeindruckend. Ansible arbeitet \u00fcber SSH-Verbindungen zu entfernten Hosts. Es \u00f6ffnet eine SSH-Session, meldet sich an, kopiert","canonical_url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/uskoryaem-ansible-s-pomoshhyu-mitogen","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"de_DE","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\u043a\u043e\u0440\u044f\u0435\u043c Ansible \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Mitogen | ProHoster","og:description":"Ansible \u0441\u0442\u0430\u043b \u043e\u0434\u043d\u0438\u043c \u0438\u0437 \u0441\u0430\u043c\u044b\u0445 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0445 Configuration Management \u0441\u0438\u0441\u0442\u0435\u043c. \u041f\u043e\u0441\u043b\u0435 \u0442\u043e\u0433\u043e \u043a\u0430\u043a \u0431\u044b\u043b \u043a\u0443\u043f\u043b\u0435\u043d Red Hat \u0432 2015 \u0433\u043e\u0434\u0443 \u0447\u0438\u0441\u043b\u043e \u0443\u0447\u0430\u0441\u0442\u043d\u0438\u043a\u043e\u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u043f\u0440\u0435\u0432\u044b\u0441\u0438\u043b\u043e \u0442\u044b\u0441\u044f\u0447\u0438 \u0438 Ansible \u0441\u0442\u0430\u043b \u043d\u0430\u0432\u0435\u0440\u043d\u043e\u0435 \u0441\u0430\u043c\u044b\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439 \u0440\u0430\u0437\u0432\u0435\u0440\u0442\u044b\u0432\u0430\u043d\u0438\u044f \u0438 \u043e\u0440\u043a\u0435\u0441\u0442\u0440\u0430\u0446\u0438\u0438. \u0415\u0433\u043e \u0448\u0438\u0440\u043e\u043a\u0438\u0435 \u043e\u0431\u043b\u0430\u0441\u0442\u0438 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043e\u0447\u0435\u043d\u044c \u0432\u043f\u0435\u0447\u0430\u0442\u043b\u044f\u044e\u0442. Ansible \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0447\u0435\u0440\u0435\u0437 SSH \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u043a \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u043c \u0445\u043e\u0441\u0442\u0430\u043c. \u041e\u043d \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442 SSH \u0441\u0435\u0441\u0441\u0438\u044e, \u0434\u0435\u043b\u0430\u0435\u0442 \u043b\u043e\u0433\u0438\u043d, \u043a\u043e\u043f\u0438\u0440\u0443\u0435\u0442","og:url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/uskoryaem-ansible-s-pomoshhyu-mitogen","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:59:15+00:00","article:modified_time":"2019-10-31T18:59:15+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"34595","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-21 19:51:39","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 02:18:36","updated":"2026-01-21 19:51:39"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/34595","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/comments?post=34595"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/34595\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media?parent=34595"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/categories?post=34595"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/tags?post=34595"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}