《Ansible权威指南》一1.7 Ansible的安装部署

简介:

本节书摘来自华章出版社《Ansible权威指南》一书中的第一章,第1.7节,作者 李松涛 魏 巍 甘 捷 更多章节内容可以访问云栖社区“华章计算机”公众号查看。


1.7 Ansible的安装部署

了解完Ansible是什么、通信原理及发展史、Ansible发展历程及其应用场景后,接下来为大家介绍Ansible的安装部署。

Ansible的安装部署非常简单,其仅依赖于Python和SSH,而系统默认均已安装。除Windows外,RedHat、Debian、CentOS、OSX均可作为管理节点部署Ansible。Ansible被RedHat红帽官方收购后,其安装源被收录在EPEL中,如已安装EPEL可直接YUM或APT安装,通过pip和easy_install的Python第三方包管理器也可以便捷安装Ansible,下面我们详细介绍部署方式。

1.7.1 PIP方式

Ansible底层也是基于Python编写,所以可以通过PIP方式安装Ansible。

步骤1:安装python-pip及python-devel程序包。

 安装python-pip程序包及python-devel,

yum install python-pip python-devel –y

返回类似如下结果则表示安装成功:

    Installing  python-devel-2.7.5-34.el7.x86_6412

    Installing  python-pip-7.1.0-1.el7.noarch22

    Verifying   python-pip-7.1.0-1.el7.noarch12

    Verifying   python-devel-2.7.5-34.el7.x86_6422

 

Installed

    python-devel.x86_64 02.7.5-34.el7        python-pip.noarch 07.1.0-1.el7

 

Complete!

步骤2:安装Ansible服务。

 安装请前确保服务器的gcc、glibc开发环境均已安装,系统几乎所有的软件包编译环境均基于gcc,如不确认可先执行如下命令:

yum install gcc glibc-devel zlib-devel  rpm-build openssl-devel –y

 升级本地PIP至最新版本

pip install --upgrade pip

 安装Ansible服务

pip install ansible –upgrade

执行命令ansible --version,有类似如下返回结果则表示Ansible安装成功并可正常使用。

ansible 2.1.1.0

    config file = etcansibleansible.cfg

    configured module search path = Default wo overrides

如下其他验证安装是否成功的方式也一样,均可执行ansible––version验证,后面不一一列出。

1.7.2 YUM方式

YUM(Yellow dog Updater,Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无需烦琐地一次次下载、安装。YUM安装Ansible过程如下:

 需事先安装EPEl源后方可找到并安装Ansible

rpm -Uvh https dl.fedoraproject.orgpubepelepel-release-latest-6.noarch.rpm

 安装Ansible

yum install ansible –y

安装速度视网络情况而定,因为安装过程会安装非常多的依赖包,又因各系统环境的差异性,如返回类似如下结果则表示安装成功:

Installed

    ansible.noarch 02.1.1.0-1.el7

 

Dependency Installed

    PyYAML.x86_64 03.10-11.el7          libtomcrypt.x86_64 01.17-23.el7

    libtommath.x86_64 00.42.0-4.el7     python-babel.noarch 00.9.6-8.el7

    python-httplib2.noarch 00.7.7-3.el7 python-jinja2.noarch 02.7.2-2.el7

    python-keyczar.noarch 00.71c-2.el7  python-markupsafe.x86_64 00.11-10.el7

    python-pyasn1.noarch 00.1.6-2.el7   python2-crypto.x86_64 02.6.1-9.el7

    python2-ecdsa.noarch 00.13-4.el7    python2-paramiko.noarch 01.16.1-1.el7

    sshpass.x86_64 01.05-5.el7

 

Complete!

1.7.3 Apt-get方式

Apt-get全称是Advanced Package Tool,是一款适用于UNIX和Linux系统的应用程序管理器,适用于Ubuntu、Debian等deb包管理式的操作系统,主要用于自动地从互联网的软件仓库中搜索、安装、升级、卸载软件或操作系统。

 添加Ansible源

apt-add-repository -y ppaansibleansible

 升级库文件

apt-get update

 安装Ansible

apt-get install -y ansible

1.7.4 源码安装方式

源码安装本身就是一道很高的门槛,作为刚接触Linux的新手不建议使用该方式。

在什么情况下我们需要从源代码安装软件呢?其实源码安装是相对于二进制安装而言的,所谓的二进制安装即前言讲到的,PIP、YUM、Apt-get都是二进制的安装方式,一般当新软件推出了新的版本,而所用的发行版并没有及时跟进,这时候,想要“尝鲜”的话,就非得靠自己而不可使用源码编译安装;另一种情形是,不管是软件的开发者还是现用的系统都没有提供可直接使用的二进制包,而自己又非要使用该软件,那么也需源码安装才行。当然,还有其他的情形。总而言之,学会源码安装软件方式是一项非常重要的技能,但又因其编译环境准备起来复杂不堪,同时安装过程又需人工逐一解决安装过程中可能遇到的各项应用层依赖和系统库依赖,所以门槛较高,故不建议初学者使用该方式。

 不建议安装Beta版

 安装Git客户端

yum install git –y

整个安装过程无报错,有类似如下返回结果则表示安装成功。

Installed

    git.x86_64 01.8.3.1-5.el7

 

Dependency Installed

    libgnome-keyring.x86_64 03.8.0-3.el7 perl-Error.noarch 10.17020-2.el7

    perl-Git.noarch 01.8.3.1-5.el7       perl-TermReadKey.x86_64 02.30-20.el7

 

Complete!

安装Ansible软件包。

 使用Git将拉取指定的Ansible版本至本地当前目录

git clone git github.comansibleansible.git –recursive

 切换至程序包目录

cd .ansible

 执行env-setup脚本,安装Ansible软件包

source .hackingenv-setup

1.7.5 验证安装结果

如上列举了互联网主流系统的Ansible安装方式,如整个过程均无报错,则执行如下命令应有类似结果返回:

ansible --version

ansible 1.9.6

如上述命令能正常执行,表示Ansible安装成功,并可正常使用。通常情况下,Ansible的安装简单顺利,但确实会有安装报错的情况发生,多数情况是由本地复杂的系统环境导致的。下面我们为大家介绍Python多环境管理,来解决该类问题。

相关文章
|
5月前
|
Kubernetes Shell 网络安全
ansible的安装和简单的块使用
Ansible是一种自动化工具,用于配置管理、应用程序部署和协调云部署。它是一个开源工具,使用Python编写,通过SSH协议与远程主机通信。
130 2
ansible的安装和简单的块使用
|
Linux 开发工具
centos7脚本离线化安装CDH6.3版本(ansible闪亮登场~~~)(二)
centos7脚本离线化安装CDH6.3版本(ansible闪亮登场~~~)
203 0
centos7脚本离线化安装CDH6.3版本(ansible闪亮登场~~~)(二)
|
缓存 Linux
yum安装ansible报错如何解决
本篇内容记录了yum安装ansible报错的解决方案。
1037 0
yum安装ansible报错如何解决
|
3天前
|
运维 Linux Shell
Ansible的介绍与安装
**自动化与Linux系统管理**\n\n学习自动化运维能减少手动任务的错误和遗漏,提高效率。Ansible是一款Python开发的自动化工具,支持多平台,实现批量配置、部署和命令执行。它是无代理的,通过SSH连接管理主机,无需在远程主机安装额外软件。\n\nAnsible具有跨平台、人类可读的自动化语言、描述应用状态、易版本控制、动态清单管理和与其他系统集成等优点。\n\nAnsible的工作流程包括ad-hoc和playbook模式。安装涉及配置YUM源、EPEL源,然后通过yum或dnf安装软件包。在无网络环境下,可以下载rpm包离线安装。
|
3天前
|
存储 安全 Shell
Ansible安装基本原理及操作(初识)
Ansible安装基本原理及操作(初识)
|
16天前
|
存储 运维 Shell
Ansible自动化运维工具安装和基本使用
Ansible 是一款无代理的IT自动化工具,通过SSH连接目标主机执行配置管理、应用部署和云端管理任务。它使用YAML编写的Playbook定义任务,核心组件包括Playbook、模块、主机清单、变量等。Ansible的优势在于易用、功能强大、无须在目标主机安装额外软件,并且开源。安装过程涉及配置网络源、yum安装和SSH密钥设置。通过定义主机清单和使用模块进行通信测试,确保连接成功。
Ansible自动化运维工具安装和基本使用
|
9月前
|
缓存
yum install ansible无法直接安装Ansible的解决方法
准备三台机器: server.example.com node1.example.com node2.example.com 配置IP,主机名,/etc/hosts
340 0
|
5月前
|
Linux Python
百度搜索:蓝易云【centos使用pip安装ansible教程。】
以上是在CentOS中使用pip安装Ansible的简要步骤。请注意,这是一个基本指南,实际操作中可能会有特定的配置和依赖项。建议参考Ansible官方文档或其他详细教程以获得更全面和准确的信息。
51 0
|
9月前
|
运维 Ubuntu 应用服务中间件
【运维知识进阶篇】Ansible自动化运维-Ansible安装与主机列表
【运维知识进阶篇】Ansible自动化运维-Ansible安装与主机列表
121 0
|
12月前
|
Kubernetes 负载均衡 Docker
ansible学习之旅(ansible依托kubeadm安装一个简单的k8s集群)
ansible学习之旅(ansible依托kubeadm安装一个简单的k8s集群)
120 0