天天看點

ansible之playbook自動化安裝nginx

一、使用說明:

   之前一直用的saltstack自動化管理工具,需要維護用戶端,而去批量執行時網絡延遲也是個很頭疼的問題,後來接觸到了ansible這個工具,不需要安裝用戶端,走的ssh的加密協定,比較友善。今天這裡說一下使用ansible自動化安裝nginx的操作。

二、實驗環境:

 3台伺服器(centos 6.5 final版本):

三、安裝配置:

 在192.168.1.193上面安裝ansible,可以直接用yum直接安裝,安裝之前,需要給yum添加個epel的源。

 安裝好epel之後,就可以直接用yum安裝ansible了

 裝好ansible,其它都不需要修改,隻需要将被控伺服器添加到hosts檔案裡面就好。

 因為ansible通過ssh來控制被控伺服器,是以想要在控制伺服器時不需要輸入密碼,那麼就需要把192.168.1.193的公鑰放置到被控伺服器上面。操作方法如下:

 先在192.168.1.193上面生成密鑰:

 一直enter鍵就行了,将生成一個公鑰和私鑰。-p '' 表示空密碼。

 然後将公鑰copy至被控伺服器,并寫入authorized_keys,這可以用一個指令一次性搞定:

 ok,到這裡就可以用ansible測試一下了。

 表示ansible可以無需輸入密碼控制194和195兩台伺服器了。

 下面書寫playbook來自動化安裝nginx到194和195兩台伺服器上:

 base-install.yml内容為:

 nginx-install-common.yml内容為:

 然後執行

 這裡隻是檢查一下yml的文法是否正确,并沒有正确的執行。

 檢查無誤,再執行:

 就可以執行nginx的安裝操作了。大功告成。

四、注意說明:

 這裡主要是為了讓大家熟悉ansible的安裝,初始化配置,已經playbook的文法

 ansible在這裡做的主要是建立目錄,從193上面複制一些nginx安裝檔案,配置檔案到194和195上面

 主要的安裝過程在auto_instal.sh腳本裡面,也就是建立使用者,編譯安裝,添加配置檔案的一些過程。

繼續閱讀