操作教程|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: all
  vars:
  remote_user:
 
  tasks:
  - name: 关闭防火墙
    service: name=firewalld state=stopped enabled=no
  
  - name: 关闭selinux
    lineinfile:
      dest: /etc/selinux/config
      regexp: "^SELINUX="
      line: "SELINUX=disabled"
   
  - name: 即时生效
    shell: setenforce 0 ; swapoff -a
  
  - name: 关闭swap
    lineinfile:
      dest: /etc/fstab
      regexp: ".*swap"
      line: ""
  
  - name: 拷贝时区
    copy: src=/usr/share/zoneinfo/Asia/Shanghai dest=/etc/localtime
  
  - name: 更新源
    shell: yum repolist
   
  - name: 安装lrzsz
    yum: name=lrzsz 
  
  - name: 安装net-tools
    yum: name=net-tools 
  
  - name: 安装wget
    yum: name=wget 
  
  - name: 安装gcc
    yum: 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作业

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

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

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

MCM备赛笔记——熵权法

Key Concept 熵权法是一种基于信息熵概念的权重确定方法,用于多指标决策分析中。信息熵是度量信息量的不确定性或混乱程度的指标,在熵权法中,它用来反映某个指标在评价过程中的分散程度,进而确定该指标的权重。指标的分散程度越高…

[C#]winform部署openvino调用padleocr模型

【官方框架地址】 https://github.com/PaddlePaddle/PaddleOCR 【算法介绍】 OpenVINO和PaddleOCR都是用于计算机视觉应用的工具,但它们有不同的特点和用途。OpenVINO是一个由Intel开发的开源工具套件,主要用于加速深度学习推理,而PaddleOC…

Javaweb之SpringBootWeb案例员工管理之删除员工的详细解析

3.3 删除员工 查询员完成之后,我们继续开发新的功能:删除员工。 3.3.1 需求 当我们勾选列表前面的复选框,然后点击 "批量删除" 按钮,就可以将这一批次的员工信息删除掉了。也可以只勾选一个复选框,仅删除一…

【开源】基于JAVA语言的免税店商城管理系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、系统设计2.1 功能模块设计2.2 研究方法 三、系统展示四、核心代码4.1 查询免税种类4.2 查询物品档案4.3 新增顾客4.4 新增消费记录4.5 审核免税 五、免责说明 一、摘要 1.1 项目介绍 基于JAVAVueSpringBootMySQL的免税店商城管理系…

代码之外:工程师的成长进阶秘籍

程序员只懂技术能行吗? 为什么说技术人员“说”和“写”总得擅长一个? 你以为的“关注结果”是真的结果吗? 从一线工程师跃升团队管理者一共分几步? 在不断变化的职场环境中,技术人如何保持竞争力并实现自我增值&a…

【消息队列】RocketMQ 生产和消费中的集群模式和广播模式

在消息队列系统中,生产者和消费者的模式通常包括集群模式和广播模式。这两种模式分别用于不同的场景,具有不同的特点和优势。 1. 集群模式(Cluster Mode): 在集群模式下,多个相同角色的实例组成一个集群&…

精品量化公式——“筹码动态”,筹码动态改进版,增加了三个买点信号标识

不多说,直接上效果如图: ► 日线表现 代码评估 技术指标代码评估: 散筹估算: 使用EMA(指数移动平均)方法计算(WINNER(C*1.1)-WINNER(C*0.9))*70的3日均线,用黄色粗线表示。这是用于估算市场中散户投资者的…

三维重建(3)--单视几何

目录 一、无穷远点、无穷远线、无穷远平面 1、2D平面上的无穷远问题 2、3D平面上的无穷远问题 二、影消点与影消线 1、2D平面上的无穷远点,无穷远线变换 2、影消点 3、影消线 三、单视重构 1、两平行线夹角与影消线关系 2、单视图标定 一、无穷远点、无…

Vue3 在 history 模式下通过 vite 打包部署白屏

Vue3 在 history 模式下通过 vite 打包部署后白屏; 起因 hash 模式 url 后面跟个 # 强迫症犯了改成了 history,就此一波拉锯战开始了 ... 期间 nigix 和 router 各种反复排查尝试最终一波三折后可算是成功了 ... Vue官方文档 具体配置可供参考如下: 先简要介绍下,当前项目打包…

【网站项目】331基于jsp的超市库存商品管理系统

🙊作者简介:多年一线开发工作经验,分享技术代码帮助学生学习,独立完成自己的项目或者毕业设计。 代码可以私聊博主获取。🌹赠送计算机毕业设计600个选题excel文件,帮助大学选题。赠送开题报告模板&#xff…

paramiko 、netmiko抛出 No existing session的解决方法。

写这篇文章,是因为我在H3C交换机上很正常的代码,可以ssh登录,但huawei交换机上失败,用CSDN上的文章关于allow_agentFalse,look_for_keysFalse 处理还是失败后,找相关的一些帖子总结的必须修改paramiko的源代码文章。 如…

Mysql:重点且常用的 SQL 标签整理

目录 1 <resultMap> 标签 2 <sql> 标签 3 <where> 标签 4 <if> 标签 5 <trim> 标签 6 <foreach> 标签 7 <set> 标签 1 <resultMap> 标签 比如以下代码&#xff1a; <resultMap type"SysCollege" id&qu…

【2024.1.19练习】B:01串的熵

B: 01串的熵&#xff08;5分&#xff09; 问题描述 对于一个长度为23333333的01串&#xff0c;如果其信息熵为11625907.5798&#xff0c;且0 出现次数比1 少&#xff0c;那么这个01 串中0出现了多少次&#xff1f; 我的代码&#xff1a; 注意调用<cmath>以便于对数运算…

Android-三方框架的源码

ARouter Arouter的整体思路是moduelA通过中间人ARouter把路由信息的存到仓库WareHouse&#xff1b;moduleB发起路由时&#xff0c;再通过中间人ARouter从仓库WareHouse取出路由信息&#xff0c;这要就实现了没有依赖的两者之间的跳转与通信。其中涉及Activity的跳转、服务prov…

2024 Move开发者大会在上海圆满落幕,第三期星航计划启动

*以下文章来源于MoveFuns &#xff0c;作者MoveFuns 至各位Mover&#xff1a; 2024 Move DevConfShanghai 圆满成功。在这次盛会上&#xff0c;我们围绕着Move生态关键的一年这一主题进行了深入的讨论和交流。 以下是本次会议的总结回顾&#xff1a; 大会盛况 本次大会在上…

大模型学习与实践笔记(九)

一、LMDeply方式部署 使用 LMDeploy 以本地对话方式部署 InternLM-Chat-7B 模型&#xff0c;生成 300 字的小故事 2.api 方式部署 运行 结果&#xff1a; 显存占用&#xff1a; 二、报错与解决方案 在使用命令&#xff0c;对lmdeploy 进行源码安装是时&#xff0c;报错 1.源…

innoDB存储引擎

1.逻辑存储结构 行数据->行->页->区->段->表空间 表空间(ibd文件)&#xff0c;一个mysql实例可以对应多个表空间&#xff0c;来存储记录&#xff0c;索引等数据。 段&#xff1a;分为数据段和索引段&#xff0c;回滚段&#xff0c;数据段就是B树的叶子节点&am…

神器yakit之web fuzzer功能

前言 yakit并不像burp一样单独设置爆破模块&#xff0c;但是yakit也是可以爆破的&#xff0c;并且更好用&#xff08;个人感觉&#xff09;。 手工测试场景中需要渗透人员对报文进行反复的发送畸形或者特定的payload进行查看服务器的反馈并以此来进行下一步的判断。 Fuzz标签便…