天天看點

用ansible自動 安裝nginx

一 前期說明

l思路:先在一台機器上編譯安裝好nginx、打包,然後再用ansible去下發

lcd /etc/ansible   進入ansible配置檔案目錄

lmkdir  nginx_install   建立一個nginx_install的目錄,友善管理

lcd nginx_install;

lmkdir -p roles/{common,install}/{handlers,files,meta,tasks,templates,vars}   

## 分别在common 和install 這兩個目錄下面建立這些目錄

l說明:roles目錄下有兩個角色,common為一些準備操作,install為安裝nginx的操作。每個角色下面又有幾個目錄,handlers下面是當發生改變時要執行的操作,通常用在配置檔案發生改變,重新開機服務。files為安裝時用到的一些檔案,meta為說明資訊,說明角色依賴等資訊,tasks裡面是核心的配置檔案,templates通常存一些配置檔案,啟動腳本等模闆檔案,vars下為定義的變量

二 在已經安裝好nginx伺服器上面操作

l需要事先準備好安裝用到的檔案,具體如下:

l在一台機器上事先編譯安裝好nginx,配置好啟動腳本,配置好配置檔案

l安裝好後,我們需要把nginx目錄打包,并放到/etc/ansible/nginx_install/roles/install/files/下面,名字為nginx.tar.gz

cd /usr/local/目錄下

ltar czvf nging.tar.gz nginx  打包

cp nginx.tar.gz /etc/ansible/nginx_install/roles/install/files/

l啟動腳本、配置檔案都要放到/etc/ansible/nginx_install/roles/install/templates下面

cp /etc/init.d/nginx /etc/ansible/nginx_install/roles/install/templates

cp /usr/local/nginx/conf/nginx.conf /etc/ansible/nginx_install/roles/install/templates

三 定義相關配置檔案

lcd  /etc/ansible/nginx_install/roles

l定義common的tasks,nginx是需要一些依賴包的

l定義變量

首先要把所有用到的文檔拷貝到目标機器 (複制檔案)

接下來會建立使用者,啟動服務,删除壓縮包  (安裝啟動服務)

再建立main.yml并且 把copy和install調用

最後定義總入口檔案

四 執行

執行: ansible-playbook /etc/ansible/nginx_install/install.yml

最後去用戶端上面檢視nginx服務是否正常啟動

繼續閱讀