傻瓜式Ansible离线安装,适合任何系统

由于公司的生产环境是无法连接外网的,所以我们需要在有网的环境上将ansible所有的依赖都下载下来,在网上找了一晚上,基本都是很复杂的,而且还会受版本和系统的限制。

本教程真正意义上的离线安装,且操作傻瓜式,几行代码就完成安装。

在线安装

在离线安装前先简单看看在线安装。

yum -y install epel-release
yum install ansible

在线安装的网上一抓一大把,这里不做过多介绍。

离线安装

这里进入正题。由于生产环境是Centos 7.3,所以这里需要提前准备好一台相同系统的有网环境,理论适合任何系统。

安装的原理是:利用yum的yum-downloadonly插件将所有的依赖下载下来(类似Maven的打包),这样就可以打包到别的环境进行完全安装

1、下载依赖

注意:如果你之后想继续下其他的依赖,这里下完了不要安装,因为某些依赖是共用的,安装后就无法下载了

# --downloaddir为将依赖下载到指定目录
yum install -y  ansible  --downloadonly --downloaddir=/root/ansible

下载下来的所有依赖是这样的

2、打包并上传到目标环境

tar zcvf ansible.tar.gz ~/ansible

3.解压安装包并进入安装包

tar zxvf ansible.tar.gz && cd ansible

4.安装ansible

yum localinstall *.rpm

5.检测是否安装成功

ansible --version

简单使用

注意,所有操作都是在安装 ansible的机器上进行的!

将你需要管理的机器加到 /etc/ansible/hosts中,具体参考https://ansible-tran.readthedocs.io/en/latest/docs/intro_inventory.html,比如我的

[except1]
cm1[2:3]

[all]
cm1[1:3]

再看一下我的/etc/hosts文件

10.37.129.11 cm11
10.37.129.12 cm12
10.37.129.13 cm13

这样就很容易解释上面的意思了,[except]代表cm12和cm13两台,[all]代表三台,[all]可以理解为组名,[:]可以理解为区间

也可以直接加需要管理的主机,比如

[webservers]
alpha.example.org
beta.example.org
192.168.1.100
192.168.1.110

默认配置需要修改编辑 /etc/ansible/ansible.cfg ansible使用配置参考 Ansible官网

配置改好后,需要对所有机器进行SSH免密登录,具体操作自行百度。

全都设置好后,就可以来使用了。

ping所有机器

ansible all -m ping

本地文件复制到远程服务器

ansible all -m copy -a "src=/home/test/test.sh dest=/home/target/target.sh owner=root group=root mode=0755"

远程执行脚本

ansible all -m shell -a "/home/target/target.sh"
  • 3
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值