Changes between Initial Version and Version 1 of devops/Ansible


Ignore:
Timestamp:
2015/11/20 12:45:33 (9 years ago)
Author:
yuna
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • devops/Ansible

    v1 v1  
     1= Ansibleのメモ 
     2 
     3== 踏み台経由でのAnsibleの実行 
     4 
     5外から直接繋がっていないホストをSSHのプロキシサーバ経由で環境構築を行う。下記のような構成を想定する。 
     6 
     7{{{ 
     8Ansible Client   10.0.2.8 
     9     |  
     10Proxy Server     10.0.2.7 
     11     | 
     12Target Server    192.168.1.7 
     13}}} 
     14 
     15インベントリファイルは次のような内容を想定。 
     16 
     17 
     18=== inventry 
     19{{{ 
     20[target] 
     21192.168.1.7 
     22}}} 
     23 
     24=== 認証鍵の作成 
     25ターゲットホストに乗り込むための認証鍵を作成する。 
     26 
     27{{{ 
     28$ ssh-keygen 
     29Generating public/private rsa key pair. 
     30Enter file in which to save the key (/home/okamototk/.ssh/id_rsa): Enter passphrase (empty for no passphrase): 
     31Enter same passphrase again: 
     32Your identification has been saved in /home/okamototk/.ssh/id_rsa. 
     33Your public key has been saved in /home/okamototk/.ssh/id_rsa.pub. 
     34The key fingerprint is: 
     350d:62:14:09:20:9a:48:79:2b:2a:c2:b9:71:e8:d1:21 okamototk@mypc 
     36The key's randomart image is: 
     37+---[RSA 2048]----+ 
     38|..o...oo         | 
     39|++ . ..          | 
     40|+ . . o .        | 
     41| E o . . o       | 
     42|o * .   S .      | 
     43|+* o             | 
     44|+ =              | 
     45| o               | 
     46|                 | 
     47+-----------------+ 
     48}}} 
     49 
     50=== 認証鍵のコピー 
     51作成された~/.ssh/id_rsa.pubをTargeサーバの.ssh/authorized_keysにコピーする。 
     52 
     53=== SSH設定ファイルを作成 
     54 
     55プロキシ経由でSSH接続するための接続設定ファイルを作成する。 
     56 
     57==== sshconfig 
     58{{{ 
     59Host * 
     60     IdentityFile /root/.ssh/id_rsa 
     61     ProxyCommand ssh -W %h:%@ -w 120 root@10.0.2.7 
     62}}} 
     63 
     64下記のコマンドでAnsible ClientからTargetホストにSSH接続できるか確認。 
     65 
     66{{{ 
     67$ ssh -F sshconfig root@192.168.1.7 
     68}}} 
     69 
     70=== Ansible実行 
     71 
     72上記の設定ファイルをANSIBLE_SSH_ARGSで指定して、ansibleを実行するだけ 
     73 
     74{{{ 
     75$ export ANSIBLE_SSH_ARGS=' -F  sshconfig' 
     76$ ansible-playbook -i inventy site.yml 
     77}}}