/var/www/yatta47.log

/var/www/yatta47.log

やったのログ置場です。スクラップみたいな短編が多いかと。

Ubuntu18.04にAnsibleをインストールして自分自身に実行してみる

ふっと思い返して、「これってAnsibleが使える状況じゃね?」って思い立って、一度くじけたAnsibleをもう一度やってみようという気になったのでやってみました。

っといっても、とりあえずは下準備のAnsibleインストールから。

環境

Ubuntu 18.04.2 LTS

公式サイトに書いてある通りにやります。

$ sudo apt update
$ sudo apt install software-properties-common
$ sudo apt-add-repository --yes --update ppa:ansible/ansible
$ sudo apt install ansible

これで入った。

バージョン確認。

vagrant@vagrant:~$ ansible --version
ansible 2.8.1
  config file = /etc/ansible/ansible.cfg
  configured module search path = [u'/home/vagrant/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python2.7/dist-packages/ansible
  executable location = /usr/bin/ansible
  python version = 2.7.15+ (default, Nov 27 2018, 23:36:35) [GCC 7.3.0]
vagrant@vagrant:~$

うむ。ちゃんと入っている様子。

 

自分自身にplaybookを実行してみる

せっかく入れたので、playbookを動かしてみる。

今回の使い方として周りのサーバをどうのこうのするというよりか、自分自身にライブラリを入れるように使いたい。

自分自身の定義を/etc/ansible/hostsに付け加える。

具体的には/etc/ansible/hostsの最終行に以下を追加。

localhost ansible_connection=local

そしてテスト用のplaybook(適当にtest.yml)を作る。

vagrant@vagrant:~$ cat test.yml
- hosts: localhost
  tasks:
    - name: Test ansible-playbook
      debug: msg="Hello world!"
vagrant@vagrant:~$

hostsのところにlocalhostと定義した名前を使うようにする。

で、実行してみる。

vagrant@vagrant:~$ ansible-playbook test.yml

PLAY [localhost] ***********************************************************************************************************************************

TASK [Gathering Facts] *****************************************************************************************************************************
ok: [localhost]

TASK [Test ansible-playbook] ***********************************************************************************************************************
ok: [localhost] => {
    "msg": "Hello world!"
}

PLAY RECAP *****************************************************************************************************************************************
localhost                  : ok=2    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0

vagrant@vagrant:~$

ちゃんとできている様子。

 

まとめ

Ansibleはすごくいろんな事が出来すぎて、便利なんだけど勉強コストがかかるという印象です。

過去に取り組もうとした形跡としてこのブログにも書いているけど1年前って・・・・時がたつのは早い。

とりあえずいままでシェルでやっていたものをansibleに置き換えるレベルのところからスタートしていこうと思います。

 

参考サイト

https://docs.ansible.com/ansible/latest/installation_guide/intro_installation.html#latest-releases-via-apt-ubuntu

【Ansible】自分自身への実行 - Qiita

UbuntuでAnsibleインストールから動作確認まで - Qiita

ansibleで自分自身(localhost)を制御する場合はlocalで - Qiita