anpanman
Published on

How to Execute an Ansible Playbook?

Introduction

Ansible 是一個功能強大的自動化工具,用於設定管理、應用程式部署、任務自動化等。 Ansible Playbook 是一個包含一系列任務和主機配置的文件,用於定義和執行自動化任務。 Inventory 是一個包含主機名稱或 IP 地址的文件,用於定義 Ansible Playbook 中要管理的主機。

Step 1: Install Ansible:

sudo apt update
sudo apt install ansible

Ansible 需要在 Linux 上執行,所以如果你使用的是 Windows,則需要在 Windows 上安裝 WSL 來執行 Ansible。

Step 2: Create an Ansible Playbook:

Where to create the Ansible Playbook?

Playbook 可以在任何地方創建,但是最好在 Ansible 的安裝目錄中創建,以便在執行 Playbook 時可以輕鬆訪問它。

在 Ubuntu 中,Ansible 的安裝目錄是 /etc/ansible

在 Windows 中,Ansible 的安裝目錄是 C:\Program Files\Ansible

vim playbook.yml
---
- hosts: all
  become: true
  tasks:
    - name: Install Nginx
      apt: name=nginx state=latest

Step 3: Create an Ansible Inventory File:

Where to create the Ansible Inventory File?

Inventory 可以在任何地方創建,但是最好在 Ansible 的安裝目錄中創建,以便在執行 Playbook 時可以輕鬆訪問它。 hosts 跟 inventory 是類似的,但是 inventory 可以有多個 hosts。 在 Ubuntu 中,Ansible 的安裝目錄是 /etc/ansible,裡面有一個 hosts 檔案。

[windows]
xx.x.xxx.xx ansible_port=5985 ansible_connection=winrm ansible_winrm_server_cert_validation=ignore ansible_user=Administrator

[windows:vars]
ansible_user=administrator
ansible_password=XxxxXXxxXxxxXXXXXXXxxxx
ansible_connection=winrm
ansible_winrm_server_cert_validation=ignore
ansible_port=5985
ansible_winrm_transport=ntlm
ansible_python_interpreter=C:\Program Files\Python38\python.exe

Step 4: Execute the Ansible Playbook:

ansible-playbook playbook.yml -i inventory.ini