当前位置: 首页 > news >正文

Ansible学习笔记12

playbook:

playbook(剧本):是ansible用于配置、部署和管理被控节点剧本,用于Ansible操作的编排

使用的是yaml格式,(saltstack、elk、docker、docker-compose、k8s都会使用到yaml格式。)

这种格式对我们运维的人员还是非常重要的。

YAML格式:

以.yaml结尾或者yml结尾。

1)文件的第一行以---开始,表明YAML文件的开始;(可选)

2)以#开头表示注释;<!-- -->

3)列表中的所有成员都开始于相同的缩进格式,并以使用一个"-"作为开头。

4)一个字典是由简单的 键: 值 的形式组成(冒号后面必须有一个空格。)

注意的是:写这种文件不要使用tab键,都必须使用空格。我们正常使用两个空格。

看一个示例:

字典和列表的格式:

示例:

[root@localhost playbook]# cat example.yaml
---
- hosts: group1remote_user: roottasks:- name: ensure apache is at the latest versionyum: name=httpd,httpd-devel state=latest- name: write the apache config filecopy: src=/etc/httpd/conf/httpd.conf dest=/etc/httpd/conf/httpd.confnotify:- restart apache- name: ensure apache is running (and enable it at boot)service: name=httpd state=started enabled=yeshandlers:- name: restart apacheservice: name=httpd state=restarted

说明:

1)tasks任务。

2)安装httpd;

3)copy模块,同步配置文件;

4)notify是配置文件修改之后,调用restart apache的handlers:这种格式要留心下。

[root@localhost ~]# ansible-playbook /etc/ansible/playbook/example.yamlPLAY [group1] *************************************************************************************TASK [Gathering Facts] ****************************************************************************
ok: [192.168.17.106]
ok: [192.168.17.105]TASK [ensure apache is at the latest version] *****************************************************
changed: [192.168.17.105]
changed: [192.168.17.106]TASK [write the apache config file] ***************************************************************
changed: [192.168.17.105]
changed: [192.168.17.106]TASK [ensure apache is running (and enable it at boot)] *******************************************
changed: [192.168.17.105]
changed: [192.168.17.106]RUNNING HANDLER [restart apache] ******************************************************************
changed: [192.168.17.106]
changed: [192.168.17.105]PLAY RECAP ****************************************************************************************
192.168.17.105             : ok=5    changed=4    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0
192.168.17.106             : ok=5    changed=4    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0

说明:绿色表示的没有更新。黄色的表示有更新。红色表示的failed。

步骤和错误都是可视化。这个是playbook的一个优点。

playbook有个专业术语:幂等性。

幂等性的概念:一次或多次请求某一个资源本身应该具有同样的结果。(网络超时等问题除外。)

1)出错不用推导重做。

2)剧本执行一百次,结果只有一个。

3)避免了万一出错,需要重来的问题。我们可以先写个剧本,万一某一步出错,我们不需要推导重来。

http://www.lryc.cn/news/152829.html

相关文章:

  • sqlmap中文文档
  • 【C++模拟实现】vector的模拟实现
  • go学习part21(3)redis连接池
  • 乐理-笔记
  • java八股文面试[数据库]——B树和B+树的区别
  • 2、Nginx 安装
  • 最适合 AI 的 Python Web 框架
  • 算法通关村第十八关——回溯
  • 使用kafka还在依赖Zookeeper,kraft模式了解下
  • 【100天精通Python】Day52:Python 数据分析_Numpy入门基础与数组操作
  • Day01-Java基础语法
  • 代码随想录二刷day06
  • 可扩展的Blender插件开发汇总
  • 2023_Spark_实验二:IDEA安装及配置
  • 小赢科技,寻找金融科技核心价
  • NAT与代理服务器
  • 24.排序,插入排序,交换排序
  • Navicat16安装教程
  • 【看表情包学Linux】初识文件描述符 | 虚拟文件系统 (VFS) 初探 | 系统传递标记位 | O_TRUNC | O_APPEND
  • ssm+vue“魅力”繁峙宣传网站源码和论文
  • Linux系统编程5(线程概念详解)
  • leetcode645. 错误的集合(java)
  • Pytest参数详解 — 基于命令行模式
  • 【python爬虫】3.爬虫初体验(BeautifulSoup解析)
  • 【Three.js + Vue 构建三维地球-Part One】
  • Power View
  • SQL查询本年每月的数据
  • C++之struct和union对比介绍
  • 微服务--SkayWalking(链路追踪:国产开源框架)
  • 在Windows 10上部署ChatGLM2-6B:掌握信息时代的智能对话