LoginSignup
1
1

More than 5 years have passed since last update.

[Ansible入門] 2. インストール後の動作確認(接続確認)

Posted at

今回は、Ansibleインストールしたマシンが正常に動くかを動作確認します

実行環境

Mac上にVagrantで下記環境を作成して実行しています

# Ansibleを実行するマシン # 入門1にてAnsibleをインストールしたマシン
呼称:Controller
OS:CentOS6
IP: 192.168.33.11
user: vagrant
pass: vagrant
# Ansibleを実行されるマシン
呼称: Target
OS: CentOS6
IP: 192.168.33.12
user: vagrant
pass: vagrant

SSH Keyの準備

AnsibleはSSHで接続してプロビジョニングを行うみたいなので、 Controller から Target にSSH Keyで接続できるようにしておく

# SSH Keyの生成
[vagrant@controller ~]$ cd .ssh/
[vagrant@controller .ssh]$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/vagrant/.ssh/id_rsa): # 何も入力せずEnter
# Targetに認証させる
[vagrant@controller .ssh]$ ssh-copy-id vagrant@192.168.33.12
vagrant@192.168.33.12's password:
Now try logging into the machine, with "ssh 'vagrant@192.168.33.12'", and check in:

  .ssh/authorized_keys

to make sure we haven't added extra keys that you weren't expecting.

これでログインできるはず

[vagrant@controller .ssh]$ ssh 192.168.33.12
Last login: Mon Sep 26 03:58:54 2016 from 192.168.33.1
Welcome to your Vagrant-built virtual machine.
[vagrant@target ~]$ # ログインできた!(hostnameが変わっている)

Ansible用ディレクトリなどの準備

ここを参考にテスト接続してみます

[vagrant@controller ~]$ mkdir ansible
[vagrant@controller ~]$ cd ansible
[vagrant@controller ansible]$ mkdir inventory
[vagrant@controller ansible]$ vi inventory/hosts

viで作るファイルの中身はこんな感じ

[targets]
192.168.33.12

動作確認の実行

[vagrant@controller ansible]$ ansible all -i inventory/hosts -m ping
192.168.33.12 | FAILED! => {
    "failed": true,
    "msg": "failed to resolve remote temporary directory from ansible-tmp-1474855390.1-240110546260352: `( umask 77 && mkdir -p \"` echo $HOME/.ansible/tmp/ansible-tmp-1474855390.1-240110546260352 `\" && echo ansible-tmp-1474855390.1-240110546260352=\"` echo $HOME/.ansible/tmp/ansible-tmp-1474855390.1-240110546260352 `\" )` returned empty string"
}

ダメだった...

公式ドキュメントでこんな記述があった

Ansible will attempt to remote connect to the machines using your current user name, just like SSH would. To override the remote user name, just use the ‘-u’ parameter.

デフォルトで現在のユーザ名になるって書いてあるから無駄かもしれんけども、 -u つけたら動くんじゃ、と思って実行してみる

[vagrant@controller ansible]$ ansible all -i inventory/hosts -m ping -u vagrant
192.168.33.12 | SUCCESS => {
    "changed": false,
    "ping": "pong"
}

動いた!

いつから公式ドキュメントが正しいと錯覚していた ってやつでした

とりあえず動いたので今回はこれで終わり

1
1
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
1
1