Ansible从入门到精通【三】

news2024/9/30 23:32:42

大家好,我是早九晚十二,目前是做运维相关的工作。写博客是为了积累,希望大家一起进步!
我的主页:早九晚十二
专栏名称:Ansible从入门到精通 立志成为ansible大佬

♣ansible的高级指令

    • ansible-playbook
      • 写一个简单的剧本
    • ansible-vault
      • 加密剧本
      • 解密剧本
      • 查看剧本
      • 编辑剧本
      • 修改口令
      • 创建新文件
    • ansible-console
      • console操作
      • 修改目标主机时间

请添加图片描述

ansible-playbook

palybook 是由一个或多个paly组成的列表。play的主要功能在于将事先归并为一组的主机装扮成事先通过ansible 中的 task 定义好的角色。从根本上来讲,所谓 task 无非是调用 ansible 的一个 module。将多个 play组织在一个 playbook 中,即可以让它们联同起来按事先编排好的机制同唱一台大戏。

一个playbook由以下几个部分组成:

Inventory
Modules
Ad Hoc Commands
Playbooks
	tasks:即调用模块完成的操作
	variables:变量
	templates:模板
	handlers:触发器,由某子任务触发执行操作
	roles:角色

写一个简单的剧本

---  #固定格式,可以不写
- hosts: test #表示你要操作的主机组,注意空格
  remote_user: root #以root身份远程操作

  tasks:
    - name: test  #说明
      command: hostname #要执行的命令

执行:

[root@master ansible]# vim test.yml 
[root@master ansible]# ansible-playbook test.yml 

PLAY [test] ***************************************************************************************************************************************************************

TASK [Gathering Facts] ****************************************************************************************************************************************************
ok: [192.168.1.1]

TASK [test] ***************************************************************************************************************************************************************
changed: [192.168.1.1]

PLAY RECAP ****************************************************************************************************************************************************************
139.9.198.12               : ok=2    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   

ansible-vault

加密重要信息

加密剧本

需重复输入两次密码

[root@master ansible]# ansible-vault encrypt test.yml 
New Vault password: 
Confirm New Vault password: 
Encryption successful

查看剧本时,也必须使用ansible-vault指令,否则看到的是加密内容,如

[root@master ansible]# cat test.yml
$ANSIBLE_VAULT;1.1;AES256
61373337616563376334636235306530356635343530653862376533636331333161313661643430
3532313561363438386233646366643266323365633632330a393433383866306631643461653233
33616333316664383463353638373131363431373630666161363335623664653136643264323565
6630373939336262390a316562626665336534353466656133613133373262646662393764373965
61326161336335616364373034383133623763313465633136623861353536643438343537626232
31646161633932346466653663616330633438343637613231643234316530386435633231356332
34326639383934613062373463356632353866623165306230343833623863313634323932623763
37326434616332643931653939666361626537346566666633633536336537336231626237376134
3239

解密剧本

[root@master ansible]# ansible-vault decrypt test.yml 
Vault password: 
Decryption successful
[root@master ansible]# cat test.yml
---
- hosts: test
  remote_user: root

  tasks:
    - name: test
      command: hostname

查看剧本

[root@master ansible]# ansible-vault view  test.yml 
Vault password: 
---
- hosts: test
  remote_user: root

  tasks:
    - name: test
      command: hostname

编辑剧本

[root@master ansible]# ansible-vault edit   test.yml 
Vault password: 

---
- hosts: test
  remote_user: root

  tasks:
    - name: test
      command: hostname
~                                 

修改口令

需先输入旧密码在输入两次新密码

[root@master ansible]# ansible-vault rekey test.yml 
Vault password: 
New Vault password: 
Confirm New Vault password: 
Rekey successful

创建新文件

[root@master ansible]# ansible-vault create test2.yml 
New Vault password: 
Confirm New Vault password:

ansible-console

交互式工具在这里插入图片描述

含义:
	root:执行用户
	all: 主机清单
   (1):代表主机个数
   [f:5]: fork=5 5并发请求

修改为10个并发

root@all (1)[f:5]$ forks 10
root@all (1)[f:10]$ 

输入 或者help 可以查看提示,即模块名

console操作

执行查看日期命令

root@all (1)[f:5]$ command date
139.9.198.12 | CHANGED | rc=0 >>
Mon May 29 17:39:09 CST 2023

修改目标主机时间

如果主机有多个,修改某个主机信息,需使用cd切换

root@all (1)[f:5]$ cd 192.168.1.1
root@139.9.198.12 (1)[f:5]$ date -s "2023-05-29 17:40:00"

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java 集合中 ArrayList 的扩容机制原理(面试+读源码)

在 Java 中,ArrayList 内部是通过一个数组来存储元素的,是一个数组结构的存储容器。当向一个 ArrayList 中添加元素时,如果当前数组已经满了,就需要扩容。 集合的继承关系图 一、面试回答 ( ArrayList 的扩容机制原理 ) 面试…

Vue 脚手架(打包工具)的理解 - 配置文件理解

序言 Vue 脚手架是 Vue 作为一个前端开发项目的最核心点,将JavaScript、CSS、HTML这几种前端自动整合,极大的简化了前端开发工作。 没有 Vue 脚手架,就没有 Vue ,这是一定的,Java 语言和C语言都需要编译,…

【论文阅读】Analyzing group-level emotion with global alignment kernel based approach

【论文阅读】Analyzing group-level emotion with global alignment kernel based approach 摘要1.介绍与相关工作2.方法3.实验 摘要 本篇博客参考IEEE于2022年收录的论文Analyzing group-level emotion with global alignment kernel based approach,对其主要内容…

new一个ObjectInputStream为什么会出现java.io.EOFException

一、举例代码 package com.softeem.wolf.homework06;import java.io.*;/*** Created by 苍狼* Time on 2023-05-24*/ public class App {public static void main(String[] args) throws IOException {ObjectInputStream ois null;ObjectOutputStream oos null;ois new Obj…

功率信号源的特点和用途是什么

功率信号源是一种电子测量仪器,它集信号发生器与功率放大器为一体,具有高电压、大功率的特点。在电子实验室中,功率信号源可以帮助用户驱动压电陶瓷、换能器以及电磁线圈等,有效地解决了驱动负载和放大功率的问题。下面我们来具体…

Linux:LAMP的架构与环境配置

这里写目录标题 一、LAMP1.1 LAMP是什么1.2 安装顺序 二、编译安装Apache httpd服务2.1 关闭防火墙,将安装Apache所需软件包传到/opt目录下2.2 安装环境依赖包2.3 配置软件模块2.4 编译及安装2.5 优化配置文件路径2.6 添加httpd系统服务2.7 修改httpd 服务配置文件2…

MySql基础学习(2)

MySql基础学习 一、函数1.1 字符串函数1.2 数值函数1.3 日期函数1.4 流程控制语句 二、约束2.1 约束基本分类2.2 外键约束2.3 删除/更新行为 三、多表查询3.1 多表关系3.2 多表查询概述3.3 多表查询分类3.3.1 内连接3.3.2 外连接3.3.3 连接查询-自连接 3.4 联合查询-union&…

[SpringBoot]xml写mapper

创建工程[SpringBoot框架]如何使用SpringBoot框架_万物更新_的博客-CSDN博客 实现步骤: 测试: <?xml version"1.0" encoding"UTF-8" ?> <!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd…

Visual Studio || Visual Studio Code 连接 SQL Server 和 mysql

使用Visua Studio链接本地SQL Server和服务器上的mysql。 软件版本&#xff1a; Visual Studio 2022&#xff1b;Visual Studio Code 2023&#xff1b;SQL Server 2019mysql8.0 一、软件准备二、连接SQL Server2.1 使用Visual Studio 连接SQL Server2.2 使用VS Code连接SQL Ser…

【qemu】将vmdk转换为img镜像教程

qemu软件下载地址&#xff1a; 64位下载地址&#xff1a;QEMU for Windows – Installers (64 bit) 32位下载地址&#xff1a;QEMU for Windows – Installers (32 bit) 找到qemu的目录&#xff0c;然后使用cmd打开&#xff08;qemu软件没有封装exe包&#xff0c;所以只能用…

伺服系统使用S曲线

在之前文章《S形曲线规划方式汇总》 介绍过贝塞尔曲线方式&#xff0c;并且在Marlin开源工程中也有贝塞尔曲线步进系统的实现方式。本篇介绍伺服系统中基于时间分割法实现的贝塞尔S曲线。 1 贝塞尔曲线路程规划 上文中推导过贝塞尔曲线&#xff0c;本文直接用结论&#xff1a…

分享一下如何使用echarts绘制散点图

文章目录 散点图源码地址 散点图 今天我来分享一下如何使用echarts绘制散点图 首先&#xff0c;我们需要引入echarts库。可以通过以下代码在HTML文件中引入&#xff1a; <script src"https://cdn.jsdelivr.net/npm/echarts5.2.0/dist/echarts.min.js"></s…

整合SSM(Spring + SpringMVC + Mybatis)

7、整合SSM 7.1、环境要求7.2、数据库环境7.3、基本环境搭建7.4、Mybatis层编写7.5、Spring层7.6、SpringMVC层7.7、小结及展望 7.1、环境要求 环境&#xff1a; IDEA MySQL 5.7.19 Tomcat 9 Maven 3.6 要求&#xff1a; 需要熟练掌握MySQL数据库&#xff0c;Spring&#…

FMT ICF5实时仿真,不止于飞控

基于ICF5的实时仿真 作为FMT的首款自研的国产开源飞控硬件平台&#xff0c;ICF5不仅功能强大&#xff0c;而且高颜值和高性价比获得了用户的一致好评。 FMT ICF5飞控 ICF5购买链接​item.taobao.com/item.htm?id705459383848&ali_refida3_430620_1006:1123834906:N:O3mc…

常见的主流自动化测试框架,这5种真的帮助巨大

今天我们要向大家介绍的是常见5种主流自动化测试框架&#xff0c;包括优缺点等内容&#xff0c;供大家参考学习。 1.ATF 自动化测试框架AutoTestFramework是B/S架构框架&#xff0c;可实现Selenium等多种自动化测试全流程、团队化管理的高级框架平台&#xff0c;通过集成自动化…

Zookeeper+消息队列Kafka

一、Zookeeper 概述 官方下载地址&#xff1a;Index of /dist/zookeeper 1.1 Zookeeper 定义 Zookeeper是一个开源的分布式的&#xff0c;为分布式框架提供协调服务的Apache项目。 1.2 Zookeeper 工作机制 Zookeeper从设计模式角度来理解&#xff1a;是一个基于观察者模式设…

PyCharm配置Opencv(多人亲测可用)

23/5/29更新&#xff1a; 之前由于只安装opencv-python-contrib这个包&#xff0c;导致Opencv版本过高&#xff0c;有些算法无法使用&#xff0c; 所以这里更新安装opencv-contrib-python这个包&#xff0c;具体如下配置。 ————————————————————————…

【C++】map和set的使用及其模拟实现

文章目录 一、map和set的使用1. 关联式容器2. 键值对3. 关联式容器的使用3.1 set3.2 multiset3.3 map3.4 multimap 二、map和set的模拟实现1. 红黑树的实现(封装map和set版本)1.1 节点的实现1.2 KeyOfT(仿函数)1.3 红黑树的插入Insert1.4 迭代器iterator 2. set的模拟实现3. ma…

【分布式】分片存储服务器

完成了配置路由服务器之后&#xff0c;我们来到了对存储服务器的重构 在我们加入配置服务器组之后&#xff0c;我们发现我们的kvserver&#xff0c;也就是存储服务器还是单点的&#xff1a; 同样&#xff0c;我们可以借助之前实现的raft对单点进行拓展&#xff0c;我们可以设置…

【LeetCode热题100】打卡第7天:盛最多水的容器

文章目录 盛最多水的容器⛅前言&#x1f512;题目&#x1f511;题解 盛最多水的容器 ⛅前言 大家好&#xff0c;我是知识汲取者&#xff0c;欢迎来到我的LeetCode热题100刷题专栏&#xff01; 精选 100 道力扣&#xff08;LeetCode&#xff09;上最热门的题目&#xff0c;适合…