はじめに
Ansible
をWSL2で使うために入門する。
環境
1
2
3
4
| Windows 10 Professional
WSL2 (Ubuntu 22.04LTS)
ansible [core 2.15.2]
|
Ansibleのインストール
下記を参考に WSL2 (Ubuntu22.04 LTS)
にインストールする。
https://docs.ansible.com/ansible/2.9_ja/installation_guide/intro_installation.html#ubuntu-ansible
1
2
3
4
| sudo apt update
sudo apt install software-properties-common
sudo apt-add-repository --yes --update ppa:ansible/ansible
sudo apt install ansible
|
1
2
3
4
5
6
7
8
9
10
| $ ansible --version
ansible [core 2.15.2]
config file = /etc/ansible/ansible.cfg
configured module search path = ['/home/horiba/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python3/dist-packages/ansible
ansible collection location = /home/horiba/.ansible/collections:/usr/share/ansible/collections
executable location = /usr/bin/ansible
python version = 3.10.12 (main, Jun 11 2023, 05:26:28) [GCC 11.4.0] (/usr/bin/python3)
jinja version = 3.0.3
libyaml = True
|
ansibleコマンドを使ってみる
ansible
コマンドを使って、 ping
を localhost
に実行してみる。
1
| ansible -m ping localhost
|
成功!
1
2
3
4
| localhost | SUCCESS => {
"changed": false,
"ping": "pong"
}
|
playbookを使ってみる
※ localhost
で使うので、inventory
は設定しない。
playbookの準備
playbook.yml
1
2
3
4
5
6
| - hosts: localhost
tasks:
- name: playbook-test
file:
path: /tmp/test.txt
state: touch
|
playbookコマンドの実行
1
| ansible-playbook playbook.yml
|
1
2
3
4
5
6
7
8
9
10
11
12
13
| $ ansible-playbook playbook.yml
[WARNING]: provided hosts list is empty, only localhost is available. Note that the implicit localhost does not match 'all'
PLAY [localhost] ***********************************************************************************************************************************************************************************************
TASK [Gathering Facts] *****************************************************************************************************************************************************************************************
ok: [localhost]
TASK [playbook-test] *******************************************************************************************************************************************************************************************
changed: [localhost]
PLAY RECAP *****************************************************************************************************************************************************************************************************
localhost : ok=2 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
|
1
2
| $ ls /tmp/test.txt
/tmp/test.txt
|
指定通りのタスクが実行できることが確認できる。
参考
おわりに
Ansible
を今まで使おうと思いつつも使えていなかったので、まずは Hello,World
的なことを実践した。
今後もう少し使えるように試していきたい。