Ansible
文章平均质量分 91
ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。
一杯甜酒
金融科技领域技术 & 云基础设施 & 云原生微服务 & 云原生时代标准交付 & PAAS 技术研发 & Kubernetes & 项目与技术管理
展开
-
Ansible 学习总结(11)—— task 并行执行之 forks 与 serial 参数详解
Ansible执行task的时候,会依据配置文件中指定的forks参数、inventory中指定的主机以及主机组、以及选择的目标主机和定义的task数决定执行的方式。比如inventory主机清单文件中,记录了20台服务器,配置文件中的forks参数指定为5,同时有2个task需要执行,此时就表示每次最多允许对5台服务器进行操作,如果剩下的服务器数不足5台,则对剩下的所有服务器执行操作。...原创 2022-08-01 22:33:20 · 2631 阅读 · 0 评论 -
Ansible 学习总结(10)—— 自动化部署工具如何选?Saltstack Or Ansible
Saltstack 和 Ansible 最初都是作为执行引擎构建的。也就是说,如果需要,它们允许在一个或多个远程系统上并行执行命令。 Salt 围绕一个Salt Master 和多个启动时连接到该主节点的 Salt Minions 构建。通常,命令是在主命令行上发出的。然后,Master 将那些命令分派给 Minions。最初,Minions 发起一个由加密密钥交换组成的握手,之后它们具有持久的加密 TCP 连接。因此可以快速到达 Minions。还缓存各种数据以加快执行速度。支持 ZeroMQ 库进行通信原创 2022-07-11 15:11:02 · 887 阅读 · 0 评论 -
Ansible 学习总结(9)—— Ansible 循环、条件判断、触发器、处理失败等任务控制使用总结
使用 loop 赋值列表的格式:在 playbook 中使用建立用户成功 定义变量编写 yaml 文件删除用户成功示例:为 server3 主机建立用户,并赋予密码(此处的密码必须是加密过后的,使用 的 将密码加密)。测试连接: 满足其中一个条件 示例:检测文件是否存在(:当文件不存在时,系统会判定失败,没有返回值,加此参数可以忽略错误)。在 server4 主机上创建 ,在 server2 和 server3 上不创建,执行 yaml 文件 示例:原创 2022-07-07 12:05:05 · 1107 阅读 · 0 评论 -
Ansible 学习总结(8)—— Ansible 控制提权相关知识总结
对于初学 ansible 的小伙伴提权配置大都是通过配置 ansible.cfg 的方式来配置提权,通过配置的文件的方式配置的提权,对所有执行的剧本角色有提权,这样的好处是,简单方便,但是有一定的风险,任何命令都通用过 root 来执行,即任何进程都是具有系统的最高权限,对于黑客来讲,最想得到的即 root 权限,如果进程被植入了木马病毒之类,控制了进程即拥有 root 权限。所以任何命令通过 root 来执行是一件很危险的事。所以从安全角度考虑,要遵循最小权限原则,即要求系统只授予主体必要的权限,而不要过原创 2022-06-21 10:26:48 · 1485 阅读 · 0 评论 -
Ansible 学习总结(7)—— Ansible 状态管理相关知识总结
简介就像所有服务器批量管理工具(puppet有DSL,salt有state)一样,ansible也有自己的状态管理组件,叫做playbook。所有这些类似的概念的东西都是让你用一种更简单的语言(而不是用脚本)来描述你的服务应该是什么样子的,然后这些工具根据你的描述将服务器变成你希望的样子。有了这么一层抽象后,服务部署和配置就变得更加的跨平台了,也提高了可复用性。但请注意,playbook不是万能的,因为playbook底层是在用模块来完成任务,因为模块有限,所以很多时候还是需要写shell脚本(ansi原创 2022-06-21 10:06:21 · 1305 阅读 · 0 评论 -
Ansible 学习总结(6)—— Ansible 19个常用模块使用示例
一、模块列表1、setup2、ping3、file4、copy5、command6、shell7、script8、cron9、yum10、service11、group12、user13、stat14、mount15、fetch16、synchronize17、get_url18、hostname19、wait_for二、模块示例1、setup (搜集系统信息)# 通过命令获取所有的系统信息,搜集主机的所有系统信息原创 2022-05-04 04:00:00 · 3426 阅读 · 0 评论 -
Ansible 学习总结(5)—— Ansible 变量详解
Ansible 和其他编辑语言一样,可以通过变量来存储值,并在 Ansible 项目的所有文件中使用这些值变量的命名规则 必须以字母开头; 只能包含字母,数字和下划线; 变量范围Global:全局变量,在命令行中,通过-e参数传递;Play:在 Playbook 中的 play 里面 通过 vars 或 vars_files 关键字定义的变量Host:由清单中,主机或主机组中定义的变量全局变量编写 playbook,在该 playbook 中,我们为..原创 2022-04-29 04:30:00 · 2386 阅读 · 0 评论 -
Ansible 学习总结(4)—— Ansible Playbook 中的关键字总结
playany_errors_fatal:强制任何主机上的任何未处理任务错误传播到所有主机并结束播放。become:布尔值,用于控制是否在任务执行时适用权限提升。become_flags:当变为 True 的时候,要传递给权限提升程序的标志。become_method:适用那种权限升级方法(例如 sudo 或 su)become_user:check_mode:布尔值,控制任务是否以 check 的模式执行collectionsconnectiondebugger:调试器,根据任务结果的状态启用调试任原创 2022-04-28 03:45:00 · 2751 阅读 · 0 评论 -
Ansible 学习总结(3)—— Ansible 常用模块与 playbook 实例讲解
一、Ansible安装 下载安装并解压python 3.7 包安装wgetyum -y install wget 下载 python 文件wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz (离线安装需提前准备压缩包) 解压文件tar zxvf Python-3.7.0.tgz 切换目录cd Python-3.7.0编译并安装编译./configure --prefix=/usr/local...原创 2022-04-27 03:00:00 · 4271 阅读 · 0 评论 -
Ansible 学习总结(2)—— Ansible playbook 入门详解
一、Ansible playbook 简单概述playbook 是 ansible 用于配置,部署,和管理被控节点的剧本。通过 playbook 的详细描述,执行其中的一系列 tasks ,可以让远端主机达到预期的状态。playbook 就像 Ansible 控制器给被控节点列出的的一系列 to-do-list ,而被控节点必须要完成。也可以这么理解,playbook 字面意思,即剧本,现实中由演员按照剧本表演,在 Ansible 中,这次由计算机进行表演,由计算机安装,部署应用,提供对外服务,以及组织原创 2021-12-23 15:07:00 · 2020 阅读 · 0 评论 -
Ansible 学习总结(1)—— Ansible 入门详解
一、ansible 简介1、ansible是什么ansible 是新出现的自动化运维工具,基于 Python 开发,集合了众多运维工具(puppet、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。ansible 是基于 paramiko 开发的,并且基于模块化工作,本身没有批量部署的能力。真正具有批量部署的是 ansible 所运行的模块,ansible 只是提供一种框架。ansible 不需要在远程主机上安装 client/agents,因为它们.转载 2021-12-23 11:31:42 · 2686 阅读 · 0 评论