Ansible简单介绍及安装部署详解
ansible简单介绍
ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet、cfengine、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。
ansible是基于模块工作的,本身没有批量部署的能力。真正具有批量部署的是ansible所运行的模块,ansible只是提供一种框架,架构图如下:
- 连接插件connection plugins:负责和被监控端实现通信;
- host inventory:指定操作的主机,是一个配置文件里面定义监控的主机;
- 各种模块核心模块、command模块、自定义模块;
- 借助于插件完成记录日志邮件等功能;
- playbook:剧本执行多个任务时,非必需可以让节点一次性运行多个任务。
ansible特点
- 无终端只需在主控节点部署ansible环境,是基于ssh实现管理的
- 模块化管理工具,有大量常规运维操作模块,可实现日常绝大部分操作
- 支持API及自定义模块,可通过Python轻松扩展
- 过Playbooks来定制强大的配置、状态管理
1.安装ansible
本次安装基于CentOS7系统环境、Python2.7.5、root用户。
部署架构规划:
master | slave |
---|---|
ser1:10.220.5.111 | ser2:10.220.5.112 ser3:10.220.5.113 |
配置三台主机能够相互解析
#在三台主机的 /etc/hosts 文件中添加以下内容
10.220.5.111 ser1
10.220.5.112 ser2
10.220.5.113 ser3
下载yum源
[root@ser1 ~]# wget -O /etc/yum.repos.d/7.repo http://mirrors.aliyun.com/repo/Centos-7.repo
安装epel
[root@ser1 ~]# yum install epel-release -y
安装ansible
[root@ser1 ~]# yum install ansible -y
[root@ser1 ~]# ansible --version
ansible 2.7.2
# 查看相关文件
[root@ser1 ~]# rpm -qc ansible
/etc/ansible/ansible.cfg <<<配置文件
/etc/ansible/hosts <<<主机清单列表,即host inventory
需要注意的是安装ansible的主机需要有python2.7及以上版本python -V
可以查看当前python版本,如果低于2.7版本可能会安装失败,或者在后期使用中会有位置bug
2.配置master节点与其他主机的互信
由于ansible是基于ssh工作实现对其他节点的管理,so我们需要让anssible基于ssh与被管理节点通信。
[root@ser1 ~]# ssh-keygen -t rsa -P ""
[root@ser1 ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub 10.220.5.111
[root@ser1 ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub 10.220.5.112
[root@ser1 ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub 10.220.5.113
# 测试
[root@ser1 ~]# ssh ser3 ip addr
3. 添加被管理节点
将所有被管理的主机加入到/etc/ansible/hosts
中,否则无法管理
[root@ser1 ~]# cp /etc/ansible/hosts{,.bak}
[root@ser1 ~]# vim /etc/ansible/hosts
[webservers]
10.220.5.112
10.220.5.113
4.执行ping存活检测
[root@ser1 ~]# ansible all -m ping
10.220.5.112 | SUCCESS => {"changed": false, "ping": "pong"
}
10.220.5.113 | SUCCESS => {"changed": false, "ping": "pong"
}
到这里ansible就已经安装部署完成,但想要使用ansible进行后端节点的管理是需要基于ansible的众多模块来实现,下一篇博文详细讲解ansible常用的模块。
------做运维之前很矫情的小年轻-----
Ansible简单介绍及安装部署详解相关推荐
- Kylin快速入门系列(1) | Kylin的简单介绍及安装部署
大家好,我是不温卜火,是一名计算机学院大数据专业大二的学生,昵称来源于成语-不温不火,本意是希望自己性情温和.作为一名互联网行业的小白,博主写博客一方面是为了记录自己的学习过程,另一方面是总结自己 ...
- (03)_k8s之flannel三种模型安装部署详解
flannel三种模型安装部署详解 yht_1990关注[2020-10-04 12:13:47](javascript:
- kafka安装部署详解
kafka安装部署详解 1. zookeeper安装部署 1.1 zookeeper下载 1.2 zookeeper配置启动 1.3 zookeeper验证 2. kafka安装部署 2.1 kafk ...
- Postgresql -XL 10r.1.1安装部署详解(跳过N多坑)
Postgresql -XL 10r.1.1安装部署详解(跳过N多坑) 目前安装postgre10r1.1的文档较少,本人目前是在三台虚拟机上搭建的postgre xl 10r1.1集群,之后将pos ...
- Destoon源数据库配置文件在哪_数据库监控软件Lepus安装部署详解
Lepus安装部署 一.软件介绍 Lepus是一套开源的数据库监控平台,目前已经支持MySQL.Oracle.SQLServer.MongoDB.Redis等数据库的基本监控和告警(MySQL已经支持 ...
- gunicorn 安装部署详解
Gunicorn是一个unix上被广泛使用的高性能的Python WSGI UNIX HTTP Server. 和大多数的web框架兼容,并具有实现简单,轻量级,高性能等特点. gunicorn 安装 ...
- 用友NC57安装部署详解篇
环境描述: (1)操作系统(OS):Windows Server 2008 Enterprise 64bit (2)数据库:Oracle 11g 64bit (3)ERP :用友NC V5.7 一 ...
- lepus安装部署详解
lepus安装 一.lepus简介 二.部署xampp 三.安装Python基础模块 四.安装Lepus采集器 五.安装WEB管理台 六.添加MySQL被监控服务器 七.lepus的相关使用命令 一. ...
- 最新dnsmasq安装部署详解(centos6)
介绍Dnsmasq Dnsmasq是一个很实用的小工具,解决局域网的需求看来非常合适,特别是网关和防火墙上. 它同时也可以作为一个dns查询服务器,虽然不如bind等完善,但基本功能也够用了. 它可以 ...
最新文章
- php nsdata,iOS播放PCM,NSData流代码(Audio Queue Services)
- Window下mysql的安装
- 拥有至高无上的特权 使用system账户
- python函数的定义必须在程序的开头_Python之函数基础
- canvas学习绘制扇形
- 并发编程之Synchronized
- WAP自助建站 我编程之路的启蒙
- linux 浏览器 links,linux下的命令行浏览器links
- Android设置全局字体
- java操作xml一般都用什么_用Java如何处理XML数据
- linux下mysql允许远程连接
- PIC单片机开发环境搭建
- metadata文件_用Kubernetes部署Springboot或Nginx,也就一个文件的事
- Pygame实战:还在玩纸飞机?不—现在家里的小孩子都在玩儿飞机大冒险~
- 如何解决Worm.Win32.AutoRun.bqn(文件夹改exe病毒)
- 【Rust blog】Rust + Flutter 高性能的跨端尝试
- 【慕课网】前端零基础入门---步骤一:页面结构层HTML---03-HTML表单
- 精进之路-day01
- 树莓派改造成通用计算机,自制树莓派笔记本电脑,你也可以做到
- 亚航app航班价格抓取
热门文章
- 0119吧 iPhone 屏幕尺寸
- fps 每秒刷新的频率
- DevExpress ChartControl大数据加载时有哪些性能优化方法
- Silverlight DataGrid超出列表高度时自动滚屏
- DIV同时使用两个class
- (转)SQL操作全集
- C#(WinForm)的Show()和ShowDialog()方法介绍
- Win10 KB4541335 部分用户遭遇系统蓝屏/性能下降问题
- 超长整数相加 c语言类,二个超长正整数的相加
- php加载外部html,VUE页面加载外部HTML实例详解