C/C++教程

centos7 实现 ansbile安装和基础使用

本文主要是介绍centos7 实现 ansbile安装和基础使用,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

centos7 实现 ansbile安装和基础使用

1.添加源并安装ansible

yum install epel-release -y
yum install ansible -y

2.所有服务器配置免密
我的服务器密码都一样的,所以我采用expect实现免密操作。
制作密钥:

ssh-keygen

3.expect脚本内容

#cat expect.sh
#!/bin/bash
IP_list=(
192.168.1.105
192.168.1.101
192.168.1.95
192.168.1.32
192.168.1.46
192.168.1.37
192.168.1.11
192.168.1.152
)

Password=sadmin123

TEST_expect(){
    expect << EOF
    spawn ssh-copy-id root@${i}  -o "StrictHostKeyChecking no"
    expect "password:"          {send "${Password}\r"}
    expect "#"
EOF
}
for i in ${IP_list[@]}
do
   TEST_expect
done

在这里插入图片描述
4.添加ansible客户机分组

vim /etc/ansible/hosts
[es]
192.168.1.101
192.168.1.32
192.168.1.46
192.168.1.37
192.168.1.11

[other]
192.168.1.105
192.168.1.95
192.168.1.78
192.168.1.152

[all]
192.168.1.101
192.168.1.32
192.168.1.46
192.168.1.37
192.168.1.11
192.168.1.105
192.168.1.95
192.168.1.78
192.168.1.152

5.ansible模块使用
ping模块:

ansible all -m ping

在这里插入图片描述
shell模块:

ansible all -m shell -a "yum install vim -y"

在这里插入图片描述
command模块:

ansible all -m command -a "hostname"

copy模块:

#src源,dest目标路径
ansible all -m copy -a "src=./anaconda-ks.cfg  dest=/data"
#backup默认数据复制到远程主机,会覆盖原有文件(yes 将源文件进行备份)
ansible all -m copy -a "src=./anaconda-ks.cfg  dest=/data backup=yes" 
#权限
ansible all -m copy -a "src=./anaconda-ks.cfg  dest=/data owner=www group=www mode=0644"

还有很多模块,自行搜索吧?

这篇关于centos7 实现 ansbile安装和基础使用的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!