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

什么是定制网站建设刷会员网站

什么是定制网站,建设刷会员网站,中国上海门户网站公众号,2021年最新的网站目录 一.playbook介绍二.playbook格式1.书写格式2.notify介绍 一.playbook介绍 playbook 是 ansible 用于配置,部署,和管理被控节点的剧本。通过 playbook 的详细描述,执行其中的一系列 tasks ,可以让远端主机达到预期的状态。pl…

目录

  • 一.playbook介绍
  • 二.playbook格式
    • 1.书写格式
    • 2.notify介绍

一.playbook介绍

playbook 是 ansible 用于配置,部署,和管理被控节点的剧本。通过 playbook 的详细描述,执行其中的一系列 tasks ,可以让远端主机达到预期的状态。playbook 就像 Ansible 控制器给被控节点列出的的一系列 to-do-list ,而被控节点必须要完成。也可以这么理解,playbook 字面意思,即剧本,现实中由演员按照剧本表演,在 Ansible 中,这次由计算机进行表演,由计算机安装,部署应用,提供对外服务,以及组织计算机处理各种各样的事情

二.playbook格式

1.书写格式

  1. 文件的第一行应该以 “—” (三个连字符)开始,表明 YMAL 文件的开始。
  2. 在同一行中,# 之后的内容表示注释,类似于 shell,python 和 ruby。
  3. YMAL 中的列表元素以 ”-” 开头然后紧跟着一个空格,后面为元素内容。
  4. 同一个列表中的元素应该保持相同的缩进。否则会被当做错误处理。
  5. play 中 hosts,variables,roles,tasks 等对象的表示方法都是键值中间以 “:”
    分隔表示,“:” 后面还要增加一个空格

举例 安装挂载nfs服务

[root@tdm1 playbook]# cat nfs.yml 
---
- hosts: webremote_user: roottasks: - name: install nfsyum:  name=rpcbind,nfs-utils state=present- name: nfs configure filecopy: src=./export.j2 dest=/etc/exports backup=yes- name: mkdir share dirfile: path=/data state=directory owner=nfsnobody group=nfsnobody- name: start rpcbindservice: name=rpcbind state=started enabled=yes  - name: start nfsservice: name=nfs  state=started enabled=yes  - name: mount localmount: src=47.93.98.117:/data path=/mnt fstype=nfs state=mounted

文件名称应该以.yml结尾

hosts :使用 hosts 指示使用哪个主机或主机组来运行下面的 tasks ,每个 playbook 都必须指定 hosts ,hosts 也可以使用通配符格式。主机或主机组在 inventory 清单中指定,可以使用系统默认的 /etc/ansible/hosts,也可以自己编辑,在运行的时候加上 -i 选项,指定清单的位置即可。在运行清单文件的时候,–list-hosts 选项会显示那些主机将会参与执行 task 的过程中。

remote_user:指定远端主机中的哪个用户来登录远端系统,在远端系统执行 task 的用户,可以任意指定,也可以使用 sudo,但是用户必须要有执行相应 task 的权限。

tasks:指定远端主机将要执行的一系列动作。tasks 的核心为 ansible 的模块,前面已经提到模块的用法。tasks 包含 name 和要执行的模块,name 是可选的,只是为了便于用户阅读,不过还是建议加上去,模块是必须的,同时也要给予模块相应的参数。

使用ansible-playbook运行playbook文件,得到以下输出信息,输出内容为json格式,由不同颜色组成
绿色代表执行成功,系统保持原样
黄色代表系统状态发生改变
红色代表失败,显示错误输出

执行有三个步骤:

1.收集facts
2. 执行tasks
3. 报告结果

在这里插入图片描述

2.notify介绍

Ansible提供了notify指令和handlers功能。如果在某个task中定义了notify指令,当Ansible在监控到该任务 changed=1时,会触发该notify指令所定义的handler,然后去执行handler。所谓handler,其实就是task,无论在写法上还是作用上它和task都没有区别,唯一的区别在于hander是被触发而被动执行的,不像普通task一样会按流程正常执行

测试1
当检测到nfs的配置发生变化是,会重启nfs服务和重新挂载
notify和handlers中定义的名称必须一致

[root@tdm1 playbook]# cat nfs.yml 
---
- hosts: webtasks: - name: install nfsyum:  name=rpcbind,nfs-utils state=present- name: nfs configure filecopy: src=./export.j2 dest=/etc/exports backup=yesnotify: restart nfs   #当export.j2文件发生变化,就会由handlers来执行。- name: mkdir share dirfile: path=/data state=directory owner=nfsnobody group=nfsnobody- name: start rpcbindservice: name=rpcbind state=started enabled=yes  - name: start nfsservice: name=nfs  state=started enabled=yes  - name: mount localmount: src=47.93.98.117:/data path=/mnt fstype=nfs state=mountednotify: client remounthandlers: - name: restart nfs     #名称和notify中的一致service: name=nfs  state=restarted - name: client remountservice: src=47.93.98.117:/data path=/mnt fstype=nfs state=remounted
#修改export.j2的内容
vim export.j2
/data 47.93.98.0/24(rw,all_squash)

执行剧本,观察
在这里插入图片描述

#查看文件是否更改
[root@tdm1 playbook]# ansible web -m shell -a 'cat /etc/exports'
47.93.98.117 | CHANGED | rc=0 >>
/data 47.93.98.0/24(rw,all_squash)

测试2
修改nginx的文件,检测到文件被修改,handlers下面任务会被执行

[root@tdm1 playbook]# cat nginx.yml 
---
- hosts: webtasks: - name: install  nginx yum:name: nginxstate: installed- name: index filecopy:content: "This is ansible test"dest: /usr/share/nginx/html/index.html- name: nginx configure filecopy:src: ./nginx.conf.j2dest: /etc/nginx/conf.d/default.confbackup: yesnotify: restart nginx    #文件被修改,重启nginx- name: start nginxservice: name: nginxstate: startedhandlers:- name: restart nginx     #重启nginxservice: name: nginxstate: restarted
#修改nginx.conf.j2的文件
vim nginx.conf.j2
server {listen       81;server_name  localhost;location / {root   /usr/share/nginx/html;index  index.html index.htm;}
}

在这里插入图片描述

参考:https://blog.csdn.net/u012562943/category_6298590.html

http://www.yayakq.cn/news/876704/

相关文章:

  • 国外有没有网站是做潘多拉的google chrome官网入口
  • 网站建设简单案例it行业怎么入门
  • 自助建站网站模板网站建设优化石家庄
  • 南宁网站建设平台营销型网站策划建设分为哪几个层次
  • 单页式网站系统程序开发步骤不包括
  • 电商网站开发目的seo网站开发
  • 华为网站建设方案模板下载做最优秀的自己的视频网站
  • 嘉兴市城乡与建设局网站小众设计公司logo
  • 无锡手机网站建设服务为公益组织做网站
  • 规划怎样做网站石家庄招聘网最新招聘
  • 胶州建设工程信息网站wordpress添加表格
  • 临夏网站建设网站开发流程主要分成什么
  • 动漫网站设计模板seo推广手段
  • 西宁建一个网站公司制作网页的常用软件
  • 制作单页网站教程视频北京网站建设w亿玛酷1专注
  • 哪个网站可以做免费请帖搜索引擎入口网址
  • js企业网站模板权威的广州h5网站
  • 网站怎么做需要花钱吗做网站公司大连
  • 网站运营费用预算在线浏览器网页版入口
  • 免费注册qq号网站wordpress模板资源
  • 营销型网站建设pptWordpress百万访问优化
  • 阿里云网站服务器天元建设集团有限公司滨州分公司是国企吗
  • 中山医疗网站建设网站图标 psd
  • 网站开发加33865401企业网站建设需求调查
  • 美食网网站建设目的建立生态产品
  • 音乐网站开发环境描述品牌建设与诚信建设相结合
  • 上海网站推广方法手机怎么搭建属于自己的网站
  • 单页网站cpa虚拟主机太原网站建站模板
  • 量子秘密网站怎么做淮安营销型网站建设
  • 视觉设计包括什么南安seo快速排名