工资群发助手在哪里(工资群发助手收费的吗)
779
2022-05-29
一、前言
先介绍几个中文版的文档吧,先上链接
https://ansible-tran.readthedocs.io/en/latest/docs/intro_installation.html
http://www.ansible.com.cn/docs/intro_getting_started.html
以上两个链接内容一模一样,但是第一个提供了各种格式的下载,第二个没有提供下载,好像是马哥的团队出品的,偶尔会弹出广告
http://getansible.com/
二、安装
看上面文档吧,略过
三、ansible一些常用的模块
主要是为了记录一些常用的模块才写的这个文档,下面开始将我觉得比较常用的文档记录下来。
ansible all -m “module”
1、command模块
* 这个模块不支持一些特殊字符比如:`<', `>', `|'等,所以如果想用这个可以使用接下来介绍的shell模块
* windows下“command/shell”模块都不能使用,只能使用“win_command”模块
* 如果要重启系统,只能使用reboot模块和win_reboot模块
* 在远程机器上执行本地的脚本,可以使用scripts模块
* 好像ansible的模块,不管是shell还是command,都不能使用“tail -f”或者“top”这样的命令
示例:
ansible all -m command -a "cat /etc/passwd"
ansible all -m command -a "ls /root/ -la"
ansible all -m command -a "/usr/bin/make_database.sh arg1 arg2 creates=/path/to/database" #这个creates 是在执行命令的时候判断这个目录是否存在,如果不存在就不继续往下执行了
2、shell模块
*有一些和command不一样的地方,有一些比command好的地方,比如支持管道符、重定向符号等
示例:
ansible all -m shell -a "mkdir /root/testansible/testdir chdir=/root/testansible"#chdir 意思是先进入目录然后再执行命令
ansible all -m shell -a "mkdir /root/testansible/testdir creates=/root/testansible/testdir"#creates意思是先filename是否存在,如果存在则不执行命令
ansible all -m shell -a "echo "testword" >> /root/testansible/testdir removes=/root/testansible/testdir"#removes意思是如果不存在,则不执行
如果在ansible-playbook中使用,则应该这么写了
shell: echo "testword" >> /root/testansible/testdir
args:
chdir: /root/testansible
creates: somelog.txt
3、yum模块
这个模块很显然是在红帽系列的linux系统中进行包管理的模块
先介绍下个人觉得比较常用的模块参数:
update_cache:类似于yum clean all &&yum makecache命令,可选值为:yes/no,默认no
state:包的最终需要的状态,present/latest 是安装包/最新的版的包,absent用于删除包
list:列出包,可选值为:`installed', `updates', `available' and `repos'
download_only:下载包,只下载不安装
download_dir:下载包的目录
示例:
ansible -m yum -a "name=httpd,state=latest"#安装包
ansible -m yum -a "name=httpd,state=absent"#移除包
ansible -m yum -a "name=httpd-2.2.29-1.4.amzn1,state=present"#安装指定版本的包(还可以在name处写上包所在的绝对路径安装本地的包)
ansible -m yum -a "name=*,state=latest" #升级所有包
4、apt模块
这个模块的使用和yum很像,毕竟都是包管理软件,apt模块是管理ubuntu的包管理软件
比较常用的模块参数:
update_cache:可选值:yes/no,默认为no,如果为yes则类似于命令apt update
upgrage:可选值为:yes/safe/full/dist,默认为yes,如果为yes/safe则类似于命令:apt upgrade
deb:后面接远程主机的deb包的绝对路径
示例:
ansible -m apt -a "name=httpd , state=present"
ansible -m apt -a "name=httpd , state=latest"
ansible -m apt -a "name=httpd=2.2.29 , state=present"#安装指定版本的httpd
5、copy模块和fetch模块
copy模块的作用是将ansible执行主机的文件拷贝到远程节点上,fetch模块的作用是将远程节点上的文件拷贝到ansible执行主机上;
比较常用的模块参数:
src:源文件(目录)的路径,绝对路径,如果路径加“/”,则将目录下的文件copy,如果不加则将此目录copy
dest:目的文件(目录)路径,如果src是文件夹,这个就必须是文件夹了
backup:是否备份,默认no,可选参数“yes/no”
follow:文件夹的link也会copy过去
owner/group/mode:一些权限相关配置
示例:
ansible all -m copy -a "src=/tmp/tmpfile dest=/root/tmpfile.sh backup=yes owner=zhangsan group=zhangsan mode=0644"
Shell
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。