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 ...
随机推荐
- eclipse 项目的创建 编写 'Hello World'
写项目之前确保 eclipse 安装完成 以及JDK 环境配置 成功 开始: 打开eclipse 右键file ->new->java project 如图: 然后输入项目名 点击Fin ...
- 转载:polyphase filter
http://www.ws.binghamton.edu/fowler/fowler%20personal%20page/ee521.htm http://www.ws.binghamton.edu/ ...
- SpringMVC-简单参数绑定
SpringMVC-简单参数绑定 众所周知,springmvc是用来处理页面的一些请求,然后将数据再通过视图返回给用户的,前面的几篇博文中使用的都是静态数据,为了能快速入门springmvc,在 ...
- Unity3D制作3D虚拟漫游场景(二)
传送门: Unity3D制作3D虚拟漫游场景(一) -------------------------------------------------------------------------- ...
- nginx配置https域名
nginx安装配置支持https和配置https域名 yum install -y gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-de ...
- tcp与http协议 以及python的实现
htpp协议 Rquest Headers格式: 请求方法空格URL空格协议版本回车符换行符 头部字段名:值回车符换行符 ··· 头部字段名:值回车符换行符 回车符换行符 请求数据 socket网络聊 ...
- pandas包学习笔记
目录 zip Importing & exporting data Plotting with pandas Visual exploratory data analysis 折线图 散点图 ...
- C++-hihoCode1546-[快速幂]
枚举子集,要求子集的min+max<=k,求子集个数,答案对1000000007取模 #include <bits/stdc++.h> using namespace std; ,M ...
- selenium 百度登录
private String baseUrl="http://www.baidu.com/"; --------- @Test public void testLoginB() t ...
- ReLU(inplace=True),这里的inplace=true的意思
ReLU(inplace=True),这里的inplace=true的意思 待办 inplace=True means that it will modify the input directly, ...