【Ansible関連モジュール] --2019-08-09 12時07分22秒

オリジナル:http://106.13.73.98/__/149/

@(Ansible関連するコマンド)


コマンド

コマンドを実行し、ターゲットホストを指定します。

[root@old ~]# ansible db -a 'pwd'
9.0.0.4 | SUCCESS | rc=0 >>
/root
# 命令中的 db 是一个分组

chdir一般的に、コンパイル時に使用するコマンド指定されたディレクトリを、実行に切り替えた後:

[root@old ~]# ansible db -a 'chdir=/tmp pwd'
9.0.0.4 | SUCCESS | rc=0 >>
/tmp

creates指定されたファイルが存在する場合、それは実行されません。次の操作を:

[root@old ~]# ansible db -a 'creates=/tmp pwd'
9.0.0.4 | SUCCESS | rc=0 >>
skipped, since /tmp exists

# 如要注意的是,如果是像下面这样,则会执行后面的操作
t@old ~]# ansible db -a 'creates=/data mkdir /data'
 [WARNING]: Consider using file module with state=directory rather than running mkdir
9.0.0.4 | SUCCESS | rc=0 >>

removes指定されたファイルが存在する場合は、実行、次の操作を:

[root@old ~]# ansible db -a 'removes=/tmp pwd'
9.0.0.4 | SUCCESS | rc=0 >>
/root

コマンドがサポートされていない<> | ; & $使用、コマンドにこれらの文字を使用する必要がある場合、これらの特殊文字をシェル下記参照、コマンドを。

シェル

例1、USER01ユーザーのパスワード:

[root@old ~]# ansible db -m shell -a 'echo "123456" | passwd --stdin user01'
9.0.0.4 | SUCCESS | rc=0 >>
Changing password for user user01.
passwd: all authentication tokens updated successfully.

例2、Pythonスクリプトを実行します。

[root@old ~]# ansible db -m shell -a '/root/test.py'
9.0.0.4 | SUCCESS | rc=0 >>
Hello, world!
# 前提是该脚本必须有可执行权限


スクリプト

制御部行う制御ユニットファイル:

[root@old ~]# ansible db -m script -a '/root/test.sh'
9.0.0.4 | SUCCESS => {
    "changed": true, 
    "rc": 0, 
    "stderr": "Shared connection to 9.0.0.4 closed.\r\n", 
    "stdout": "", 
    "stdout_lines": []
}


コピー

リモートホストへファイルをコピーします。

ansible db -m copy -a 'dest=/root/test01.sh src=/root/test.sh'
# src:指定本机中的文件
# dest:指定远程主机中要生成的文件

リモートホストとリモートバックアップファイルにファイルをコピーします。

ansible db -m copy -a 'dest=/root/test01.sh src=/root/test.sh backup=yes'
# backup=yes:备份

コピー後のファイルの所有権とアクセス権を変更します。

ansible db -m copy -a 'dest=/root/test01.sh src=/root/test.sh owner=user01 mode=700'
# owner:指定属主
# mode:指定权限

リモートホストにディレクトリをコピーします。

ansible db -m copy -a 'src=/etc/init.d dest=/tmp'
# src:指定本机的目录
# dest:指定远程主机的目录

# 在src末尾加上'/'后,将复制目录中的文件到远程主机:src=/etc/init.d/

リモートホストにディレクトリ内のファイルをコピーし、所有権と権限を変更します。

ansible db -m copy -a 'src=/etc/init.d dest=/tmp owner=user01 mode=755'
# owner:指定属主
# mode:指定权限

コンテンツは、リモート・ホスト・ファイルに指定したコンテンツを追加します:

ansible db -m copy -a 'content="Hello, World!" dest=/tmp/test.txt'
# content:指定内容
# dest:指定远程主机的文件


ファイル

リモートホスト上のディレクトリを作成します。

ansible db -m file -a 'path=/tmp/test state=directory'
# path:指定要创建的目录
# state=directory:声明这是要创建目录

リモートホスト上のファイルを作成します。

ansible db -m file -a 'path=/tmp/test.txt state=touch'
# path:指定要创建的文件
# state=touch:声明这是要创建文件

リモートホスト上のファイルやディレクトリを削除します。

ansible db -m file -a 'path=/tmp/test state=absent'
# path:指定要删除的文件/目录
# state=absent:声明这是要删除文件/目录

ソフトリンクを作成します。

ansible db -m file -a 'path=/root/init.d src=/etc/init.d state=link'
# path:指定目标文件
# src:指定源文件
# state=link:声明这是要创建软链接,你也可以指定为hard来创建硬链接


フェッチ

機械制御ファイル/ディレクトリを引っ張るために使用されます。

ansible db -m fetch -a 'dest=/tmp src=/var/log/cron'
# dest:指定存储的目录
# src:指定拉取的文件/目录
# 注意:成功拉取后,会在本地保留被管控机的目录结构


yumを

ヤムパッケージをインストールします。

# 在被管控机上安装lynx
ansible db -m yum -a 'name=lynx'


ピップ

Pythonのピップダウンロードツール

# 在被管控机上安装Flask框架
ansible -m pip -a 'name=flask'


サービス

コントロールのためのサービス:

# 启动firewalld服务
ansible db -m service -a 'name=firewalld state=started'

# 停止firewalld服务
ansible db -m service -a 'name=firewalld state=stopped'


cronの

次のパラメータのタイミング管理タスク:

  • :分
  • 時間:とき
  • :日
  • :月
  • WEEKDAY:週

新しい定期的なタスク:

# 每隔10分钟执行一次job指定的动作
ansible all -m cron -a 'minute=10 job="touch /tmp/test.txt"'
# job:用于指定动作

名前の新しい定期的なタスク:

# 每隔20分钟执行一次job指定的动作
ansible db -m cron -a 'minute=20 job="touch /tmp/text.txt" name=touchfile'
# name:指定定时任务的名称

定期的なタスクをコメントアウトします。

ansible db -m cron -a 'minute=20 job="touch /tmp/text.txt" name=touchfile diabled=yes'
# diabled=yes:注释

スケジュールされたタスクを削除するには:

ansible db -m cron -a 'minute=50 job="touch /tmp/test.txt" name="touchfile" state=absent'
# state=absent:删除
# 注意:删除操作博需指定name才能成功删除,即使是name为None,也必须指定


グループ

グループを作成します。

ansible db -m group -a 'name=group01'

グループを削除します。

ansible db -m group -a 'name=group01 state=absent'
# state=absent:删除


ユーザー

ユーザーを作成します。

ansible db -m user -a 'name=user01 home=/opt/user01 groups=root uid=2000'
# home:指定宿主目录
# groups:指定附加组
# uid:指定用户ID

ユーザーを削除します。

ansible db -m user -a 'name=user01 state=absent remove=yes'
# state=absent:删除
# remove=yes:删除用户家目录

オリジナル:http://106.13.73.98/__/149/

おすすめ

転載: www.cnblogs.com/gqy02/p/11326420.html