Ansibleモジュール
1、ansibleがサポートするモジュールを表示する
2、よく使うモジュール
ping:ホストに接続してみて、テストに成功したら“pong”COMMAND:リモートノードでコマンドを実行して、デフォルトモジュールYUM:yumパッケージ管理ツールを使ってパッケージSHEELを管理する:commandモジュールと類似して、コマンドを実行して、変数などの記号cronをサポートする:タイミングタスクを管理して、計画タスクSYSTEMD:管理プログラムサービスFILE:ファイル属性COPYを設定する:ローカルファイルをリモートホストscriptにコピーする:ローカルのスクリプトを転送し、リモートホスト上でsetupを実行する:リモートホストのパラメータ情報を取得するUSER:ユーザーアカウントgroupを管理する:追加またはユーザー・グループの削除
3、あるモジュールの使い方を見る
コマンドモジュールは、単純なコマンドではサポートできない「」,「|」,「;」を使用するのに適しています.「&」などの記号の公式ドキュメント:https://docs.ansible.com/ansible/latest/modules/command_module.html#command-module
パラメータ
オプション/デフォルト
釈義
chdir
コマンドを実行する前に、指定したディレクトリに移動します.
creates
指定したファイルが存在するかどうかを判断し、存在する場合は、後の操作を実行しません.
removes
指定されたファイルが存在するかどうかを判断し、存在する場合は、次の操作を実行します.
free_form
適切なコマンドを入力する必要があります
yumパッケージマネージャを使用して、パッケージとグループをインストール、アップグレード、ダウングレード、削除、リストします.公式ドキュメント:https://docs.ansible.com/ansible/latest/modules/yum_repository_module.html#yum-repository-module
パラメータ
オプション/デフォルト
釈義
name(required)
ソフトウェア名情報の指定
state
absent/removed
ソフトウェアのアンインストール
present/installed
ソフトウェアのインストール
latest
最新のソフトウェアyum updateのインストール
commandモジュールのアップグレード版に似ています.万能モジュールでは、「」、「|」、「;」を使用できます.「&」などの記号の特殊記号の公式ドキュメント:https://docs.ansible.com/ansible/latest/modules/shell_module.html#shell-module
パラメータ
オプション/デフォルト
釈義
chdir
コマンドを実行する前に、指定したディレクトリに移動します.
creates
指定したファイルが存在するかどうかを判断し、存在する場合は、後の操作を実行しません.
removes
指定されたファイルが存在するかどうかを判断し、存在する場合は、次の操作を実行します.
free_form
適切なコマンドを入力する必要があります
サービスの実行ステータスを管理するための公式ドキュメント:https://docs.ansible.com/ansible/latest/modules/systemd_module.html
パラメータ
オプション/デフォルト
釈義
name
サービス名の開始/停止を設定
enable
no/yes
電源を入れて起動するかどうか
state
reloaded
スムーズ再起動
restarted
再起動
started
開始
stopped
ていし
ファイル情報の作成/削除によるデータ権限の公式ドキュメントの変更を実現します.https://docs.ansible.com/ansible/latest/modules/file_module.html#file-module
パラメータ
オプション/デフォルト
釈義
path
ファイルディレクトリのパスの定義
group
ファイルグループユーザー情報の設定
mode
データの権限の設定0644 0755
owner
ファイル所有者の設定
src
ソフト接続するソースファイルのパスは、state=linkの場合にのみ適用されます.
dest
接続されたパスは、state=linkの場合にのみ適用されます.
state
absent
データを削除
directory
ディレクトリの作成
file
指定したディレクトリ情報が存在するかどうかを確認
touch
ファイルを作成
hard/link
リンクファイルの作成
主に、管理ホスト上のデータ情報を複数のホストの公式ドキュメントに転送するために使用されます.https://docs.ansible.com/ansible/latest/modules/copy_module.html#copy-module
パラメータ
オプション/デフォルト
釈義
src
ローカル管理ホストのデータ情報をリモート・レプリケーションする方法を指定します.
backup
no* yes
デフォルトのデータはリモートホストにコピーされ、既存のファイルが上書きされます(yesはソースファイルをバックアップします)
content
ファイルに情報を追加
dest
リモートノードにデータをコピーするパス情報
group
ファイルデータをリモートホストにコピーし、ファイルグループユーザー情報を設定
mode
ファイルデータをリモートホストにコピーし、データの権限eg 0644 0755を設定
owner
ファイルデータをリモートホストにコピーし、ファイルがプライマリ・ユーザーに属する情報を設定します.
リモート・バッチによるユーザー情報の公式ドキュメントの作成:https://docs.ansible.com/ansible/latest/modules/user_module.html#user-module
パラメータ
オプション/デフォルト
釈義
password
パスワード情報を入力してください
name
ユーザー名情報の指定
uid
ユーザーuid情報の指定
group
ユーザーが主にどのグループに属するかを指定します.
groups
ユーザーが属する追加グループ情報を指定します.
shell
/bin/bashまたは/sbin/nologin
ログイン可能かどうかを指定
create_home
yes/no
ホームディレクトリ情報を作成するかどうか
home
ホームディレクトリが作成されるパスのデフォルト/homeを指定します.
ansible-doc -l
2、よく使うモジュール
ping:ホストに接続してみて、テストに成功したら“pong”COMMAND:リモートノードでコマンドを実行して、デフォルトモジュールYUM:yumパッケージ管理ツールを使ってパッケージSHEELを管理する:commandモジュールと類似して、コマンドを実行して、変数などの記号cronをサポートする:タイミングタスクを管理して、計画タスクSYSTEMD:管理プログラムサービスFILE:ファイル属性COPYを設定する:ローカルファイルをリモートホストscriptにコピーする:ローカルのスクリプトを転送し、リモートホスト上でsetupを実行する:リモートホストのパラメータ情報を取得するUSER:ユーザーアカウントgroupを管理する:追加またはユーザー・グループの削除
3、あるモジュールの使い方を見る
ansible-doc -s yum
COMMAND
コマンドモジュールは、単純なコマンドではサポートできない「」,「|」,「;」を使用するのに適しています.「&」などの記号の公式ドキュメント:https://docs.ansible.com/ansible/latest/modules/command_module.html#command-module
パラメータ
オプション/デフォルト
釈義
chdir
コマンドを実行する前に、指定したディレクトリに移動します.
creates
指定したファイルが存在するかどうかを判断し、存在する場合は、後の操作を実行しません.
removes
指定されたファイルが存在するかどうかを判断し、存在する場合は、次の操作を実行します.
free_form
適切なコマンドを入力する必要があります
ansible testgroup -m command -a "date"
#
ansible testgroup -a "date"
YUM
yumパッケージマネージャを使用して、パッケージとグループをインストール、アップグレード、ダウングレード、削除、リストします.公式ドキュメント:https://docs.ansible.com/ansible/latest/modules/yum_repository_module.html#yum-repository-module
パラメータ
オプション/デフォルト
釈義
name(required)
ソフトウェア名情報の指定
state
absent/removed
ソフトウェアのアンインストール
present/installed
ソフトウェアのインストール
latest
最新のソフトウェアyum updateのインストール
# sample
ansible testgroup -m yum -a "name=httpd state=installed"
SHEEL
commandモジュールのアップグレード版に似ています.万能モジュールでは、「」、「|」、「;」を使用できます.「&」などの記号の特殊記号の公式ドキュメント:https://docs.ansible.com/ansible/latest/modules/shell_module.html#shell-module
パラメータ
オプション/デフォルト
釈義
chdir
コマンドを実行する前に、指定したディレクトリに移動します.
creates
指定したファイルが存在するかどうかを判断し、存在する場合は、後の操作を実行しません.
removes
指定されたファイルが存在するかどうかを判断し、存在する場合は、次の操作を実行します.
free_form
適切なコマンドを入力する必要があります
ansible testgroup -m shell -a "ps -ef | grep sshd"
SYSTEMD
サービスの実行ステータスを管理するための公式ドキュメント:https://docs.ansible.com/ansible/latest/modules/systemd_module.html
パラメータ
オプション/デフォルト
釈義
name
サービス名の開始/停止を設定
enable
no/yes
電源を入れて起動するかどうか
state
reloaded
スムーズ再起動
restarted
再起動
started
開始
stopped
ていし
ansible testgroup -m systemd -a "name=httpd state=started"
FILE
ファイル情報の作成/削除によるデータ権限の公式ドキュメントの変更を実現します.https://docs.ansible.com/ansible/latest/modules/file_module.html#file-module
パラメータ
オプション/デフォルト
釈義
path
ファイルディレクトリのパスの定義
group
ファイルグループユーザー情報の設定
mode
データの権限の設定0644 0755
owner
ファイル所有者の設定
src
ソフト接続するソースファイルのパスは、state=linkの場合にのみ適用されます.
dest
接続されたパスは、state=linkの場合にのみ適用されます.
state
absent
データを削除
directory
ディレクトリの作成
file
指定したディレクトリ情報が存在するかどうかを確認
touch
ファイルを作成
hard/link
リンクファイルの作成
ansible testgroup -m file -a "path=/opt/opt.txt state=touch"
COPY
主に、管理ホスト上のデータ情報を複数のホストの公式ドキュメントに転送するために使用されます.https://docs.ansible.com/ansible/latest/modules/copy_module.html#copy-module
パラメータ
オプション/デフォルト
釈義
src
ローカル管理ホストのデータ情報をリモート・レプリケーションする方法を指定します.
backup
no* yes
デフォルトのデータはリモートホストにコピーされ、既存のファイルが上書きされます(yesはソースファイルをバックアップします)
content
ファイルに情報を追加
dest
リモートノードにデータをコピーするパス情報
group
ファイルデータをリモートホストにコピーし、ファイルグループユーザー情報を設定
mode
ファイルデータをリモートホストにコピーし、データの権限eg 0644 0755を設定
owner
ファイルデータをリモートホストにコピーし、ファイルがプライマリ・ユーザーに属する情報を設定します.
ansible testgroup -m copy -a "src=/root/anaconda-ks.cfg dest=/opt"
USER
リモート・バッチによるユーザー情報の公式ドキュメントの作成:https://docs.ansible.com/ansible/latest/modules/user_module.html#user-module
パラメータ
オプション/デフォルト
釈義
password
パスワード情報を入力してください
name
ユーザー名情報の指定
uid
ユーザーuid情報の指定
group
ユーザーが主にどのグループに属するかを指定します.
groups
ユーザーが属する追加グループ情報を指定します.
shell
/bin/bashまたは/sbin/nologin
ログイン可能かどうかを指定
create_home
yes/no
ホームディレクトリ情報を作成するかどうか
home
ホームディレクトリが作成されるパスのデフォルト/homeを指定します.
ansible testgroup -m user -a "name=tomma"