使用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、可扩展性强
#语法简介#
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服务器
- 安装HTTPD服务
- 在
/var/www/html目录下创建一个名为index.html的文件,其中内容为www.westos.org - 创建一个名为
vhosts.conf的虚拟主机配置文件,包含了3个虚拟主机的信息,分别是默认主机、bbs.westos.org、login.westos.org,并在文件末尾加上一个<Directory>块 - 在
/var/virtual/westos.org/login/html目录下创建一个目录 - 在
/var/virtual/westos.org/bbs/html目录下创建一个目录 - 在
/var/virtual/westos.org/bbs/html目录下创建一个名为index.html的文件,其中内容为bbs.westos.org - 在
/var/virtual/westos.org/login/html目录下创建一个名为index.html的文件,其中内容为login.westos.org - 启用firewalld的http服务,并永久生效
- 重启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服务,包括以下步骤:
- 安装vsftpd服务
- 在
/etc/vsftpd/vsftpd.conf文件中,将anonymous_enable这一行的开头的#去掉,并设置为NO,即不允许匿名用户访问 - 启用firewalld的ftp服务,并永久生效
- 重启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

相关文章:
使用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 #特…...
模型应用系实习生-模型训练笔记(更新至线性回归、Ridge回归、Lasso回归、Elastic Net回归、决策树回归、梯度提升树回归和随机森林回归)
sklearn机械学习模型步骤以及模型 一、训练准备(x_train, x_test, y_train, y_test)1.1 导包1.2 数据要求1.21 导入数据1.22 数据类型查看检测以及转换1.22 划分数据 二、回归2.1 线性回归2.2 随机森林回归2.3 GradientBoostingRegressor梯度提升树回归2…...
【Verilog】7.2.1 Verilog 并行 FIR 滤波器设计
FIR(Finite Impulse Response)滤波器是一种有限长单位冲激响应滤波器,又称为非递归型滤波器。 FIR 滤波器具有严格的线性相频特性,同时其单位响应是有限长的,因而是稳定的系统,在数字通信、图像处理等领域…...
【音视频 | wav】wav音频文件格式详解——包含RIFF规范、完整的各个块解析、PCM转wav代码
😁博客主页😁:🚀https://blog.csdn.net/wkd_007🚀 🤑博客内容🤑:🍭嵌入式开发、Linux、C语言、C、数据结构、音视频🍭 🤣本文内容🤣&a…...
人工智能基础_机器学习012_手写梯度下降代码演示_手动写代码完成梯度下降_并实现梯度下降可视化---人工智能工作笔记0052
可以看到上面我们那个公式,现在我们用梯度下降实现一下,比如我们有一堆数据,但是没有方程的情况下,我们来看一下如果计算,对应的w值也就是seta值对吧,没有方程我们可以使用梯度下降 这里首先我们可以设置一个0.0001.我们知道梯度下降的公式, 梯度下降刚开始的时候,下降会快,然…...
Docker安装部署[8.x]版本Elasticsearch+Kibana+IK分词器
文章目录 Docker安装部署elasticsearch拉取镜像创建数据卷创建网络elasticsearch容器,启动!踩坑:虚拟机磁盘扩容 Docker安装部署Kibana拉取镜像Kibana容器,启动! 安装IK分词器安装方式一:直接从github上下载…...
折纸达珠峰高度(forwhile循环)
对折0.1mm厚度的纸张多少次,高度可达珠峰高度8848180mm。 (本笔记适合熟悉循环和列表的 coder 翻阅) 【学习的细节是欢悦的历程】 Python 官网:https://www.python.org/ Free:大咖免费“圣经”教程《 python 完全自学教程》,不仅…...
探索网络攻防技术:自学之道
在当今数字化时代,网络攻防技术的重要性日益凸显。无论是个人用户还是企业组织,都需要具备一定的网络安全意识和基本技能来应对日益复杂的网络威胁。自学网络攻防技术成为许多人的选择,今天我们将探讨如何高效、有序地自学网络攻防技术。 如果…...
图像二值化阈值调整——cv2.threshold方法
二值化阈值调整:调整是指在进行图像二值化处理时,调整阈值的过程。阈值决定了将图像中的像素分为黑色和白色的界限,大于阈值的像素被设置为白色,小于等于阈值的像素被设置为黑色。 方法一: 取阈值为 127,…...
【C++代码】背包问题,完全背包,多重背包,打家劫舍,动态规划--代码随想录
爬楼梯(plus) 一步一个台阶,两个台阶,三个台阶,…,直到 m个台阶。问有多少种不同的方法可以爬到楼顶呢? 1阶,2阶,… m阶就是物品,楼顶就是背包。每一阶可以重复使用,例如…...
阿里云创始人王坚:云计算和GPT的关系,就是电和电机的关系
10月31日,在2023云栖大会,中国工程院院士、阿里云创始人王坚以《云计算的第三次浪潮》为主题发表演讲,他认为人工智能和云计算的结合,带来云计算的第三次浪潮,它不会在一年、两年完成,它可能会给我们十年、…...
python爬取豆瓣电影Top250数据
本次爬虫案例使用Python语言编写,使用了requests库进行网页请求,使用了BeautifulSoup库进行网页解析,使用了openpyxl库进行数据的保存。 案例中的爬虫目标是豆瓣电影Top250,通过循环访问不同页面进行数据的爬取。在每个页面上&am…...
关键路径及关键路径算法[C/C++]
文章目录 关键路径引例AOE网关键路径与关键活动关键路径算法引例与原理关键路径算法的实现边的存储结构代码实现运行示例 关键路径 关于拓扑排序的内容见拓扑排序详解 引例 通过拓扑排序我们可以解决一个工程是否可以顺序进行的问题,拓扑排序把一个工程分成了若干…...
nginx http 跳转到https
改 Nginx 配置文件 在您安装了 SSL 证书之后,您需要修改 Nginx 的配置文件以启用 HTTPS 和 HTTP 自动跳转 HTTPS。 打开 Nginx 配置文件(通常位于 /etc/nginx/nginx.conf),找到您的网站配置块。在该配置块中添加以下内容&#x…...
可靠的互联网兼职平台,平常可以做副业充实生活
在互联网时代,越来越多的人开始通过网络来寻找兼职副业的机会,能够更灵活地安排自己的时间,实现自己的收入增值。那么找到一个正规可靠的线上兼职平台就是一个比较重要的事情,这里分享几个正规靠谱的线上兼职副业平台,…...
云安全—K8s APi Server 6443 攻击面
0x00 前言 在未授权的一文中,详细描述了k8s api中的8080端口未授权的问题,那么本篇主要来说6443端口的利用。 0x01 API连接攻击面 1.匿名用户访问 匿名开放方式:kubectl create clusterrolebinding cluster-system-anonymous --clusterro…...
【案例实战】NodeJS+Vue3+MySQL实现列表查询功能
这篇文章,给大家带来一个列表查询的功能,从前端到后端的一个综合案例实战。 采用vue3作为前端开发,nodejs作为后端开发。 首先我们先来看一下完成的页面效果。点击分页,可以切换到上一页、下一页。搜索框可以进行模糊查询。 后端…...
Google play开发者账号被封的几种常见原因及相关解决思路
在Google paly上,每天都有大量的应用被成功发布,同时也有很多开发者账号被封禁。特别是在今年的十月份之前,谷歌的"封号潮"给很多开发者带来了沉重的打击。不过,令人欣慰的是,自十月份之后,情况逐…...
深入理解计算机系统CS213学习笔记
Lecture 01 1. 计算机表示数字 int 整数运算可能会出现错误,超过32位时会出现溢出。 float 浮点数不适用结合律,因为浮点数表示的精度有限。 根其原因,是用有限的位数表示无限的数字空间。 2.利用分层的存储系统,使程序运行更…...
【设计模式】第8节:结构型模式之“适配器模式”
一、简介 适配器模式是用来做适配的,它将不兼容的接口转换为可兼容的接口,让原本由于接口不兼容而不能一起工作的类可以一起工作。 适配器模式角色: 请求者client:调用服务的角色目标Target:定义了Client要使用的功…...
如何快速集成 react-native-bottom-sheet-behavior:5 分钟搞定 Android 底部弹窗
如何快速集成 react-native-bottom-sheet-behavior:5 分钟搞定 Android 底部弹窗 【免费下载链接】react-native-bottom-sheet-behavior react-native wrapper for android BottomSheetBehavior 项目地址: https://gitcode.com/gh_mirrors/re/react-native-bottom…...
保姆级教程:在Ubuntu上配置Frida环境,搞定Android App的IO重定向与签名绕过
在Ubuntu上构建Android逆向工程环境:Frida实战与IO重定向技术解析 对于习惯Linux环境的安全研究人员而言,Windows-centric的逆向工具链往往带来诸多不便。本文将系统性地介绍如何在Ubuntu上搭建完整的Android逆向环境,并深入探讨如何利用Frid…...
DIY智能USB充电器:基于电流检测与双稳态继电器的零功耗节能方案
1. 项目概述:打造一款智能、节能的USB手机充电器作为一名电子爱好者,我经常折腾各种电源项目。市面上很多手机充电器,包括一些原装货,都存在一个通病:手机充满电后,充电器依然插在插座上,内部电…...
Python Android打包终极指南:5个实战技巧解决移动开发痛点
Python Android打包终极指南:5个实战技巧解决移动开发痛点 【免费下载链接】python-for-android Turn your Python application into an Android APK 项目地址: https://gitcode.com/gh_mirrors/py/python-for-android Python-for-Android(简称p4…...
为什么你的DeepSeek总漏检重构后代码?4步反混淆预处理法(附LLM辅助去装饰器Python脚本)
更多请点击: https://codechina.net 第一章:DeepSeek代码重复检测 DeepSeek-R1 模型在训练过程中引入了严格的代码去重机制,其核心目标是消除训练语料中语义等价或高度相似的代码片段,从而提升模型对真实编程模式的学习能力与泛化…...
通过Taotoken用量看板清晰追踪各模型的Token消耗情况
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 通过Taotoken用量看板清晰追踪各模型的Token消耗情况 对于依赖大模型API进行开发的个人或团队而言,成本控制与预算规划…...
如何快速解锁加密音乐文件:3个简单步骤让音乐自由播放
如何快速解锁加密音乐文件:3个简单步骤让音乐自由播放 【免费下载链接】unlock-music 在浏览器中解锁加密的音乐文件。原仓库: 1. https://github.com/unlock-music/unlock-music ;2. https://git.unlock-music.dev/um/web 项目地址: https…...
SuperCom串口调试工具终极指南:快速解决嵌入式开发中的通信难题
SuperCom串口调试工具终极指南:快速解决嵌入式开发中的通信难题 【免费下载链接】SuperCom SuperCom 是一款串口调试工具 项目地址: https://gitcode.com/gh_mirrors/su/SuperCom 想象一下这样的场景:你正在调试一个嵌入式设备,需要同…...
<数据集>yolo高粱叶片病害识别<目标检测>
数据集下载链接https://download.csdn.net/download/qq_53332949/92902223数据集格式:VOCYOLO格式 图片数量:3242张 标注数量(xml文件个数):3242 标注数量(txt文件个数):3242 标注类别数:1 使用标注工具ÿ…...
【仅限首批200家认证用户】DeepSeek v3.2.1重复检测私有化部署补丁包(含GPU内存泄漏热修复+增量扫描加速模块)
更多请点击: https://intelliparadigm.com 第一章:DeepSeek代码重复检测 DeepSeek-R1 模型在训练过程中引入了严格的代码去重机制,其核心目标是消除训练语料中语义等价或高度相似的代码片段,从而提升模型对真实编程模式的学习能力…...
