一、在线安装ansibleAnsible安装的几种方法【测试成功】
依赖包准备
# 文档中脚本默认均以root用户执行
# 安装 epel 源
yum install epel-release -y
# 安装依赖工具
yum install git python python-pip -y
ansible安装,更改国内镜像
# 安装ansible (国内如果安装太慢可以直接用pip阿里云加速)
#pip install pip --upgrade
#pip install ansiblepip install pip --upgrade -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
pip install --no-cache-dir ansible -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
# 配置ansible ssh密钥登陆vi
ssh-keygen -t rsa -b 2048 回车 回车 回车
ssh-copy-id root@$IP
##$IP为需要控制机器的ip地址,按照提示输入yes 和root密码

查找ansible安装的位置
rpm -ql ansible
/etc/ansible
/etc/ansible/ansible.cfg
/etc/ansible/hosts
/etc/ansible/roles
/usr/bin/ansible
/usr/bin/ansible-2
/usr/bin/ansible-2.7
/usr/bin/ansible-config
/usr/bin/ansible-connection
设置需控制的机器
sudo vim /etc/ansible/hosts
#输入
10.200.200.3 ansible_ssh_user=root
[webservers]
10.200.200.3
10.200.200.31
10.200.200.32
ansible的架构:连接其他主机默认使用ssh协议,可以参考上篇文章:https://zhuanlan.zhihu.com/p/594668737
#主控制节点执行
ssh-keygen -t rsa
#分发到被控制节点
ssh-copy-id root@node3
ssh-copy-id root@node2
ssh-copy-id root@node1
验证联通性
ansible all -m ping
二、离线安装ansible
在企业环境下我们通常需要离线安装文件,在联网情况下一个yum命令即可完成安装,但是离线情况下安装确很复杂,为了解决该问题,我们可以选择本地yum源的解决方案。在使用本地yum源时需要收集相关依赖文件,本文介绍如何收集对应软件的依赖文件。
使用yum-utils下载依赖包
使用createrepo创建本地库
下载离线安装包
准备一台联网电脑,安装与目标电脑使用相同镜像的os服务器,使用yumdownloader工具下载安装包及其相关依赖包
# 使用root执行如下命令
cd ~
# 安装工具yum-utils
yum install yum-utils -y
yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm -y
# 创建目标文件夹,下载依赖包到目标文件夹
mkdir -p /root/mypackages
yumdownloader --resolve --destdir /root/mypackages/ ansible
yumdownloader --resolve --destdir /root/mypackages/ createrepo
tar -czvf ansible.tar.gz ./mypackages
下载包,并上传上一个步骤生成包到内网需要安装该软件的目标机上
mkdir -p /data/
tar -xzvf ansible.tar.gz -C /data/
# 安装createrepo
cd /data/mypackages
# rpm -ivh deltarpm-3.6-3.el7.x86_64.rpm
rpm -ivh python-deltarpm-3.6-3.el7.x86_64.rpm
rpm -ivh createrepo-0.9.9-28.el7.noarch.rpm
# 制作离线源,成功执行后能在/data/ansible_packages看到新增了一个repodata目录:
createrepo /data/mypackages
# 新增yum文件/etc/yum.repos.d/ansible.repo ,如下注释2行是删除掉原有源
# mkdir /root/repo_bak
# mv /etc/yum.repos.d/*.repo /root/repo_bak
cat /etc/yum.repos.d/ansible.repo
[ansible]
name=ansible
baseurl=file:///data/mypackages
gpgcheck=0
enabled=1
EOF
测试安装
# 清理缓存更新
yum clean all
yum makecache
# 更新版本
yum repolist
yum list|grep ansible
# 安装ansible
yum install ansible -y
# 验证ansible是否安装成功
ansible --version
版权声明:本文内容来自知乎:否极泰来,遵循CC 4.0 BY-SA版权协议上原文接及本声明。
本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行可。
原文链接:https://zhuanlan.zhihu.com/p/595804575?utm_id=0
如有涉及到侵权,请联系,将立即予以删除处理。
在此特别鸣谢原作者的创作。
此篇文章的所有版权归原作者所有,与本公众号无关,商业转载建议请联系原作者,非商业转载请注明出处。