Kylin Linux Advanced Server V10 (Sword)上离线安装Ansible
注:如果自己服务器镜像地址配置不对或者无法下载,可以自行访问网盘地址下载,里面包含ansible的所有依赖
下载地址:中国移动云盘
1. 确认系统环境
- 操作系统:Kylin V10基于EulerOS或CentOS/RHEL,包管理器可能是dnf(或yum别名)。
- Python版本:Ansible依赖Python 2.7或3.x,检查当前版本:
python3 --version
-
- 若无Python3,安装(见步骤3)。
- 无互联网:需从另一台联网机器下载依赖,传输至目标服务器。
2. 所需组件
Ansible依赖以下主要包:
- ansible:核心包。
- python3 和 python3-pip(若未安装)。
- 依赖库:python3-libselinux、python3-pyyaml、python3-jinja2 等。
3. 离线安装步骤
步骤1:从联网机器下载RPM包
在另一台联网的CentOS 8/RHEL 8 或类似系统上执行:
- 安装yumdownloader(需yum-utils):
yum install -y yum-utils
下载Ansible及其依赖(假设CentOS 8,Kylin V10兼容):
yumdownloader --resolve ansible
这将下载ansible及其所有依赖RPM(如python3-cryptography、python3-jinja2等)。
打包并传输:
tar -czf ansible_deps.tar.gz *.rpm
scp ansible_deps.tar.gz root@ecs-qwxpg50002:/root/
步骤2:解压并安装RPM
在 ecs-qwxpg50002 上:
- 解压:
tar -xzf /root/ansible_deps.tar.gz -C /root/
cd /root/
安装所有RPM:
rpm -ivh --force --nodeps *.rpm
-
- --force 忽略冲突,--nodeps 忽略依赖检查(Kylin可能有自定义包,需测试兼容性)。
步骤3:验证安装
- 检查Ansible版本:
ansible --version
-
- 预期输出如:ansible [core 2.16.0](版本可能因下载时间不同)。
- 若报错(如模块缺失),手动安装Python依赖:
- 下载 python3-pip 和 python3-setuptools 的RPM:
yumdownloader --resolve python3-pip python3-setuptools
安装:
rpm -ivh --force --nodeps python3-pip*.rpm python3-setuptools*.rpm
用pip安装Ansible(需离线wheel包):
- 从PyPI下载 ansible 的wheel文件(https://pypi.org/project/ansible/#files),传输并安装:
pip3 install ansible-2.16.0-py3-none-any.whl --no-index --find-links=/root/
4. 解决常见问题
- 依赖冲突:
- 若RPM安装失败,检查冲突包:
rpm -qpR ansible-*.rpm
-
- 手动下载缺失RPM(如libselinux-python3)并安装。
- Python版本不匹配:
- Kylin V10可能用自定义Python,确认兼容性。若Python 2.x,下载Ansible 2.9.x系列。
- 权限:确保 /usr/bin/ 和 /usr/lib/ 有写权限。
5. 配置Ansible
- 创建库存文件 /etc/ansible/hosts:
[local]
localhost ansible_connection=local
测试连接:
ansible all -m ping
6. 推荐方案
- 官方镜像:联系Kylin支持,获取V10的离线软件源或ISO,包含Ansible RPM。
- Docker替代:若支持,部署Ansible容器(需Docker离线安装),避免依赖系统包。
7. 注意事项
- 备份:安装前备份系统文件(如 /usr/lib/python3*)。
- 测试:在虚拟机上测试RPM兼容性。
- 日志:安装失败,检查 /var/log/yum.log 或 /var/log/messages。