Ansibleで別のサーバにNginxをインストールしてみる
正直、感動した。 こんなに簡単にサーバが作れるなんて…。
site.ymlを以下のように書く。
$ cat site.yml --- - name: Ansible Example hosts: all become: true tasks: - name: Install libselinux-python yum: name: libselinux-python state: present - name: Install EPEL Repository yum: name: epel-release state: present - name: Install ngnix yum: name: nginx state: present - name: set run automation service: name: nginx state: started enabled: true
hostsは以下。
$ cat hosts vm-machine ansible_host=192.168.62.130 ansible_port=22 ansible_user=root ansible_ssh_pass=root_password
で、ansible-playbook -i hosts site.yml
を実行すると、勝手にサーバ上にNginxをインストールしてくれる。
$ ansible-playbook -i hosts site.yml PLAY [Ansible Example] *********************************************************************** TASK [Gathering Facts] *********************************************************************** ok: [vm-machine] TASK [Install libselinux-python] ************************************************************* ok: [vm-machine] TASK [Install EPEL Repository] *************************************************************** changed: [vm-machine] TASK [Install ngnix] ************************************************************************* changed: [vm-machine] TASK [set run automation] ******************************************************************** changed: [vm-machine] PLAY RECAP *********************************************************************************** vm-machine : ok=5 changed=3 unreachable=0 failed=0
別サーバにログインして
# nginx -v nginx version: nginx/1.10.2 [root@localhost ~]#
本当に入ってた!