Ansible Documentation
ansible特徴
- 対象ホストに対し、単一のタスク(モジュール)を実行するコマンド
- 複数のタスクを組み合わせることができないため、複雑な処理を行うのは苦手
構文
- ansible <host-pattern> [options]
host-pattern
host-pattern | 対象ホスト |
---|---|
all | inventory ファイル内に記述したすべての対象ホスト |
グループ名 | inventory ファイル内の指定したグループに含まれるすべての対象ホスト |
ホスト名 | inventory ファイル内のホスト名で指定された対象ホスト |
options
options | 指定する内容 |
---|---|
-i --inventory |
inventory ファイル名 |
-m --module-name |
実行するモジュール名 |
-a --args |
"-m" で指定したモジュールの引数 |
-C --check |
"-m" で指定したモジュールのドライラン( dry run ) |
--syntax-check | 構文チェック |
例
■ inventory ファイル : hosts.ymlcentos: hosts: node-c0610: node-c0706: others: hosts: node-d0908: node-u1810:■ inventory ファイル内のすべてのホストに ping 実行
[ansibleman@ansiblesv ansible]$ ansible all -i hosts.yml -m ping
node-d0908 | SUCCESS => {
"changed": false,
"ping": "pong"
}
node-u1810 | SUCCESS => {
"changed": false,
"ping": "pong"
}
node-c0706 | SUCCESS => {
"changed": false,
"ping": "pong"
}
node-c0610 | SUCCESS => {
"changed": false,
"ping": "pong"
}
[ansibleman@ansiblesv ansible]$
■ centos グループのメモリ使用状況を確認
[ansibleman@ansiblesv ansible]$ ansible centos -i hosts.yml -m shell -a "free"
node-c0610 | CHANGED | rc=0 >>
total used free shared buffers cached
Mem: 4056484 200932 3855552 468 7036 43868
-/+ buffers/cache: 150028 3906456
Swap: 3354620 0 3354620
node-c0706 | CHANGED | rc=0 >>
total used free shared buff/cache available
Mem: 4045744 146992 3748964 8952 149788 3684020
Swap: 3354620 0 3354620
[ansibleman@ansiblesv ansible]$
■対象ホスト node-u1810 のディスク状況を確認
[ansibleman@ansiblesv ansible]$ ansible node-u1810 -i hosts.yml -m shell -a "df -H"
node-u1810 | CHANGED | rc=0 >>
Filesystem Size Used Avail Use% Mounted on
udev 2.1G 0 2.1G 0% /dev
tmpfs 414M 1.2M 413M 1% /run
/dev/sda2 34G 6.8G 26G 22% /
tmpfs 2.1G 0 2.1G 0% /dev/shm
tmpfs 5.3M 0 5.3M 0% /run/lock
tmpfs 2.1G 0 2.1G 0% /sys/fs/cgroup
/dev/loop0 93M 93M 0 100% /snap/core/5662
/dev/loop1 70M 70M 0 100% /snap/lxd/9239
/dev/loop2 96M 96M 0 100% /snap/core/6405
tmpfs 414M 0 414M 0% /run/user/1000
/dev/loop3 55M 55M 0 100% /snap/lxd/10289
[ansibleman@ansiblesv ansible]$