#!/bin/bash
yum -y install epel-release # 安装epel源,从epel源安装高版本 ansible
yum list | grep ansible # 查看ansible的可用包
yum -y install ansible # 安装ansible
ansible --version # 查看 ansible版本
echo "
# 主配置文件:/etc/ansible/ansible.cfg
# 主机清单:/etc/ansible/hosts
# 三个主程序:ansible absible-doc ansible-playbook
"
echo "
[ansible]
43.255.28.59
43.255.30.187
[eisc]
47.95.216.170
43.255.28.59
" >> /etc/ansible/hosts # 添加被管控主机
ansible all --list # 列出所有主机列表
echo "# 生成密匙对:请一直回车"
ssh-keygen -t rsa # 生成密匙对:一直回车;其中id_rsa 是私钥,id_rsa.pub是公钥
echo "使用ssh秘钥分发至定义好的主机,实现免密登录;请先输入对方主机密码:"
ssh-copy-id -i /root/.ssh/id_rsa.pub root@43.255.28.59
ssh-copy-id -i /root/.ssh/id_rsa.pub root@43.255.30.187
# ansible用法: ansible [-m module_name] [-a args]
# :可为all,表示主机清单定义的所有主机,也可为单个ip地址,也可以使用主机清单中定义的主机组名,也可以指定多台主机
# -m:指定模块名称,常用模块有,copy,command(默认模块),cron,user,group,script,shell,setup(查看远程主机信息)
ansible-doc -l # 列出ansible所有模块
ansible-doc -s copy # 查看指定模块:copy模块
ansible eisc -m shell -a 'date;ls' # 执行eisc工作组下的所有主机命令 date时间
ansible all -m group -a'name=mysql gid=306 system=yes'
# 创建组
ansible all -m user -a 'name=mysql uid=306 system=yes group=mysql'
# 创建用户到组
ansible web -m user -a 'state=absent name=user1'
# 移除用户或用户组
ansible 172.18.224.101 -m fetch -a 'src=/1.txt dest=/'
#远程拉取文件: src只能为文件,dest只能为目录
wget https://github.com/fboender/ansible-cmdb/releases/download/1.30/ansible-cmdb-1.30.tar.gz
# 下载
tar -xvf ansible-cmdb-1.30.tar.gz -C /usr/share/ansible/plugins
cd /usr/share/ansible/plugins/ansible-cmdb-1.30/ && make install
ansible -m setup --tree out/ all
ansible-cmdb out/ > overview.html
# 访问web
Powered by ddoss.cn 12.0
©2015 - 2024 ddoss
渝公网安备50011302222260号 渝ICP备2024035333号 【实验平台安全承诺书】 小绿叶技术社区,优化网络中,点击查看配置信息
您的IP:192.168.122.82,2024-10-10 20:01:20,Processed in 0.02768 second(s).