####Ansible环境部署####

本文介绍了Ansible的基本概念和工作原理,并详细阐述了如何在管理主机上安装配置Ansible,建立免密连接,以及使用Ansible部署nginx服务,包括下发安装包、编译安装和配置负载均衡。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet、cfengine、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。
ansible是基于模块工作的,本身没有批量部署的能力。真正具有批量部署的是ansible所运行的模块,ansible只是提供一种框架。主要包括:
(1)、连接插件connection plugins:负责和被监控端实现通信;
(2)、host inventory:指定操作的主机,是一个配置文件里面定义监控的主机;
(3)、各种模块核心模块、command模块、自定义模块;
(4)、借助于插件完成记录日志邮件等功能;
(5)、playbook:剧本执行多个任务时,非必需可以让节点一次性运行多个任务。
在这里插入图片描述

master server1 172.25.46.1
node1 server2 172.25.46.2
node2 server3 172.25.46.3

一.安装ansible的要求:
1.对管理主机的要求
目前,只要机器上安装了 Python 2.6 或 Python 2.7 (windows系统不可以做控制主机),都可以运行Ansible.
本机自带python2.7版本
在这里插入图片描述
2.对托管节点的要求
通常我们使用 ssh 与托管节点通信,默认使用 sftp.如果 sftp 不可用,可在 ansible.cfg 配置文件中配置成 scp 的方式. 在托管节点上也需要安装 Python 2.4 或以上的版本.如果版本低于 Python 2.5 ,还需要额外安装一个模块: python-simplejson

3.安装ansible管理主机通过Yum安装RHEL或CentOS用户,需要 配置 EPEL:
[root@server1 ~]# yum install -y epel-release-latest-7.noarch.rpm
安装解决依赖性的包

[root@server1 ansible]# ls
ansible-2.7.8-1.el7.noarch.rpm                 python2-crypto-2.6.1-13.el7.x86_64.rpm    python-paramiko-2.1.1-0.9.el7.noarch.rpm
ansible-tower-setup-bundle-3.4.2-1.el7.tar.gz  python2-jmespath-0.9.0-1.el7.noarch.rpm   roles
libtomcrypt-1.17-25.el7.x86_64.rpm             python-httplib2-0.9.2-0.1.el7.noarch.rpm  sshpass-1.06-1.el7.x86_64.rpm
libtommath-0.42.0-5.el7.x86_64.rpm             python-keyczar-0.71c-2.el7.noarch.rpm
[root@server1 ansible]# yum install -y  *
[root@server1 ~]# yum install -y epel-release-6-8.noarch.rpm 

二.编辑(或创建)/etc/ansible/hosts 并在其中加入一个或多个远程系统.public SSH key必须在这些系统的authorized_keys中:

[root@server1 ~]# cd /etc/ansible/
[root@server1 ansible]# ls
ansible.cfg  hosts  roles
[root@server1 ansible]# ll
total 24
-rw-r--r-- 1 root root 20277 Feb 22 07:04 ansible.cfg  ##主配置文件
-rw-r--r-- 1 root root  1016 Feb 22 07:04 hosts   ##定义主机变量
drwxr-xr-x 2 root root     6 Feb 22 07:04 roles    ##存放角色的文件
[root@server1 ansible]# vim /etc/ansible/hosts 
## db01.intranet.mydomain.net
## db02.intranet.mydomain.net
## 10.25.1.56
## 10.25.1.57

# Here's another example of host ranges, this time there are no
# leading 0s:

## db-[99:101]-node.example.com
172.25.46.2
172.25.46.3

[root@server1 ansible]# vim /etc/ansible/ansible.cfg 
[accelerate]
#accelerate_port = 5099
accelerate_port =1000
#accelerate_timeout = 30
#acce
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值