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 ...
随机推荐
- B站学习记:贪心与博弈
贪心 1. poj2287 N匹马的田忌赛马问题 稳稳地赢. 寻找最优的方案. 更优的收益. 有时候,局部最优导致全局最优. 马的能力值. 使得让我赢的局数最多. 对于对方的任何一匹马,如果我的马能打 ...
- 154.Ajax处理csrf防御
在普通的form表单中采用post请求提交数据,可以在form表单的method=post的form标签下面,添加一个csrf_token标签{% csrf_token %},或者是直接手动的添加一个 ...
- C语言sprintf函数的深入理解
由于sprintf跟printf在用法上几乎一样,只是打印的目的地不同而已,前者打印到字符串中,后者则直接在命令行上输出.这也导致sprintf比printf有用得多.所以本文着重介绍sprintf, ...
- kmp算法散记
1. https://blog.csdn.net/abcjennifer/article/details/5794547 #include<bits/stdc++.h> using nam ...
- linux做免密登录,成功分发公钥后登录主机依旧需要输入密码的问题解决
问题描述 在主机A上用ssh-keygen生成密钥对后,用ssh-copy-id命令将公钥成功copy到主机B上后,测试从A免密登录B,但是依旧需要输入主机B的密码后才能登录. 出现此错误的原因 如果 ...
- android button setMinHeight setMinWidth 无效解决办法
setMinWidth(0);setMinHeight(0);setMinimumWidth(0);//必须同时设置这个setMinimumHeight(0);//必须同时设置这个 两个方法同时设置才 ...
- jQuery实现TAB选项卡切换特效简单演示
本文实例为大家分享jQuery实现TAB选项卡切换特效,供大家参考,具体内容如下 1.tab切换 on ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 ...
- python之路之线程,进程,协程
一.线程和进程概述 1.python线程的Event 2.python线程其他和队列以及生产者消费者 3. 使用multprocessing创建进程 4.进程间数据共享方式——sharedmeory( ...
- ASP.NET MVC扩充数据模型-定义数据模型的Metadata
ASP.NET MVC扩充数据模型-定义数据模型的Metadata Posted on 2018-07-12 by Wang Kepai Rate this post 无论你是使用LINQ t ...
- 开发笔记—钉钉服务商应用isv开发,从应用配置,到获取客户企业通讯录
以第三方企业微应用为例 在第三方企业微应用应用时,比较底层的需求,就是应用需要获取客户企业的通讯录,即部门/员工的数据.本人整理以下几个关键数据,供大家开发参考. 新建第三方微应用时,能拿到这些初始数 ...