打開git bash 連接ansible服務器,然后進入deploy用戶
#ssh root@192.168.96.188
進入python3.6虛擬環境
#su - deploy
#source .py3-a2.5-env/bin/activate
加載ansible 2.5版本
#source .py3-a2.5-env/ansible/hacking/env-setup -q
驗證ansible加載效果
#ansible-playbook --version
1、File模塊
登錄到目標主機進行預配置工作
#ssh root@test.example.com
創建兩個系統用戶
# useradd foo
# useradd deploy
登出,回到ansible的主機,進入到test_playbooks目錄。編輯主任務文件,添加測試任務。保存退出
# vi roles/testbox/tasks/main.yml
執行測試任務
# ansible-playbook -i inventory/testenv ./deploy.yml
查看文件是否創建成功
# ssh root@test.example.com ls -l /root/foo.txt
創建安裝nginx需要的文件,復制下面的腳本,進行保存
# vi roles/testbox/files/nginx.repo
2、Copy模塊
先創建一個files目錄,在目錄下創建一個腳本文件,添加一下內容,保存退出
# mkdir roles/testbox/files
# vi roles/testbox/files/foo.sh
編輯主任務配置文件,保存退出。
# vi roles/testbox/tasks/main.yml
編輯好文件之后,執行任務
# ansible-playbook -i inventory/testenv ./deploy.yml
3、Stat模塊、Debug模塊
編輯主任務配置文件,添加以下內容
# vi roles/testbox/tasks/main.yml
編輯好文件之后,執行任務
# ansible-playbook -i inventory/testenv ./deploy.yml
4、Command/Shell模塊
編輯主任務配置文件,添加以下內容
# vi roles/testbox/tasks/main.yml
編輯好文件之后,執行任務
# ansible-playbook -i inventory/testenv ./deploy.yml
5、Template模塊、Packaging模塊、Service模塊
添加一些參數到testenv的文件當中,添加如下參數
# vi vi inventory/testenv
創建templates目錄,然后創建一個nginx.conf.j2的模塊文件,添加配置信息
# mkdir roles/testbox/templates
# vi roles/testbox/templates/nginx.conf.j2
編輯主任務配置文件,添加以下下內容
# vi roles/testbox/tasks/main.yml
編輯好文件之后,執行任務
# ansible-playbook -i inventory/testenv ./deploy.yml
檢查nginx.conf.j2文件的參數變量,是否寫入nginx主配置文件
# ssh root@test.example.com cat /etc/nginx/conf.d/default.conf
檢查遠程主機nginx是否啟動
# ssh root@test.example.com ps -ef | grep nginx