Ansible - playbook - 概要
- 概述
- 简单描述 ansible playbook
1. playbook
概述
- ansible 的 "脚本"
场景
- ansible
单条命令, 执行一个操作
问题
- 如果执行多个操作, 要怎么办
- 如果需要逻辑, 和其他组合, 要怎么办
解决
- ansible-playbook
- ansible
一个简单的 playbook
- playbook01.yml
---
- hosts: servers
tasks:
- name: ping test
ping:
- 解释
格式
- 这个文本, 使用的是 yml 格式
- yml 格式本身不难, 但是我目前也不太熟练, 暂时就不讲解
- 百度很多, 一搜就出来了
- yml 格式本身不难, 但是我目前也不太熟练, 暂时就不讲解
- 这个文本, 使用的是 yml 格式
---
- 标志开头
- 本身没有实际意义
- 如果遇到多个 ansible 脚本, 则可以标记开头, 做分割
- 标志开头
hosts: servers
hosts
- 必填字段
- 目标主机
servers
- 准备
- 在 inventory 文件里有描述
- 或者指定自己的 inventory 文件
- 准备
tasks
- 任务列表
- 必填字段
- 下面以 数组 的形式包含任务
- 任务列表
task: name
- 任务名称
- 非必填字段
- 目的就是注释, 在执行的时候, 会显示
- 任务名称
task: ping
- 模块名称
- ping
- 没有参数, 后面就为空
- 模块名称
执行
命令
> ansible-playbook -i hosts playbook01.yml
结果
PLAY [servers] ********************************************************************************************************************** TASK [Gathering Facts] **************************************************************************************************************
ok: [demo] TASK [ping test] ********************************************************************************************************************
ok: [demo] PLAY RECAP **************************************************************************************************************************
demo : ok=2 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
后续
了解 playbook 的多个属性
尝试 playbook 的其他特性
- 操作
- 模块化等
- 结果的返回
了解 其他模块
- 命令
- playbook
关于 Gathering Facts
- 结果里的一项
目前不知道是干啥的
大概是收集远端机器的 系统信息, 并放到变量里
- 以后可以用
默认是打开
可以关闭
# 在 yml 里添加这个选项即可
gather_facts: false
- 结果里的一项
登录用户
- 默认是 root
- 有字段可以设置
# 可以改成别的用户
remote_user: root
ps
ref
- learn ansible
- Intro to Playbooks
疑问
- yaml 格式
- playbook 感觉东西很多
- 慢慢来吧
Ansible - playbook - 概要的更多相关文章
- Ansible playbook API 开发 调用测试
Ansible是Agentless的轻量级批量配置管理工具,由于出现的比较晚(13年)基于Ansible进行开发的相关文档较少,因此,这里通过一些小的实验,结合现有资料以及源码,探索一下Ansible ...
- ansible playbook实践(四)-如何调试写好的playbook文件
有时,我们写了一个长长,功能很强悍的yaml文件,但是,我们有可能会担心,写的yaml文件是否正确,是否有漏洞危机,毕竟是要修改线上的机器,那么,有可能我们可以从以下几个检查维度来进行,确保在大规模应 ...
- ansible playbook批量改ssh配置文件,远程用户Permission denied
最近手里的数百台服务器需要改/etc/ssh/sshd_config的参数,禁止root直接登陆,也就是说 [root@t0 ~]# cat /etc/ssh/sshd_config | grep R ...
- ansible笔记(11):初识ansible playbook(二)
ansible笔记():初识ansible playbook(二) 有前文作为基础,如下示例是非常容易理解的: --- - hosts: test211 remote_user: root tasks ...
- ansible笔记(10):初识ansible playbook
ansible笔记():初识ansible playbook 假设,我们想要在test70主机上安装nginx并启动,我们可以在ansible主机中执行如下3条命令 ansible test70 -m ...
- Ansible playbook 批量修改服务器密码 先普通后root用户
fsckzy Ansible playbook 批量修改服务器密码 客户的需求:修改所有服务器密码,密码规则为Rfv5%+主机名后3位 背景:服务器有CentOS6.7,SuSE9.10.11,r ...
- 写Ansible playbook添加zabbix被监控的对象
本主题达到的效果是能通过编写Ansible Playbook,创建zabbix主机组,把被监控的对象加入到zabbix监控系统中,同时链接到对象的模板. 1.准备工作 在zabbix服务器上面,我们需 ...
- Ansible playbook基础组件介绍
本节内容: ansible playbook介绍 ansible playbook基础组件 playbook中使用变量 一.ansible playbook介绍 playbook是由一个或多个“pla ...
- ansible playbook基本操作
一.ansible playbook简单使用 相当于是把模块写入到配置文件里面 vim /etc/ansible/test.yml //写入如下内容: --- - hosts: 127.0.0.1 r ...
随机推荐
- 将自定义工程加入到python根目录下
1. 在D:\Program Files\Python\Lib\site-packages 添加.pth文件,文件名为模块名称(即auto_XXX),文件内容为模块所在目录.(python添加自定义的 ...
- print不是函数
对文章阅读有感!!! 文章地址:http://www.laruence.com/2019/03/01/4904.html print是一个语法结构(language constructs), 他并不是 ...
- Vim入门——Windows下安装
下载页面:https://www.vim.org/download.php Windows选用的是MS-Windows: 下图为展示: 因为最近被墙,镜像貌似没中国内陆地区,因此,选择使用GitHub ...
- 找不到getter/setter——没有安装lombok插件
项目pull后的问题: import lombok.Getter; import lombok.Setter; @Setter @Getter public class ConcreteEntity ...
- 巨杉TechDay回顾 | WARNING!您参加的数据库沙龙热度已爆表……
自从2008年“大数据”这一概念被首次提出以来,在过去这10年中,几乎各行各业都或多或少受到了这一概念的影响.与此同时,在AI.云计算.物联网.区块链等新兴技术快速发展的今天,数据库己经成为了决定所有 ...
- jQuery捕获
获得内容 - text().html() 以及 val() 三个简单实用的用于 DOM 操作的 jQuery 方法: text() - 设置或返回所选元素的文本内容 html() - 设置或返回所选元 ...
- 可持久化0-1 Trie 简介
Trie树是字符串问题中应用极为广泛的一种数据结构,可以拓展出AC自动机.后缀字典树等实用数据结构. 然而在此我们考虑0-1 Trie的应用,即在序列最大异或问题中的应用. 这里的异或是指按位异或.按 ...
- 在github网站上更新fork的repo
打开fork的repo. 点击Pull request, 这里会跳转到一个页面提示There isn’t anything to compare. 点击switching the base,将orig ...
- mysql数据库事务的操作与理解
--------------------事务----------------------------------------------查询mysql事务隔离级别1.查看当前会话隔离级别select ...
- jquery+layer实现无刷新、删除功能(laravel框架)
先来看一下效果 路由代码 Route::get('car/{id}/delete', 'CarController@delete'); 控制器层代码 //删除汽车信息 public function ...