操作教程|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作业

相关推荐
山河已无恙5 小时前
基于 DeepSeek LLM 本地知识库搭建开源方案(AnythingLLM、Cherry、Ragflow、Dify)认知
开源·知识库·deepseek
AI服务老曹6 小时前
运用先进的智能算法和优化模型,进行科学合理调度的智慧园区开源了
运维·人工智能·安全·开源·音视频
gz927cool6 小时前
大模型做导师之开源项目学习(lightRAG)
学习·开源·mfc
Ainnle8 小时前
企业级RAG开源项目分享:Quivr、MaxKB、Dify、FastGPT、RagFlow
人工智能·开源
我们的五年11 小时前
MySQL 架构
数据库·mysql·开源
CCF ODC12 小时前
2025年第一期 | CCF ODC《开源战略动态月报》
开源
從南走到北12 小时前
挪车小程序挪车二维码php+uniapp
微信小程序·小程序·开源·微信公众平台
ObjectX前端实验室16 小时前
个人网站开发记录-引流公众号 & 谷歌分析 & 谷歌广告 & GTM
前端·程序员·开源
silianpan18 小时前
文档检索服务平台
elasticsearch·搜索引擎·开源
uhakadotcom1 天前
如何为开源项目做贡献
前端·开源