ansible

ansile常用模块:

一、setup

收集所有信息

ansible all -m setup -a

查看所有主机名

ansible all -m setup -a "filter=ansible_nodename

查看网卡信息

ansible test239 -m setup -a "filter=ansible_ens33

二、copy

        #backup   :  覆盖备份     y/n
        #content   :  拷贝(是覆盖,不是追加)
        #dest         :  路径
        #directory_mode   :  设定权限
        #force       :  强制覆盖

三、synchronize

compress:开启压缩,默认为开启
archive:是否采用归档模式同步,保证源文件和目标文件属性一致
checksum:是否效验
dirs:以非递归的方式传送目录
links:同步链接文件
recursive:是否递归yes/no
rsync_opts:使用rsync的参数
copy_links:同步的时候是否复制链接
delete:删除源中没有但目标存在的文件,使两边内容一样,以推送方为主
src:源目录及文件
dest:目标文件及目录
dest_port:目标接收的端口
rsync_path:服务的路径,指定rsync在远程服务器上执行
rsync_remote_user:设置远程用户名
–exclude=.log:忽略同步以.log结尾的文件,这个可以自定义忽略什么格式的文件,或者.txt等等都可以,但是由于这个是rsync命令的参数,所以必须和rsync_opts一起使用,比如rsync_opts=--exclude=.txt这种模式
mode:同步的模式,rsync同步的方式push、pull,默认是推送push,从本机推送给远程主机,pull表示从远程主机上拿文件
四、file

        #force   : 强制执行
#group    :设置文件的属组
        #mode    : 设置文件的权限
      #owner   : 设置文件的属主
      #path=    : 被管理文件的路径。别名:'dest','name'
      #recurse   :  递归设置指定的文件属性(仅适用于state =目录)
#src   :  链接到的文件的路径(仅适用于“state = link”)。将接受绝对的,相对的和不存在的路径。相对路径未扩展。
        #absent    :  代表删除

五、ping

检查指定节点机器是否还能连通

ansible webserver -m ping

六、group

gid 指创建的组ID信息
name 指创建组名称信息
state absent 删除指定的用户组
= present 创建指定的用户组
七、user

append : 如果是yes,就是给这个用户添加一个组
comment:可选择地设置用户帐户的描述(也称为“GECOS”)。
createhome :除非设置为“no”,否则当创建帐户或主目录不存在时,将为用户创建主目录。
force : 当与state = absent'一起使用时,行为与userdel --force'一样。
generate_ssh_key : 为yes时,生成秘钥对。生成密钥时,只会生成公钥文件和私钥文件,和直接使用ssh-keygen指令效果相同,不会生成authorized_keys文件。
group:设置用户主组,后面跟用户组名称
groups:设置多个组,当设置为'groups='的时候,用户将从主组以外的所有组移除
home:可以选择设置用户的主目录。
move_home :如果与“home =”一起使用时设置为“yes”,则尝试将用户的主目录移动到指定的目录(如果尚未存在)。
name= :创建,删除或修改用户的名称。
non_unique :可选地,当与-u选项一起使用时,该选项允许将用户ID更改为非唯一值。
password:(可选)将用户密码设置为此加密值。
remove:当与state = absent'一起使用时,行为与userdel --remove'一样。
shell:可选择地设置用户的shell。
ssh_key_bits:可选择指定要创建的SSH密钥中的位数。
ssh_key_comment:(可选)定义SSH密钥的注释。
ssh_key_file :(可选)指定SSH密钥文件名。
ssh_key_passphrase:设置SSH密钥的密码。 如果没有提供密码,SSH密钥将默认没有密码。
ssh_key_type:(可选)指定要生成的SSH密钥的类型。 可用的SSH密钥类型将取决于目标主机上的实现。
state : 帐户是否应该存在 当“absent”时,删除用户帐户。
system : 创建帐户时,将其设置为“yes”将使用户成为系统帐户。 现有用户无法更改此设置。
uid : 可选择地设置用户的“UID”。
八、shell

chdir 在执行命令前,进入到指定目录中
creates 判断指定文件是否存在,如果存在,不执行后面的操作
removes 判断指定文件是否存在,如果存在,执行后面的操作
free_form 必须要输入一个合理的命令
九、script

creates:一个文件名,当这个文件存在,则该命令不执行
free_form= :本地脚本路径
removes : removes:一个文件名,当这个文件不存在,则该命令不执行
十、get_url

dest= : 下载到哪里(绝对路径),如果目标是一个目录,就用服务器上面文件的名称,如果目标设置了名称就用目标设置的名称。
force : 如果yes,dest不是目录,将每次下载文件,如果内容改变,替换文件。如果否,则只有在目标不存在时才会下载该文件。
others : [file]模块接受的所有参数也可以在这里工作
sha256sum : 如果将SHA-256校验和传递给此参数,目标文件的摘要将在下载后计算,以确保其完整性
url= : HTTP,HTTPS或FTP URL(http | https | ftp)
url_password : 用于HTTP基本认证的密码。 如果未指定url_username'参数,则不会使用url_password'参数。
url_username : 用于HTTP基本认证的用户名。 对于允许空密码的站点,此参数可以不使用`url_password'使用。
十一、yum
安装

#ansible all -m yum -a "state=present name=lrzsz"

批量安装

#ansible all -m yum -a "state=latest name=lrzsz,gcc,gcc-c++"

十二、cron

backup #如果yes,那么在修改之后会进行备份,备份的路径在backup_file
cron_file #如果指定,请在cron.d中使用此文件,而不是单个用户的crontab。
day #工作应该运行的月份的第几天(1-31,/2等)
hour #工作应该运行的小时(0-23, / 2等)
job #执行命令。 如果state =present则为必需。
minute #工作应该运行一分钟(0-59,/2等)
month #工作应该运行的一个月(1-12,/2等)
name #crontab条目的说明。
state #present(不存在就添加,存在如果是注释状态就取消状态启动此定时任务),absent为删除定时任务
user #crontab应该修改的具体用户。
state:状态,
absent意味删除
十三、service

设置开机启动

#ansible all -m service -a "name=httpd enabled=yes

停止服务

ansible all -m service -a "name=httpd state=stopped

启动服务

ansible all -m service -a "name=sshd state=started"

重启服务

#ansible all -m service -a "name=httpd state=restarted"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值