操作教程|JumpServer堡垒机结合Ansible进行批量系统初始化

运维人员常常需要对资产进行系统初始化的操作,而初始化服务器又是一项繁琐的工作,需要花费运维人员大量的时间和精力。为了提高效率,许多组织会使用自动化工具和脚本来简化这些任务。自动化工具的运用可以大幅降低运维人员的工作量,同时也能有效规避出错的风险。

Ansible作为近年来十分火爆的一款开源运维自动化工具,可以帮助管理人员简化系统配置、应用部署和任务执行等操作。同时,Ansible也可以结合JumpServer作为批量资产运维工具,进行批量系统初始化操作,能够很好地满足广大运维人员的实际需求。

本文将介绍通过JumpServer内置的Ansible模块批量初始化Linux服务器的具体方法,希望对广大企业的运维人员提高运维管理效率有所帮助。

一、Ansible简介

Ansible是自动化运维领域最为常用的工具之一。它基于Python语言开发,集合了众多运维工具(例如Puppet、Cfengine、Chef、Func、Fabric)的优点,操作简单,功能强大,支持批量系统配置、批量程序部署、批量运行命令等功能。

通过Ansible实现运维自动化,能够提高运维工程师的工作效率,减少人为失误。Ansible本身集成了非常丰富的模块可以实现各种管理操作,并且能够与多个平台进行交互对接。

Playbook模式(即剧本模式)是Ansible的主要管理方式,也是Ansible功能强大的关键所在。Playbook模式是通过多个Task(即任务)集合来完成某类功能的,例如Web服务的安装部署、数据库服务器的批量备份等,可以简单地把Playbook理解为通过组合多条“ad-hoc”操作的配置文件。
在这里插入图片描述

二、实施方案

JumpServer作为运维安全审计管理平台,本身内置Ansible模块,可以实现对服务器等资产的安全管控。用户通过JumpServer的认证和授权功能,获得相应权限后才能使用Ansible对目标主机进行操作,确保了操作的安全性。

同时,Ansible可以通过JumpServer来管理和执行各种任务,例如配置管理、软件部署、批量命令执行等,简化了操作流程。结合Ansible和JumpServer堡垒机,可以实现对服务器的中心化管理,提高系统的安全性和运维效率,提升企业的运维管理能力。

1.准备工作

■ 准备一台机器,部署JumpServer运维安全审计系统;

■ 准备若干台Linux服务器,用于测试批量系统初始化操作是否成功。

2.创建Playbook作业

■ 登录JumpServer堡垒机,进入工作台界面;
在这里插入图片描述

▲ 图1 登录JumpServer堡垒机

在这里插入图片描述

▲ 图2 进入JumpServer工作台界面

■ 在JumpServer中选择“作业中心”→“模版管理”→“Playbook管理”,创建Playbook模板;
在这里插入图片描述

▲ 图3 创建Playbook模板

在这里插入图片描述

▲ 图4 创建模板详情

■ 创建完成之后,管理页面会出现新创建的模板信息,并填写模板内容;
在这里插入图片描述

▲ 图5 新创建的模板

在这里插入图片描述

▲ 图6 填写模板内容

Playbook具体内容如下:

[root@v3 ~]# cat main.yml
write your playbook here
---
- hosts: allvars:remote_user:tasks:- name: 关闭防火墙service: name=firewalld state=stopped enabled=no- name: 关闭selinuxlineinfile:dest: /etc/selinux/configregexp: "^SELINUX="line: "SELINUX=disabled"- name: 即时生效shell: setenforce 0 ; swapoff -a- name: 关闭swaplineinfile:dest: /etc/fstabregexp: ".*swap"line: ""- name: 拷贝时区copy: src=/usr/share/zoneinfo/Asia/Shanghai dest=/etc/localtime- name: 更新源shell: yum repolist- name: 安装lrzszyum: name=lrzsz - name: 安装net-toolsyum: name=net-tools - name: 安装wgetyum: name=wget - name: 安装gccyum: name=gcc - name: 安装开发者工具库yum: name='@Development Tools'- name: 更改内核最大连接数copy: src=/etc/security/limits.conf dest=/etc/security/limits.conf - name: 设置java连接数shell: sed -i '$a vm.max_map_count=262144' /etc/sysctl.conf ; sysctl -p

■ 在JumpServer中选择“作业中心”→“作业管理”,创建Playbook作业;
在这里插入图片描述

▲ 图7 创建Playbook作业

■ 按照如下图示填写所需的信息;
在这里插入图片描述

▲ 图8 填写作业信息

■ Playbook作业创建成功后,运行Playbook作业进行测试;
在这里插入图片描述

▲ 图9 运行新创建的作业

■ 运行成功。在JumpServer中创建Playbook模板后,如果需要新增服务器,运维人员只需要创建一个Playbook作业即可快速完成资产的系统初始化,轻松解放双手。
在这里插入图片描述

▲ 图10 成功执行Playbook作业

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

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

相关文章

Redis实战之-分布式锁

一、基本原理和实现方式对比 分布式锁:满足分布式系统或集群模式下多进程可见并且互斥的锁。 分布式锁的核心思想就是让大家都使用同一把锁,只要大家使用的是同一把锁,那么我们就能锁住线程,不让线程进行,让程序串行…

档案数字化如何选择合适的扫描仪

选择合适的扫描仪是进行档案数字化的关键步骤。以下是一些选择合适扫描仪的要点: 1. 扫描速度:选择具有合适的扫描速度的扫描仪,以便能够快速处理大量的文件。 2. 扫描分辨率:扫描分辨率决定了扫描后图像的清晰度。对于大多数文档…

RIP基础实验配置

要使用RIP完成以上命令需求 1,首先划分ip地址 有图可见有四个网段需要划分 192.168.1.0/26 192.168.3.0/26 192.168.7.0/26 192.168.5.0/26 给两个骨干网段,给两个环回接口,由下图所示: 其次,规划好ip后在各个接口…

v-if和v-for哪个优先级更高?

v-if和v-for哪个优先级更高? 结论: vue2输出的渲染函数是先执行循环,在看条件判断,如果将v-if和v-for写在一个标签内,哪怕只渲染列表中的一小部分,也要重新遍历整个列表,无形造成资源浪费。vu…

DolphinDB 与盈米基金达成战略合作,打造领先的资管机构投顾解决方案

1月16日上午,DolphinDB 与盈米基金在上海签署战略合作协议,共同开启专业资管投顾投研合作新篇章。 DolphinDB 联合创始人、COO 初阳春与盈米基金副总裁、研究院院长杨媛春出席仪式,并代表双方完成签约。 打造市场领先的资管机构投顾服务 盈…

浅析Redis①:命令处理核心源码分析(上)

写在前面 Redis作为我们日常工作中最常使用的缓存数据库,其重要性不言而喻,作为普调开发者,我们在日常开发中使用Redis,主要聚焦于Redis的基层数据结构的命令使用,很少会有人对Redis的内部实现机制进行了解&#xff0c…

vscode设置terminal的最大行数

今天跑代码出现一个问题,就是整个程序跑完,整个程序的输出信息过多,最开始输出的信息已经被vscode的缓存冲掉了,只能看到最后的一部分,具体的原因是vscode的terminal默认只能保存1000行的信息,所以如果想保…

《WebKit 技术内幕》之四(1): 资源加载和网络栈

第四章 资源加载和网络栈 使用网络栈来下载网页和网页资源是渲染引擎工作的第一步 1.WebKit 资源加载机制 1.1 资源 网页本身就是一种资源、网页还需要依赖很多其他的资源(图片、视频) (1)HTML 支持的资源主要包括以下几种类型: HTML 页…

Elasticsearch 数据类型相关总结:快速参考指南【记录】

在Elasticsearch中,有多种数据类型可用于定义字段。 在开始了解数据类型之前,首先要知道,在Elasticsearch中,分词处理主要针对文本字段,而对于其他类型字段(如数值、日期、布尔等),通…

周五的胡思乱想

众所周知 csdn 在程序员的心目中是比较逊色的, 因为博客水平的参差不齐, 大部分人也都是用来作为自己的笔记方便未来复制。这样就导致这里的文章都是点到为止,没有去深究问题的根本原因,大家也都是复制一下解决方案就关闭的页面。或许这就是 csdn 的价值…

视频直播新时代,低延时直播交互,Web,Android,WebRtc推流拉流测试

直播现在已经深入了生活,学习,工作和娱乐方方面面,由于前些年的技术所限,传统rtmp,flv,m3u8 技术让直播快速启动项目产品,但也有很多不足,特别的交互式直播,一直是其中的痛点,延时较…

Oracle学习笔记——基础一起学 14

第十四天 DECODE的简单例子 用case实现 --DECODE的简单例子 --用case实现 select id,name, case sex when 1 then 男 when 2 then 女 end 性别 from student; --DECODE取出一行内两列中的较大值 --先建表 create table sales(month char(2),sales_tv number,sales_…

C#MQTT编程07--MQTT服务器和客户端(wpf版)

1、前言 上篇完成了winform版的mqtt服务器和客户端,实现了订阅和发布,效果666,长这样 这节要做的wpf版,长这样,效果也是帅BBBB帅,wpf技术是cs程序软件的福音。 wpf的基础知识和案例项目可以看我的另一个专…

Parade Series - RTSP - Web

Cron Startup Scripts └─ lt-init.cmd├─ lt-server.cmd│ └─ lt-rtsp-proxy-server.cmd│ └─ lt-rtsp-proxy-agent.cmd└─ lt-push.cmd└─ lt-rtsp-cam-daemon.cmd└─ lt-rtsp-cam-worker.cmdlt-init.cmd :: :: PLEASE DO NOT EDIT THIS FILE :: ECHO OFF…

Qt —— 编译Qt5版本QFTP库,并实现连接服务、获取列表、上传、下载、删除文件等操作(附源码、附基于Qt5编译好的QFTP库)

示例效果1 示例效果2 介绍 QFTP是Qt4的库,Qt5改用了QNetworkAccessManager来代替。但是Qt5提供的QNetworkAccessManager仅支持FTP的上传和下载,所以只能将QFTP库编译为Qt5的库来进行调用。 QFTP在Github的下载地址:https://github.com/qt/qtftp 客户端源码生成的release结果…

IDEA项目启动报错之Command too long

使用IDEA最新的版本2023-3月份社区版本,启动之前没问题的项目突然报错如下: Error running VipServiceApplication: Error running // VipServiceApplication.Command line is too long. Shorten the command line via // JAR manifest or via a // clas…

运放【之噪声】

电流噪声和电压噪声 我们一般评估噪声,还看对输出端噪声电压的贡献,因为电流乘以电阻等于电压,因此,最终的噪声大小还跟电路中电阻的取值有很大关系。显然,电阻越大,那么噪声电压就越大。反之电阻越小&…

设计模式——建造者模式(Builder Pattern)

概述 建造者模式是较为复杂的创建型模式,它将客户端与包含多个组成部分(或部件)的复杂对象的创建过程分离,客户端无须知道复杂对象的内部组成部分与装配方式,只需要知道所需建造者的类型即可。它关注如何一步一步创建一…

09 STM32 - PWM

9.1 PWM简介 脉冲宽度调制(Pulse Width Modulation,简称PWM),是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术。简单一点,就是对脉冲宽度的控制。 9.2 PWM波原理 如下图所示,使用定时器定时,从0开始&#x…

Ubuntu系统Git的安装配置及使用笔记(更新中)

Ubuntu下Git的下载及配置 (1)、下载git 打开终端命令窗口,输入:sudo apt-get install git 提示:sudo命令是用来以其他身份来执行命令,预设的身份为root,使用sudo时必须先输入密码 (2)、可以使用命令git --version查看git的版本号 (3)、设置…