Ansible原理和安装
Ansible
Ansible简介
- Ansible是一个IT自动化工具。它能配置系统、部署软件、编排更复杂的IT任务,如连续部署或零停机滚动更新
- Ansible使用python编写,市面上已经有很多可供选择的配置管理解决方案(例如Saltstack,Puppet,Chef等),但他们各有优劣,而Ansible的特点在于他的简洁。让Ansible在主流的配置管理系统种与众不同的一点是:它并不需要你在被管节点上安装代理软件
Ansible的特性
- Agentless(无代理模式):不需要在被管节点上安装代理软件,只需要有sshd服务即可
- Serverless(无服务模式):在服务端不需要启动任何的服务,只需要执行命令即可
- Modules in any language:基于模块工作,可以使用任意语言去开发Ansible模块
- YAML:使用yaml语言定制playbook
- SSH by default:默认使用ssh控制各个节点
- Strong multi-tier solution:可实现多级控制
Ansible的基本组件
- 核心:ansible
- 核心模块(Core Modules):这些都是ansible自带的模块
- 扩展模块(Custom Modules):如果核心模块不足以完成某种功能,可以添加扩展模块
- 插件:完成模块功能的补充
- 剧本(playbook):把需要完成的任务定义在剧本中
- 连接插件:ansible基于连接插件连接到各个主机上,虽然他是默认使用ssh,但是它还支持其他的方法
- 主机清单:ansible在管理多台主机时,可以只针对其中一部分来操作
Ansible安装(rhel8/rhel9)
1. rhel8安装
Ansible的安装方式有多种,常用的就是使用yum安装或者,使用yum安装需要配置epel源
1.1 配置epel源
# 如果不配置epel源直接安装的话是会报错的,因为没有这个软件包
[root@ansible ~]# yum install ansible -y
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
No package ansible available.
Error: Nothing to do
# 配置epel
[root@ansible ~]# yum install epel-release -y
……中间输出省略
Complete!
1.2 安装ansible
[root@ansible ~]# yum install ansible -y
1.3 验证
[root@ansible ~]# ansible --version
ansible 2.9.27
config file = /etc/ansible/ansible.cfg
configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python2.7/site-packages/ansible
executable location = /usr/bin/ansible
python version = 2.7.5 (default, Jun 28 2022, 15:30:04) [GCC 4.8.5 20150623 (Red Hat 4.8.5-44)]
看到有输出就是安装完成了
Ansible原理和安装的更多相关文章
- ansible 002 连接被控端 inventory ansible.cfg ansible-adhoc ansible原理
ssh用普通用户连接被控端 配置主机清单 (/etc/hosts域名解析为前提) [root@workstation ansible]# cat hosts servera serverb [root ...
- 自动化运维工具之 Ansible 介绍及安装使用
一.初识Ansible 介绍: Absible 使用 模块(Modules)来定义配置任务.模块可以用标准脚本语言(Python,Bash,Ruby,等等)编写,这是一个很好的做法,使每个模块幂等.A ...
- DNS服务器:主要介绍DNS的服务原理以及安装及其主从配置
DNS服务器:主要介绍DNS的服务原理以及安装及其主从配置 一.DNS简介 1.DNS DNS是域名系统(Domain Name System)的简称,它是一个将域名和IP相互映射的分布式数据库 ...
- ansible指路篇-安装及基本命令使用
ansible指路篇-安装及基本命令使用 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.什么是ansible ansible是新出现的自动化运维工具,基于Python开发,集合 ...
- ansible自动化工具安装和简单使用
ansible自动化工具安装和简单使用 1.安装 ansible依赖于Python 2.6或更高的版本.paramiko.PyYAML及Jinja2. 2.1 编译安装 解决依赖关系 # yum -y ...
- ansible示例,离线安装etcd
一.基础介绍 ========================================================================================== 1. ...
- mysql备份工具innobackupex,xtrabackup-2.1的原理和安装
mysql备份工具innobackupex,xtrabackup-2.1的原理和安装 http://bbs.2cto.com/read.php?tid=310496 一.Xtrabackup介绍 1. ...
- Ansible介绍及安装部署
本节内容: 运维工具 Ansible特性 Ansible架构图和核心组件 安装Ansible 演示使用示例 一.运维工具 作为一个Linux运维人员,需要了解大量的运维工具,并熟知这些工具的差异,能够 ...
- ansible介绍和安装
ansible是由 Python 编写的强大的配置管理解决方案,ansible 的特点就在于它的简洁与高效率 ansible与其他的配置管理工具不同点在于:不需要你在想要配置的每个节点上安装自己的组件 ...
- ansible入门一(Ansible介绍及安装部署)
本节内容: 运维工具 Ansible特性 Ansible架构图和核心组件 安装Ansible 演示使用示例 一.运维工具 作为一个Linux运维人员,需要了解大量的运维工具,并熟知这些工具的差异,能够 ...
随机推荐
- [转帖]通过拓扑 label 进行副本调度
https://docs.pingcap.com/zh/tidb/stable/schedule-replicas-by-topology-labels#%E5%9F%BA%E4%BA%8E%E6%8 ...
- ebpf的简单学习
ebpf的简单学习-万事开头难 前言 bpf 值得是巴克利包过滤器 他的核心思想是在内核态增加一个可编程的虚拟机. 可以在用户态定义很多规则, 然后直接在内核态进行过滤和使用. 他的效率极高. 因为避 ...
- jcmd的简单总结
jcmd的简单总结 背景 自从2019年公司转向java技术路线. 一直断断续续的在学习java相关的技术内容. 但是总感觉学的不是很深入. 这周比较累.也不想在学新东西了. 所以想着再总结一下jcm ...
- vue动画进入-完整的动画/有进入离开
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 【一个构想】pull方式获取expoter上的数据,如何更加精简?
作者:张富春(ahfuzhang),转载时请注明作者和引用链接,谢谢! cnblogs博客 zhihu 公众号:一本正经的瞎扯 背景 已知:在prometheus中,每个业务节点通过prometheu ...
- docker 发布web项目到linux
一.准备工作 1.连接到Liunx的工具 MobaXterm 填好Ip 直接点ok就行 输入用户名和密码进入系统 2.已发布的.netcore网站或微服务 在要发布的项目上右键---->添加-- ...
- 开源项目03---YiShaAdmin
项目名称:YiShaAdmin 项目所用技术栈: web mvc bootstrap3 jquery aspnetcore等 项目简介: YiShaAdmin 基于.NET Core Web开发,借鉴 ...
- 如何在IntelliJ IDEA中运行Java/Scala/Spark程序
本文将分两部分来介绍如何在IntelliJ IDEA中运行Java/Scala/Spark程序: 基本概念介绍 在IntelliJ IDEA中创建和运行java/scala/spark程序 基本概念介 ...
- python读取json格式文件大量数据,以及python字典和列表嵌套用法详解
1.Python读取JSON报错:JSONDecodeError:Extra data:line 2 column 1 错误原因: JSON数据中数据存在多行,在读取数据时,不能够单单用open(), ...
- Java多线程-ThreadLocal(六)
为了提高CPU的利用率,工程师们创造了多线程.但是线程们说:要有光!(为了减少线程创建(T1启动)和销毁(T3切换)的时间),于是工程师们又接着创造了线程池ThreadPool.就这样就可以了吗?-- ...