日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Ansible自动化运维工具介绍

發布時間:2025/5/22 编程问答 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Ansible自动化运维工具介绍 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
  • 介紹



    Ansible自動化運維工具,是基于Python開發的,可以實現批量系統配置,批量程序部署、批量運行命令等等。

    ansible是基于模塊工作的,本身沒有批量部署的能力。真正具有批量部署的是ansible所運行的模塊,ansible只是提供一種

    主要包括:

  • ? (1)、連接插件connection plugins:負責和被監控端實現通信;

    ? (2)、host inventory:指定操作的主機,是一個配置文件里面定義監控的主機;

    ? (3)、各種模塊核心模塊、command模塊、自定義模塊;

    ? (4)、借助于插件完成記錄日志郵件等功能;

    ? (5)、playbook:劇本執行多個任務時,非必需可以讓節點一次性運行多個任務。


    2. 環境介紹


    ? 有兩臺測試環境,IP地址為:192.168.1.126 ? ?192.168.1.127

    ? 測試環境中WEB服務,數據庫服務,目錄情況均為一致。WEB服務為:tomcat。數據庫服務為mysql。

    ? 現想通過Ansible實現文件的copy,更新java代碼,重新啟動tomcat命令,重啟mysql的命令等一些其

    ? 它命令。為了配合開發對功能的測試,需要多臺測試環境,使用Ansible所運行的模塊,實現批量系

    ? 統配置,批量程序部署,批量運行命令等。這樣可以大大減少簡單和重復性的操作。


    3. 安裝

    ?(1)、python安裝

    ?#?https://www.python.org/ftp/python/? ?地址為:python官方下載地址,這里有各種版本的py

    ? thon。

    ???wget?https://www.python.org/ftp/python/3.0/Python-3.0.tgztar?zxvf?Python-3.0.tgzcd?Python-3.0./configure?--prefix=/usr/localmakemake?installcd?/usr/local/include/python3.0cp?-a?./*?/usr/local/include/

    ? (2)、pycrypto模塊安裝

    ???wget?https://pypi.python.org/packages/source/p/pycrypto/pycrypto-2.6.1.tar.gztar?xvzf?pycrypto-2.6.1.tar.gzcd?pycrypto-2.6.1python?setup.py?install

    ? (3)、PyYAML模塊安裝

    ???wget?http://pyyaml.org/download/libyaml/yaml-0.1.5.tar.gztar?xvzf?yaml-0.1.5.tar.gzcd?yaml-0.1.5./configure?--prefix=/usr/localmakemake?installwget?https://pypi.python.org/packages/source/P/PyYAML/PyYAML-3.11.tar.gztar?xvzf?PyYAML-3.11.tar.gzcd?PyYAML-3.11python?setup.py?install

    ? (4)、setuptools模塊安裝

    ???wget?tar?xvzf?setuptools-7.0.tar.gzcd?setuptools-7.0python?setup.py?install

    ? (5)、Jinja2模塊安裝

    ???wget?tar?xvzf?MarkupSafe-0.9.3.tar.gzcd?MarkupSafe-0.9.3python?setup.py?installwget?tar?xvzf?Jinja2-2.7.3.tar.gz?cd?Jinja2-2.7.3python?setup.py?install

    ? (6)、paramiko模塊安裝

    ???wget?tar?xvzf?ecdsa-0.11.tar.gzcd?ecdsa-0.11python?setup.py?installwget?tar?xvzf?paramiko-1.15.1.tar.gzcd?paramiko-1.15.1python?setup.py?install

    ? (7)、simplejson模塊安裝

    ???wget?tar?xvzf?simplejson-3.6.5.tar.gzcd?simplejson-3.6.5python?setup.py?install

    ? (8)、ansible安裝

    ???wget?tar?xvzf?ansible-1.7.2.tar.gzcd?ansible-1.7.2python?setup.py?install


    4. Ansible配置

    ? (1)、SSH免秘鑰登錄 ?# linux單向信任,在測試環境192.168.1.127中生成密鑰

    ???ssh?-keygen?-t?rsa?-P?""??????#??生成公鑰和私鑰cat?/root/.ssh/id_rsa.pub?>>?/root/.ssh/authorized_keys??#需要將id_rsa.pub文件上傳到測試環境192.168.1.126中,并執行命令chmod?600?/root/.ssh/authorized_keys???#?在測試環境192.168.1.126中,執行命令。

    ? (2)、ansible配置

    ????mkdir?-p?/etc/ansiblevim?/etc/ansible/ansible.cfg#??將如下的內容添加到ansible.cfg中remote_port?=?36000private_key_file?=?/root/.ssh/id_rsa#??定義主機組vim?/etc/ansible/host#??將如下內容添加到host中[storm_cluster]192.168.1.126

    ??

    5. Ansible使用

    ? ?Ansible已經配置完成,下面使用ansible命令查看192.168.1.126與192.168.1.127中的‘date‘命

    ? ?令

    ? (1)、批量使用命令

    ????ansible?storm_cluster?-m?command?-a?'date'??#??如下圖

    ? ??

    ? ?# 通過這個命令可以直接將兩個測試環境的時間都顯示出來,success 表示成功執行了。command

    ? ? 此參數表示“在遠程主機上執行命令”。


    ? ? 如此可以將date命令,換成/usr/local/tomcat/bin/./shutdown.sh等命令。

    ?

    ? (2)、copy ? ? # ?復制文件到遠程文件 ??

    ??????ansible?storm_cluster?-m?copy?-a?"\src=/alidata/www/WEB-INF1214.zip\dest=/alidata/www/WEB-INF1214.zip\owner=root?group=root?backup=yes";?????#??如下圖

    ? ??

    ? ?

    ? ? 查看測試環境192.168.1.126是否存在這個文件,如下圖:

    ? ??

    ? ? src:被復制到遠程主機的本地文件,可以是絕對路徑,也可以是相對路徑。

    ? ? owner:文件所有者

    ? ? group:文件所屬用戶組

    ? ? dest:復制到遠程的文件。必填項

    ? ? mode:文件權限。如文件為755權限,mode="0755"即可。

    ? ??

    ? (3)、遠程查看文件內容 ??

    ?????[root@localhost?/]#?ansible?storm_cluster?-m?command?-a?"cat?/1.txt"????#??如下圖

    ? ??


    ? (4)、還有很多模塊可以使用,實現批量系統配置,批量程序部署、批量運行命令。

    ? ?

    ? ? ?http://docs.ansible.com/ansible/modules_by_category.html? # 更多的模塊請查看此鏈接



    ? ??

    ? ? ?關于Ansible的相關介紹以及一些簡單的功能進行介紹,歡迎大家進行補充。

    ? ? ?

    ? ? ?在此感謝 http://sofar.blog.51cto.com/353572/1579894?原文章的幫助。雖然過程中有點坎 ? ? ?

    ? ? ?坷,最終還是可以使用Ansible了。.










    轉載于:https://blog.51cto.com/chengxiaobai/1882596

    總結

    以上是生活随笔為你收集整理的Ansible自动化运维工具介绍的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。