サーチ…


パラメーター

パラメータ説明
ansible_connection ホストへの接続タイプ。これは、誰かの接続プラグインの名前にすることができます。 SSHプロトコルの種類はsmartsshまたはparamikoです。デフォルトはスマートです。非SSHベースのタイプについては、次のセクションで説明します。
ansible_host 接続先の別名と異なる場合は、接続先のホストの名前。
ansible_port sshポート番号、22でない場合
ansible_user 使用するデフォルトのsshユーザ名。
ansible_ssh_pass 使用するsshパスワード(これは安全ではないので、 --ask-passまたはSSHキーの使用を強く推奨します)
ansible_ssh_private_key_file sshで使用される秘密鍵ファイル。複数のキーを使用し、SSHエージェントを使用したくない場合に便利です。
ansible_ssh_common_args この設定は、 sftpscp 、およびsshのデフォルトのコマンドラインに常に追加されます 。特定のホスト(またはグループ)に対してProxyCommandを設定すると便利です。
ansible_sftp_extra_args この設定は、デフォルトのsftpコマンドラインに常に追加されます。
ansible_scp_extra_args この設定は、常にデフォルトのscpコマンドラインに追加されます。
ansible_ssh_extra_args この設定は、常にデフォルトのsshコマンドラインに追加されます。
ansible_ssh_pipelining SSHパイプライニングを使用するかどうかを決定します。これは、 ansible.cfgpipelining設定を無効にすることができます。
不可能_になる ansible_sudoまたはansible_suと同等です。特権の昇格を強制できます
ansible_become_method 特権エスカレーション方法を設定できるようにする
ansible_become_user ansible_sudo_userまたはansible_su_userと同等です。権限昇格によってユーザーを設定できます
確かに_ようこそ ansible_sudo_passまたはansible_su_passと同等で、特権エスカレーションパスワードを設定することができます
ansible_shell_type ターゲットシステムのシェルタイプ。 ansible_shell_executableを非Bourne(sh)互換のシェルに設定していない限り、この設定は使用しないでください。デフォルトでは、コマンドはsh -style構文を使用してフォーマットされます。これをcshfish設定すると、ターゲットシステム上で実行されるコマンドはシェルの構文に従うようになります。
ansible_python_インタプリタターゲットホストのpythonパス。これは、複数のPythonを持つシステムや、* BSDのような/ usr / bin / pythonにないシステム、または/ usr / bin / pythonが2.XシリーズのPythonでないシステムで役に立ちます。リモートユーザのパスを正しく設定する必要があるため、 Python実行ファイルの名前がpythonであると仮定しているため、 / usr / bin / envメカニズムは使用しません。実行ファイルの名前はpython2.6となります。
可能な_ * _通訳者 RubyやPerlのようなもので動作し、 ansible_python_interpreterようにansible_python_interpreterます。これは、そのホストで動作するモジュールのシバンを置き換えます。
ansible_shell_executable これは、潜在的なコントローラがターゲットマシン上で使用するシェルを設定し、 / bin / shにデフォルト設定されているansible.cfgexecutableを上書きします。 / bin / shを使用できない場合(つまり、 / bin / shがターゲットマシンにインストールされていないか、sudoから実行できない場合)、実際に変更するだけです。バージョン2.1の新機能

ユーザー名とパスワードによる在庫

インベントリは、インフラストラクチャ内のすべてのシステムを追跡するための不可欠な方法です。ここには、単一のシステムとAnsibleのログイン資格情報を含む単純なインベントリファイルがあります。

[targethost]
192.168.1.1 ansible_user=mrtuovinen ansible_ssh_pass=PassW0rd

カスタム秘密鍵を使用したインベントリ

[targethost]
192.168.1.1 ansible_user=mrtuovinen ssh_private_key_file=~/.ssh/custom_key

カスタムSSHポートによるインベントリ

[targethost]
192.168.1.1 ansible_user=mrtuovinen ansible_port=2222

静的在庫を不可解なプレイブックに渡す

ansible-playbook -i path/to/static-inventory-file -l myhost myplaybook.yml

ダイナミックインベントリを安全なプレイブックに渡す

ansible-playbook -i path/to/dynamic-inventory-script.py -l myhost myplaybook.yml

詳細については、 ダイナミックインベントリを参照してください。

インベントリ、グループバール、およびユー

プロジェクト構造(不可能なベストプラクティス)。

project/
  group_vars/
     development
  inventory.development
  playbook.yaml

それはすべてinventory.developmentで始まります

[development]
dev.fakename.io

[development:vars]
ansible_host: 192.168.0.1
ansible_user: dev
ansible_pass: pass
ansible_port: 2232

[api:children]
development

group_varsにリンクすることができます。その環境に特定のデータを保持する...

---
app_name: NewApp_Dev
app_url: https://dev.fakename.io
app_key: f2390f23f01233f23f

インベントリファイルに対して以下のプレイブックを実行できるようにします。

---
- name: Install api.
  hosts: api
  gather_facts: true
  sudo: true
  tags:
    - api
  roles:
    - { role: api,         tags: ["api"]         }

次のランラインで

ansible-playbook playbook.yaml -i  inventory.development

ホストファイル

ホストファイルは、Anisbleプレイブックの接続を保存するために使用されます。接続パラメータを定義するオプションがあります。

ansible_hostはホスト名またはIPアドレスです

ansible_portは、マシンがSSHに使用するポートです

ansible_userは、次のように接続するリモートユーザーです。

SSHへのパスワードを使用する場合はansible_ssh_pass

ホスト固有の複数のキーを使用する必要がある場合はansible_ssh_private_key_file

これらは最も一般的に使用されるオプションです。詳細はAnsibleの公式ドキュメントにあります

次にhostsファイルの例を示します。

# Consolidation of all groups
[hosts:children]
web-servers
offsite
onsite
backup-servers

[web-servers]
server1 ansible_host=192.168.0.1 ansible_port=1600
server2 ansible_host=192.168.0.2 ansible_port=1800

[offsite]
server3 ansible_host=10.160.40.1 ansible_port=22 ansible_user=root
server4 ansible_host=10.160.40.2 ansible_port=4300 ansible_user=root

# You can make groups of groups
[offsite:children]
backup-servers

[onsite]
server5 ansible_host=10.150.70.1 ansible_ssh_pass=password

[backup-servers]
server6 ansible_host=10.160.40.3 ansible_port=77


Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow