使用Ansible中的playbook

目录

1.Playbook的功能

2.YAML

3.YAML列表

4.YAML的字典

5.playbook执行命令

6.playbook的核心组件

7.vim 设定技巧

示例


1.Playbook的功能

playbook 是由一个或多个play组成的列表
Playboot 文件使用YAML来写的

2.YAML

#简介#
是一种表达资料序列的格式,类似XML

#特点#
1、可读性好
2、和脚本语言交互性号
3、易于实现
4、适用程序执行流梳理方式
5、可扩展性强  

#语法简介#

缩进严格
大小写敏感
key / value 可以多行书写也可一行书写 一行书写用 隔开
value 可以是个字符串 也可是 list
一个 play 需要包括 name tasks
name 是描述
tasks 是动作
一个 name 只能包含一个 task
扩展名称 yml 或者 yaml

3.YAML列表

[Linux,C++,Java,Python]- Linux
- C++
- Java
- Python

4.YAML的字典

字典作用:存放键值
name:westos
age:12
jobs:linux
=
{name: "westos", age: "12", jobs: "linux"}

5.playbook执行命令

ansible-playbook xxx.yml--check|-C         //检测,进行测试,但不会运行
--syntax-check         //check language,检测语法
--list-hosts         //列出hosts
--list-tags         //列出tag
--list-tasks         //列出task
--limit                 //指定执行主机
-v -vv                 //现实过程

6.playbook的核心组件

name         //可选,建议使用多用于说明
hosts         //受控主机列表tasks             //任务/用与选择执行部分代码

7.vim 设定技巧

autocmd FileType yaml setlocal ai ts=2 sw=2 et        //当文件为yaml类型,自动执行命令setlocal         //设定当前文件
ai                 //自动退格对齐 auto indent
ts                 //tab建长度为2空格 tabstop=2
sw             //缩进长度为2 shiftwidth=2
et                 //把tab键变成空格 expandtab

示例

设置HTTPD服务器

  1. 安装HTTPD服务
  2. /var/www/html目录下创建一个名为index.html的文件,其中内容为www.westos.org
  3. 创建一个名为vhosts.conf的虚拟主机配置文件,包含了3个虚拟主机的信息,分别是默认主机、bbs.westos.orglogin.westos.org,并在文件末尾加上一个<Directory>
  4. /var/virtual/westos.org/login/html目录下创建一个目录
  5. /var/virtual/westos.org/bbs/html目录下创建一个目录
  6. /var/virtual/westos.org/bbs/html目录下创建一个名为index.html的文件,其中内容为bbs.westos.org
  7. /var/virtual/westos.org/login/html目录下创建一个名为index.html的文件,其中内容为login.westos.org
  8. 启用firewalld的http服务,并永久生效
  9. 重启httpd服务,但不在开机时启动该服务
- name: set up httpdhosts: hosttasks:- name: install httpdyum:name: httpdstate: present- name: create index.htmlcopy:dest: /var/www/html/index.htmlcontent: www.westos.org- name: create virtual hostcopy:content: |+<VirtualHost _default_:80>DocumentRoot /var/www/html</VirtualHost><VirtualHost *:80>ServerName bbs.westos.orgDocumentRoot /var/virtual/westos.org/bbs/html</VirtualHost><VirtualHost *:80>ServerName login.westos.orgDocumentRoot /var/virtual/westos.org/login/html</VirtualHost><Directory "/var/virtual">Require all granted</Directory>dest: /etc/httpd/conf.d/vhosts.conf- name: create directoryfile:state: directorypath: /var/virtual/westos.org/login/html- name: create dirctoryfile:state: directorypath: /var/virtual/westos.org/bbs/html- name: Set index pages for virtual hostscopy:content: "bbs.westos.org"dest: "/var/virtual/westos.org/bbs/html/index.html"- name: set indexcopy:content: "login.westos.org"dest: "/var/virtual/westos.org/login/html/index.html"- name: set firewalldfirewalld:service: httppermanent: yesimmediate: yesstate: enabled- name: restartservice:name: httpdstate: restartedenabled: no

设置ftp服务,包括以下步骤:

  1. 安装vsftpd服务
  2. /etc/vsftpd/vsftpd.conf文件中,将anonymous_enable这一行的开头的#去掉,并设置为NO,即不允许匿名用户访问
  3. 启用firewalld的ftp服务,并永久生效
  4. 重启vsftpd服务,但不在开机时启动该服务
- name: setup ftp by playbookhosts: hosttasks:- name: install vsftpdyum:name: vsftpdstate: present- name: enable anonymous to accesslineinfile:path: /etc/vsftpd/vsftpd.confregexp: '^#*(anonymous_enable=)'line: 'anonymous_enable=NO'state: present- name: set firewalldfirewalld:service: httppermanent: yesimmediate: yesstate: enabled- name: restart serviceservice:name: vsftpdstate: restartedenabled: no

会向/mnt/file文件中插入三行内容,分别是:

         westos
          linux
          lee

如果/mnt/file文件不存在,则会自动创建该文件。如果已经存在,则会在文件中匹配这三行内容,如果不存在则添加这三行到文件中。如果已经存在这三行内容,则不做任何操作。

- name: Edit a file using lineinfile modulehosts: hosttasks:- name: Insert lines to filelineinfile:path: /mnt/fileline: |+westoslinuxleecreate: yes

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/156457.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Instagram 运营技巧,这4个基本设置很重要!

ins这个平台相信很多跨境卖家都不陌生&#xff0c;但想要运营好这个平台却不是那么容易的。想要在ins上获得更多的自然流量&#xff0c;基本设置和功能就要搞懂&#xff0c;今天就给大家分享4个基本的ins设置&#xff0c;以及如何更好地使用 Hashtag&#xff01; Instagram Bio…

Ubuntu Desktop 20.04升级gcc-11

默认自带的gcc是9&#xff0c;需要升级到11 sudo add-apt-repository ppa:ubuntu-toolchain-r/test sudo apt update sudo apt install gcc-11 sudo apt install g11 sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 50 sudo update-alternatives -…

java--java的参数传递机制

1.java的参数传递机制都是&#xff1a;值传递 ①所谓值传递&#xff1a;值的是在传递实参给方法的形参的时候&#xff0c;传输的是实参变量中存储的值的副本。 ②实参&#xff1a;在方法内部定义的变量。 ③形参&#xff1a;定义方法时"(...)"中所声明的参数。 2.…

数据可视化篇——pyecharts模块

在之前的文章中我们已经介绍过爬虫采集到的数据用途之一就是用作可视化报表&#xff0c;而pyecharts作为Python中可视化工具的一大神器必然就受到广大程序员的喜爱。 一、什么是Echarts&#xff1f; ECharts 官方网站 : https://echarts.apache.org/zh/index.html ECharts 是…

区块链-蚂蚁链(阿里系产品),至信链(腾讯系),长安链(国家队)

目录 区块链-蚂蚁链&#xff08;阿里系产品&#xff09;,至信链&#xff08;腾讯系&#xff09;,长安链&#xff08;国家队&#xff09; ①蚂蚁链&#xff08;阿里系产品&#xff09; ②至信链&#xff08;腾讯系&#xff09; ③长安链&#xff08;国家队&#xff09; Hyp…

Unity内打开网页的两种方式(自带浏览器、内嵌浏览器)

1.自带浏览器 这个比较简单&#xff0c;直接调用unity官方的API即可&#xff0c;会直接使用默认浏览器打开网页&#xff0c;这里就不多做解释了。 代码 public InputField input;private void OpenUrlByUnity(){string inputStr input.text;if (!string.IsNullOrEmpty(input…

SQL server数据库端口访问法

最近数据库连接&#xff0c;也是无意中发现了这个问题&#xff0c;数据库可根据端口来连接 网址:yii666.com< 我用的是sql2014测试的&#xff0c;在安装其他程序是默认安装了sql(sql的tcp/ip端口为xxx)&#xff0c;服务也不相同&#xff0c;但是由于比较不全&#xff0c;我…

为什么Facebook运营需使用IP代理?

随着互联网的快速发展和全球用户规模的不断增长&#xff0c;Facebook已成为了全球最大的社交媒体平台之一。然而&#xff0c;大批量地运营Facebook账号往往需要借助IP代理这一工具&#xff0c;提高账号的安全性和可靠性&#xff0c;使得运营Facebook更加流畅。那么Facebook为什…

Qt之DLL的使用(关联DLL生成篇)

文章目录 一、示例二、使用步骤1.所需文件2.添加库3.选择库4.完成添加5.导入类使用 相关文章 一、示例 下图为使用DLL的示例图 二、使用步骤 1.所需文件 将所需要使用的相关库&#xff08;导出项目的库&#xff0c;包括Debug和Release两个编译模式的库&#xff0c;缺少某个…

基于PyTorch的中文情绪分析器设计与开发

收藏和点赞&#xff0c;您的关注是我创作的动力 文章目录 概要 一、相关基础理论2.1 主流深度学习框架2.2 神经网络2.2.1 神经网络基础 二、中文情感分类模型构建3.1 开发环境3.2 数据部分3.3 文本特征提取3.3.1、过滤标点符号3.3.2 中文分词、单词过滤 三 运行结果与分析五 结…

基于通道的数据增强方法_使用随机量化的方式

前言本文提出了一种适用于任意数据模态的自监督学习数据增强技术 来源&#xff1a;机器之心 仅用于学术分享&#xff0c;若侵权请联系删除 自监督学习算法在自然语言处理、计算机视觉等领域取得了重大进展。这些自监督学习算法尽管在概念上是通用的&#xff0c;但是在具体操作…

poi兴趣点推荐数据集介绍

介绍 foursquare数据集包含2153471个用户&#xff0c;1143092个场所&#xff0c;1021970个签到&#xff0c;27098490个社交关系以及用户分配给场所的2809581评级&#xff0c;我们常用的是根据NYC和TKY都是从该数据集中抽取出来的。 下载地址&#xff1a;https://sites.google.…