LoginSignup
4
2

More than 5 years have passed since last update.

CentOS6にansibleとansible_specをインストールする

Last updated at Posted at 2017-02-20

構成管理ツールであるAnsibleとテストツールであるansible_specを使うための初期設定手順になります。
各ツールの細かい使い方などは公式をご覧ください。
ansible_specについては、volanjaさんが同じくテストツールであるServespec
ansibleのインベントリとroleを使って管理できるように作成されたものです。

①必要なパッケージをインストール

以下のコマンドで、ざらっとインストールをします。
最後にansibleが入ったか確認するためにバージョンを表示してみます。

[user@host]$ sudo yum install git gcc make openssl-devel libffi-devel readline-devel epel-release.noarch 
[user@host]$ sudo yum install ansible
[user@host]$ ansible --version
ansible 2.2.1.0
config file = /etc/ansible/ansible.cfg
configured module search path = Default w/o overrides

②ansibleからのログインユーザーを作成

ansibleはエージェントレスでsshによるコマンド実行で処理をしていきます。
そのためのユーザーは何でもいいですが、ここでは"ansible"とします。
ユーザを作成して公開鍵を設定したらログイン確認まで行います。

[user@host]$ ssh-keygen -t rsa
[user@host]$ sudo useradd ansible
[user@host]$ sudo sh -c "cat .ssh/id_rsa.pub > ~ansible/.ssh/authorized_keys"
[user@host]$ sudo diff ~/.ssh/id_rsa.pub ~ansible/.ssh/authorized_keys
[user@host]$ sudo chown ansible.ansible -R ~ansible/.ssh/
[user@host]$ ssh ansible@localhost
:
Are you sure you want to continue connecting (yes/no)? yes
:
[ansible@host]$ exit

③rubyインストール

以下のコマンドでインストールします。
インストールできたか確認するためバージョンを表示してみます。

[user@host]$ git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
[user@host]$ git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
[user@host]$ vi ~/.bashrc
~/.bashrc
:
# User specific aliases and functions
PATH=$PATH:$HOME/bin
export PATH
export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"
[user@host]$ source .bashrc
[user@host]$ rbenv versions
* system (set by /home/user/.rbenv/version)
[user@host]$ rbenv install 2.3.0 ※ちょっと時間かかることもある
[user@host]$ rbenv versions
* system (set by /home/user/.rbenv/version)
  2.3.0
[user@BIND-test ~]$ rbenv versions
* system (set by /home/user/.rbenv/version)
  2.3.0
[user@BIND-test ~]$ rbenv rehash
[user@BIND-test ~]$ rbenv versions
* system (set by /home/user/.rbenv/version)
  2.3.0
[user@BIND-test ~]$ rbenv global 2.3.0
[user@BIND-test ~]$ rbenv versions
  system
* 2.3.0 (set by /home/user/.rbenv/version)

⑤ansible_specインストール

以下のコマンドでインストールします。
インストールできたら".ansiblespec"というファイルができている

$ gem install bundler
$ gem list bundler

*** LOCAL GEMS ***

bundler (1.14.4)
$ mkdir sample_playbook
$ cd sample_playbook
$ rbenv exec bundle install --path vendor/bundle
$ ~/.rbenv/bin/rbenv exec bundle exec ansiblespec-init
$ cat .ansiblespec
---
-
  playbook: site.yml
  inventory: hosts

あとはansibleを通常通り使うときと同じようにplaybookを書きながら
role/commonとかの中にspecというフォルダを作成して、その中にxxxx_spec.rbを作ればOKです。
playbook書くのが面倒という方は、Google先生に"ansible playbook sample"とかで探せるので自己責任でどうぞ。


参考

http://qiita.com/KisaragiZin/items/5682370f5b63b398dbb1
http://qiita.com/volanja/items/5e97432d6b231dbb31c1
http://takatoshiono.hatenablog.com/entry/2015/01/09/012040
http://dev.classmethod.jp/tool/rbenv-too-slow/
http://docs.ansible.com/ansible/index.html

4
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
2