自动化运维工具—Ansible-3

简介: 自动化运维工具—Ansible

(8)hostname 模块

//用于管理远程主机上的主机名
ansible dbservers -m hostname -a "name=mysql01"

91253d32550342b3a34ac5e4b6fca3f1.png


(9)ping 模块

//检测远程主机的连通性
ansible all -m ping

efa1b5892bd748c29a81f5510abc3556.png


(10)yum 模块

//在远程主机上安装与卸载软件包
ansible-doc -s yum
ansible webservers -m yum -a 'name=httpd'         #安装服务
ansible webservers -m yum -a 'name=httpd state=absent'    #卸载服务

d7a3daf062ae4166aed7b78f746ec30e.png

74ca76038c0a43148907455ac2d3c538.png

9bf433bda74b40cc91b84a2f15e98c8d.png


fa3b7ceae8e94bd1bb3362243a358627.png


(11)service/systemd 模块

//用于管理远程主机上的管理服务的运行状态
ansible-doc -s service

7d9a7d70645e47d8a1a41b54e080cd8b.png


常用的参数:


参数 说明
name 被管理的服务名称
state=started / stopped / restarted 动作包含启动关闭或者重启
enabled=yes / no 表示是否设置该服务开机自启
runlevel 如果设定了enabled开机自启去,则要定义在哪些运行目标下自启动
ansible webservers -a 'systemctl status httpd'      #查看web服务器httpd运行状态
ansible webservers -m service -a 'enabled=true name=httpd state=started'      #启动httpd服务

9ddd586c179b456784492a17978ebe9f.png

4ccf8d459c3a43eba3f94e5467e304eb.png


(12)script 模块

//实现远程批量运行本地的 shell 脚本
ansible-doc -s script

dbdc316bbd6e47bbb290f1ac3ae75617.png


vim test.sh
#!/bin/bash
echo "hello ansible from script" > /opt/script.txt
chmod +x test.sh
ansible webservers -m script -a 'test.sh'
ansible webservers -a 'cat /opt/script.txt'

beac26cbaaf7403e8eb64011d490b93a.png


97f26b4334dd47dda61d352085628cc1.png

(13)setup 模块

//facts 组件是用来收集被管理节点信息的,使用 setup 模块可以获取这些信息
ansible-doc -s setup
ansible dbservers -m setup        #获取mysql组主机的facts信息
ansible dbservers -m setup -a 'filter=*ipv4'    #使用filter可以筛选指定的facts信息

bff8db4532c547c2a49084f8a6a69a49.png395d7fa87b774dcd9feeb9aae0e2c64c.png

3af2ef7527064891bc46e54be6760dfa.png


四、inventory 主机清单


Inventory支持对主机进行分组,每个组内可以定义多个主机,每个主机都可以定义在任何一个或多个主机组内。


如果是名称类似的主机,可以使用列表的方式标识各个主机。


vim /etc/ansible/hosts
[webservers]
192.168.147.106:2222    #冒号后定义远程连接端口,默认是 ssh 的 22 端口
192.168.147.10[2:5]
[dbservers]
db-[a:f].example.org  #支持匹配 a~f

inventory 中的变量


image.png


(1)主机变量

[webservers]
192.168.147.105 ansible_port=22 ansible_user=root ansible_password=abc1234

(2)组变量

[webservers:vars]     #表示为 webservers 组内所有主机定义变量
ansible_user=root
ansible_password=abc1234
[all:vars]          #表示为所有组内的所有主机定义变量
ansible_port=22

(3)组嵌套

[nginx]
192.168.147.104
192.168.147.105
192.168.147.106
[apache]
192.168.147.10[0:3]
[webs:children]   #表示为 webs 主机组中包含了 nginx 组和 apache 组内的所有主机
nginx
apache

目录
相关文章
|
12天前
|
弹性计算 运维 监控
|
5天前
|
弹性计算 运维 监控
自动化AutoTalk第十一期-应知必会的自动化工具之阿里云配额中心
本次分享主题为“应知必会的自动化工具之阿里云配额中心”,课程围绕三个方面展开:1) 认识配额及其作用;2) 配额管理的意义与方法;3) 阿里云配额中心的功能和使用场景。通过学习,了解如何有效管理和监控配额,避免资源限制影响业务,并实现自动化集成,提升运维效率。
31 10
|
5天前
|
JavaScript Java 开发工具
AutoTalk第十三期-应知必会的自动化工具-阿里云SDK支持策略(一)
AutoTalk第十三期探讨阿里云SDK支持策略,涵盖四大方面:发布策略、版本规范、更新策略及停止支持策略。重点介绍SDK的及时性、完整性、测试覆盖度和版本命名规范;并以Python部分语言版本停止支持为案例,帮助开发者了解维护策略,确保平稳过渡到新版本。
|
6天前
|
算法 安全 Java
自动化AutoTalk第十期:应知必会的自动化工具-阿里云SDK
本期《自动化AutoTalk》第十期聚焦应知必会的自动化工具——阿里云SDK。主要内容分为三部分:1. 阿里云SDK概述,介绍其支持的300多款云产品和8种主流编程语言;2. 快速生成SDK示例,以Java语言为例展示如何通过OpenAPI门户快速生成并下载SDK工程;3. 进阶特性介绍,涵盖签名算法、Endpoint配置、代理设置、HTTPS请求配置、超时机制及异常处理等重要功能。通过这些内容,帮助开发者更高效、安全地使用阿里云SDK。
|
1月前
|
Web App开发 IDE 测试技术
Selenium:强大的 Web 自动化测试工具
Selenium 是一款强大的 Web 自动化测试工具,包括 Selenium IDE、WebDriver 和 Grid 三大组件,支持多种编程语言和跨平台操作。它能有效提高测试效率,解决跨浏览器兼容性问题,进行性能测试和数据驱动测试,尽管存在学习曲线较陡、不稳定等缺点,但其优势明显,是自动化测试领域的首选工具。
210 17
Selenium:强大的 Web 自动化测试工具
|
24天前
|
弹性计算 运维 监控
云资源运维难?阿里云免费工具来帮忙
阿里云推出免费运维工具——云服务诊断,帮助用户提升对云资源的运维效率、降低门槛、减轻负担。其核心功能包括「健康状态」和「诊断」。通过「健康状态」可实时查看云资源是否正常;「诊断」功能则能快速排查网络、配置、安全等问题,并提供修复建议,助您迅速恢复业务。体验评测活动火热进行中,参与即有机会赢取索尼头戴耳机、小米背包等好礼。活动链接:https://developer.aliyun.com/topic/cloud-health。
395 18
|
1月前
|
运维 网络安全 Python
自动化运维:使用Ansible实现批量服务器配置
在快速迭代的IT环境中,高效、可靠的服务器管理变得至关重要。本文将介绍如何使用Ansible这一强大的自动化工具,来简化和加速批量服务器配置过程。我们将从基础开始,逐步深入到更复杂的应用场景,确保即使是新手也能跟上节奏。文章将不包含代码示例,而是通过清晰的步骤和逻辑结构,引导读者理解自动化运维的核心概念及其在实际操作中的应用。
|
1月前
|
运维 Ubuntu 网络协议
自动化运维:使用Ansible进行服务器配置管理
在现代IT架构中,自动化运维已成为提升效率、减少人为错误的关键。本文将介绍如何使用Ansible这一强大的自动化工具来简化和标准化服务器的配置管理过程。通过具体的代码示例和操作步骤,我们将展示如何快速部署应用、管理配置以及自动化日常任务,从而确保环境的一致性和可靠性。
|
3月前
|
机器学习/深度学习 人工智能 运维
构建高效运维体系:从自动化到智能化的演进
本文探讨了如何通过自动化和智能化手段,提升IT运维效率与质量。首先介绍了自动化在简化操作、减少错误中的作用;然后阐述了智能化技术如AI在预测故障、优化资源中的应用;最后讨论了如何构建一个既自动化又智能的运维体系,以实现高效、稳定和安全的IT环境。
98 4
|
3月前
|
运维 Linux Apache
,自动化运维成为现代IT基础设施的关键部分。Puppet是一款强大的自动化运维工具
【10月更文挑战第7天】随着云计算和容器化技术的发展,自动化运维成为现代IT基础设施的关键部分。Puppet是一款强大的自动化运维工具,通过定义资源状态和关系,确保系统始终处于期望配置状态。本文介绍Puppet的基本概念、安装配置及使用示例,帮助读者快速掌握Puppet,实现高效自动化运维。
84 4

热门文章

最新文章