サーチ…
パラメーター
パラメータ | 説明 |
---|---|
ansible_connection | ホストへの接続タイプ。これは、誰かの接続プラグインの名前にすることができます。 SSHプロトコルの種類はsmart 、 ssh または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 | この設定は、 sftp 、 scp 、およびsshのデフォルトのコマンドラインに常に追加されます 。特定のホスト(またはグループ)に対してProxyCommand を設定すると便利です。 |
ansible_sftp_extra_args | この設定は、デフォルトのsftpコマンドラインに常に追加されます。 |
ansible_scp_extra_args | この設定は、常にデフォルトのscpコマンドラインに追加されます。 |
ansible_ssh_extra_args | この設定は、常にデフォルトのsshコマンドラインに追加されます。 |
ansible_ssh_pipelining | SSHパイプライニングを使用するかどうかを決定します。これは、 ansible.cfg のpipelining 設定を無効にすることができます。 |
不可能_になる | 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構文を使用してフォーマットされます。これをcsh やfish 設定すると、ターゲットシステム上で実行されるコマンドはシェルの構文に従うようになります。 |
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.cfg でexecutable を上書きします。 / 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