サーバーの構成管理ツール Ansible についての総合的な入門書
サーバーの構成管理ツール Ansible についての総合的な入門書。目次などの情報は下記にある。
Ansible を動かせるようにするまでには苦闘があった。 Ansible を参照。以下、私の環境は、 Ansible は Windows 10 Home Edition で動いている WSL2 の Ubuntu 20.04 で、 制御対象のホストは WSL2 が動いている同じ PC の、 Windows 用 Virtual Box + Vagrant Ubuntu 20.04 である。
p.19 では、
ルート権限が必要なのであれば -s オプションを渡せば Ansible は sudo して root になります。
とあるが、ansible 2.10.9 では -s オプションはない。
$ ansible localhost -s -a "tail /var/log/syslog" usage: ansible [-h] [--version] [-v] [-b] [--become-method BECOME_METHOD] [--become-user BECOME_USER] [-K] [-i INVENTORY] [--list-hosts] [-l SUBSET] [-P POLL_INTERVAL] [-B SECONDS] [-o] [-t TREE] [-k] [--private-key PRIVATE_KEY_FILE] [-u REMOTE_USER] [-c CONNECTION] [-T TIMEOUT] [--ssh-common-args SSH_COMMON_ARGS] [--sftp-extra-args SFTP_EXTRA_ARGS] [--scp-extra-args SCP_EXTRA_ARGS] [--ssh-extra-args SSH_EXTRA_ARGS] [-C] [--syntax-check] [-D] [-e EXTRA_VARS] [--vault-id VAULT_IDS] [--ask-vault-password | --vault-password-file VAULT_PASSWORD_FILES] [-f FORKS] [-M MODULE_PATH] [--playbook-dir BASEDIR] [-a MODULE_ARGS] [-m MODULE_NAME] pattern ansible: error: unrecognized arguments: -s (後略)
次のように、--become-user root を使う。
$ ansible localhost --become-user root -a "tail /var/log/syslog" localhost | CHANGED | rc=0 >> May 4 22:34:58 localhost anacron[823]: Normal exit (0 jobs run) May 4 22:34:58 localhost systemd[1]: anacron.service: Succeeded. May 4 22:35:01 localhost CRON[825]: (root) CMD (command -v debian-sa1 > /dev/null && debian-sa1 1 1) May 4 22:35:50 localhost kernel: [ 2794.237353] WSL2: Performing memory compaction. May 4 22:36:51 localhost kernel: [ 2855.246397] WSL2: Performing memory compaction. May 4 22:38:53 localhost kernel: [ 2977.255639] WSL2: Performing memory compaction. May 4 22:39:01 localhost CRON[833]: (root) CMD ( [ -x /usr/lib/php/sessionclean ] && → if [ ! -d /run/systemd/system ]; then /usr/lib/php/sessionclean; fi) May 4 22:41:54 localhost kernel: [ 3158.264376] WSL2: Performing memory compaction. May 4 22:42:55 localhost kernel: [ 3219.272280] WSL2: Performing memory compaction. May 4 22:43:41 localhost ansible-ansible.legacy.command: Invoked with _raw_params=tail → /var/log/syslog warn=True _uses_shell=False stdin_add_newline=True strip_empty_ends=True → argv=None chdir=None executable=None creates=None removes=None stdin=None
p.15 (例1-1 を除く)本文下から5行目、「test server というエイリアス」とあるが、 「testserver」というエイリアスが正しい(空白がない)。
p.55 上から1行目、/usr/bin/pyton2 とあるが、/usr/bin/python2 が正しい。
誤植と明確には言い切れないが、誤植に近い例がある。 p.14 で $ vagrant ssh-config の出力で、次の2行がある。
IdentityFile /Users/lorinhochstein/dev/ansiblebook/ch01/playbooks/.vagrant/ machines/default/virtualbox/priavate_key
これは実際には1行で出力される。だから、本当であれば次のように1行で書くべきものである。
IdentityFile /Users/lorinhochstein/dev/ansiblebook/ch01/playbooks/.vagrant/machines/default/virtualbox/priavate_key
紙幅の都合で1行に書けないならば、次の行に続いていることを表す印などを入れて1行であることを明示すべきだ。
IdentityFile /Users/lorinhochstein/dev/ansiblebook/ch01/playbooks/.vagrant/→ machines/default/virtualbox/priavate_key
このことは、p.15 の上にもいえる。
書 名 | 初めての Ansible |
著 者 | Lorin Hochstein |
発行日 | 2016 年 4 月 15 日(初版第1刷) |
発行元 | オライリー・ジャパン |
定 価 | 3,200円(本体) |
サイズ | 判 |
ISBN | 978-4-87311-765-2 |
その他 | 越谷市立図書館で借りて読む |
まりんきょ学問所 > コンピュータの部屋 > コンピュータの本 > 開発環境 > 初めての Ansible