Ansibleでローカル環境にインストールしてみる
VirtualBoxにCentOSをとりあえずインストール
の続き
VitualBoxのCentOS上でAnsibleを実行して、
ローカルの環境にインストールしてみる。
Ansibleのインストール
まずepelのリポジトリを追加する。
$ sudo rpm -ivh http://ftp-srv2.kddilabs.jp/Linux/distributions/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm
epelは明示的に指定したいので、enableを0にする。
$ sudo vi /etc/yum.repos.d/epel.repo enable=1 ↓ enable=0
ansibleをインストールする。
$ sudo yum -y install ansible --enablerepo=epel
hostsを書き換えて、デフォルトのホストをローカルにする。
$ sudo vi /etc/ansible/hosts 127.0.0.1 ansible_connection=local
別にhostsを作成してもOK。 $ vi ansible.cfg [defaults] hostfile = ./hosts $ vi hosts 127.0.0.1 ansible_connection=local
プレイブックを実行してみる
今回はtreeコマンドをインストールするプレイブックを作成してみる。
$ vi sample.yml --- - hosts: all sudo: yes tasks: - yum: name=tree state=latest
プレイブックを実行する。
$ ansible-playbook sample.yml
sudoでパスワードが必要な場合は「-K」または「--ask-sudo-pass」を指定する。
$ ansible-playbook sample.yml -K
treeコマンドがインストールされる。
$ tree . └── sample.yml
sudoをパスワード無しにしたい場合は、下記のように設定する。 $ sudo usermod -G wheel hoge $ sudo visudo ・・・ %wheel ALL=(ALL) NOPASSWD: ALL ←コメントを解除 ・・・
(補足)
$ su -
でrootになった後、下記のコピペでAnsibleの実行環境が一気にできます。
rpm -ivh http://ftp-srv2.kddilabs.jp/Linux/distributions/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm sed -i "s/^enabled\s*=\s*1/enabled=0/g" /etc/yum.repos.d/epel.repo yum -y install ansible --enablerepo=epel echo "127.0.0.1 ansible_connection=local" > /etc/ansible/hosts