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

相关推荐
zkmall3 小时前
企业电商解决方案哪家好?ZKmall模块商城全渠道支持 + 定制化服务更省心
大数据·运维·重构·架构·开源
青阳流月13 小时前
1.vue权衡的艺术
前端·vue.js·开源
小小鱼儿小小林13 小时前
免费一键自动化申请、续期、部署、监控所有 SSL/TLS 证书,ALLinSSL开源免费的 SSL 证书自动化管理平台
开源·自动化·ssl
三花AI14 小时前
阿里开源 OmniAvatar:音频驱动数字人模型
开源·资讯
说私域14 小时前
基于开源AI智能客服、AI智能名片与S2B2C商城小程序的微商服务质量提升路径研究
人工智能·小程序·开源
蚂蚁数据AntData14 小时前
从性能优化赛到社区Committer,走进赵宇捷在Apache Fory的成长之路
大数据·开源·apache·数据库架构
阿里云云原生15 小时前
Spring AI Alibaba 游乐场开放!一站式体验AI 应用开发全流程
开源
NocoBase16 小时前
为什么越来越多 Airtable 用户开始尝试 NocoBase?
低代码·开源·资讯
算家计算16 小时前
4 位量化 + FP8 混合精度:ERNIE-4.5-0.3B-Paddle本地部署,重新定义端侧推理效率
人工智能·开源
于顾而言16 小时前
【开源品鉴】FRP源码阅读
后端·网络协议·开源