CentOS 8
Sponsored Link

Ansible : 基本操作2020/03/17

 
Ansible の基本的な利用方法です。書式は以下のようになります。
⇒ ansible [対象サーバー] [オプション] -m [モジュール] -a [モジュールの引数]
※ モジュールは非常に多数のものが公開されており、個々の機能は公式ドキュメントで参照可能です。
⇒ https://docs.ansible.com/ansible/latest/modules/modules_by_category.html
Ansible は管理対象クライアントへ SSH アクセスするため、認証が必要になります。
また、Ansible は一般ユーザーでも利用可能ですが、クライアント上で root 権限を行使する場合は、事前に [sudo] による任意の一般ユーザーへの特権行使許可設定、などが必要になります。
[1] クライアントに対して root ログイン許可 (PermitRootLogin が no 以外) + 鍵ペア認証 (キーパスフレーズ無し) の場合は、以下のようなコマンド指定で利用できます。 パスフレーズ付き鍵ペアの場合は SSH-Agent を起動しておけば、同様のコマンド指定で利用可能です
# [target_servers] に対して Ping モジュールを実行

[root@dlp ~]#
ansible target_servers -m ping

10.0.0.52 | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/libexec/platform-python"
    },
    "changed": false,
    "ping": "pong"
}
10.0.0.51 | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/libexec/platform-python"
    },
    "changed": false,
    "ping": "pong"
}
[2] 鍵ペア認証ではなく、パスワード認証で接続したい場合は、[-k] オプションを指定してパスワードを入力することで利用可能です。 ただし、前提として、全ホストで同じパスワードが設定されている、且つ SSHPass をインストールしておく必要があります (通常は Ansible との依存関係で同時にインストールされる)。
# [target_servers] に対して [uptime] コマンドを実行

[root@dlp ~]#
ansible target_servers -k -m command -a "uptime"

SSH password:
10.0.0.52 | CHANGED | rc=0 >>
 19:09:23 up 25 min,  2 users,  load average: 0.00, 0.00, 0.00
10.0.0.51 | CHANGED | rc=0 >>
 19:09:23 up 26 min,  2 users,  load average: 0.08, 0.02, 0.01
[3]
対象ホストで [sudo] 実行が許可されている任意の一般ユーザーで接続する場合は以下のように実行します。
例として、[cent] ユーザーで実行します。
[-b (--become)] オプションで権限昇格し、[--ask-become-pass] でパスワードを入力します。( [sudo] で [NOPASSWD] 設定している場合は [--ask-become-pass] 不要)
root ユーザー以外の権限を利用したい場合は [--become-user=xxx] で明示的に指定します。
[sudo] 以外の昇格方法 [sudo | su | pbrun | pfexec | runas] を利用したい場合は [--become-method=xxx] で明示的に指定します。
# [target_servers] に対して [/etc/shadow] を表示

[cent@dlp ~]$
ansible target_servers -k -m command -a "cat /etc/shadow" -b --ask-become-pass

SSH password:
BECOME password[defaults to SSH password]:   通常 SSH パスワードと同じのため 空 Enter で OK
10.0.0.52 | CHANGED | rc=0 >>
bin:*:18078:0:99999:7:::
daemon:*:18078:0:99999:7:::
adm:*:18078:0:99999:7:::
.....
.....
10.0.0.51 | CHANGED | rc=0 >>
bin:*:18078:0:99999:7:::
daemon:*:18078:0:99999:7:::
adm:*:18078:0:99999:7:::
.....
.....
関連コンテンツ