【Linux】ansible批量管理服务器

简介: 文章目录前言一、概述1.1 ansible简介1.2 ansible安装二、剧本

一、概述

1.1 ansible简介

  • 服务没有客户端存在,通过模块对节点服务器进行控制
  • 模块具有幂等性,重复的操作不会报错
  • 能够批量配置、部署、管理上千台主机

1.2 ansible安装

  • 仅需在控制主机安装ansible服务即可(本质是通过ssh进行连接控制)
#安装epel源
yum install -y epel-release
#安装ansible服务
yum install -y ansible
#编辑主机清单配置
vim /etc/ansible/hosts
#生成非对称秘钥
ssh-keygen -t rsa
#传输给节点主机,实现免密登陆
ssh-copy-id root@IP

二、剧本

2.1 剧本组件

组件 释义
tasks 任务
variables 变量
templates 模块(核心)
handlers 处理器
roles 角色

2.2 角色详解

在配置文件:/etc/ansible/hosts总定义角色组
#自定义组
[mysql]
#选择所有组
all
#组合组(多个组在一起)
[组集合名:child]
#设置组变量
[组名:vars]

2.3 剧本语法

2.3.1 基本语法

  • 大小写敏感、大小写不同则含义不同
  • 缩进敏感、用缩进表示层级关系
  • 缩进不允许用tab键、只能识别空格
  • 文本中空格的数量不重要,只要左侧对齐,则层级相同

2.3.2 常用字段

  • remote-user:用什么身份登录
  • tasks:子条目编写角色将要执行的任务
  • become:yes:表示切换用户执行
  • become_user:用户:切换为对应用户进行执行
  • – name:定义下方操作的名称(方便维护)

2.3.4 常用模块

模块 释义
command:命令模块 执行后方的Linux命令
cron:周期任务模块 定义周期性执行任务(相当于crontab -e)
user:用户模块 创建/删除用户
group:组模块 创建/删除组
copy:复制模块 将本机文件复制到其他机器
file:文件模块 对文件进行增删操作
ping:ping模块 检测机器是否正常通信
service:服务模块 配置其他机器是否开机自启等
yum:yum模块 控制机器通过yum安装服务
shell:脚本模块 控制机器使用shell脚本(非幂等性操作)

三、思维导图

相关文章
|
18天前
|
Ubuntu Linux 网络安全
Linux服务器上安装软件
Linux服务器上安装软件
48 2
|
17天前
|
Ubuntu Linux Android开发
termux+anlinux+Rvnc viewer来使安卓手机(平板)变成linux服务器
本文介绍了如何在Android设备上安装Termux和AnLinux,并通过这些工具运行Ubuntu系统和桌面环境。
68 2
termux+anlinux+Rvnc viewer来使安卓手机(平板)变成linux服务器
|
2天前
|
运维 负载均衡 安全
自动化运维:使用Ansible进行服务器配置管理
【10月更文挑战第15天】在本文中,我们将探讨如何利用Ansible这一强大的自动化工具来简化和加速服务器的配置管理工作。通过实际案例和代码示例,我们将展示Ansible如何帮助运维人员高效地进行软件部署、系统更新和日常维护任务,从而提升工作效率并减少人为错误。
|
8天前
|
监控 安全 Java
linux服务器上启动framework应用程序流程
【10月更文挑战第17天】在Linux服务器上启动Framework应用程序需经过准备工作、部署、启动、监控及访问五个步骤。首先确保服务器满足系统要求并安装依赖项;接着上传应用文件,编译构建,配置参数;然后通过脚本、命令行或系统服务启动应用;启动后检查日志,监控性能;最后确认访问地址,验证应用运行状态。具体操作应参照应用文档。
|
8天前
|
运维 Java Linux
【运维基础知识】Linux服务器下手写启停Java程序脚本start.sh stop.sh及详细说明
### 启动Java程序脚本 `start.sh` 此脚本用于启动一个Java程序,设置JVM字符集为GBK,最大堆内存为3000M,并将程序的日志输出到`output.log`文件中,同时在后台运行。 ### 停止Java程序脚本 `stop.sh` 此脚本用于停止指定名称的服务(如`QuoteServer`),通过查找并终止该服务的Java进程,输出操作结果以确认是否成功。
14 1
|
13天前
|
监控 安全 网络协议
快速配置Linux云服务器
【10月更文挑战第3天】快速配置Linux云服务器
|
11天前
|
Linux Shell 数据安全/隐私保护
Linux如何在服务器上进行密码的修改?
【10月更文挑战第6天】Linux如何在服务器上进行密码的修改?
13 1
|
14天前
|
弹性计算 Linux 数据库
阿里云国际版如何迁移Linux云服务器系统盘中的数据
阿里云国际版如何迁移Linux云服务器系统盘中的数据
|
14天前
|
弹性计算 网络协议 Ubuntu
如何在阿里云国际版Linux云服务器中自定义配置DNS
如何在阿里云国际版Linux云服务器中自定义配置DNS
|
15天前
|
运维 应用服务中间件 Linux
自动化运维:使用Ansible管理服务器配置
【10月更文挑战第2天】在现代IT运维中,自动化是提高效率和减少错误的关键。本文将介绍如何使用Ansible这一强大的自动化工具来简化日常的服务器管理工作。我们将从基础讲起,逐步深入到高级应用,展示如何通过编写简单的Playbooks来自动化复杂的配置任务。文章还将探讨Ansible的最佳实践,并分享一些实际案例来说明其在实际工作中的应用。