
Ansible自动化运维实战
文章平均质量分 93
本专栏主要是针对 Ansible 自动化运维的实战示例,包含环境准备、主机清单配置、剧本编写和执行等步骤,以实现对多台服务器的软件安装和服务管理为例
hhzz
始终不渝,谦卑吾心。在 JAVA全栈前后端方面耕耘数年,同时也专注于前端流行框架vue 以及移动端 uniapp 和 uincloud 云端一体框架,平常喜欢记录学习博客,也乐于分享自己的学习心得;阿里云专家博主,目前专注重点是 docker 容器技术以及 k8s 集群管理、devops 开发运维和 aigc 大模型应用等;另外在地理信息 GIS 方面也有一定的研究。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Ansible自动化运维实战--通过role远程部署nginx并配置(8/8)
大概意思可以用剧本形象的比喻解释一下:针对webserves组中的所有主机,编写一个叫nginx的角色,里面包括群演files、武术指导handlers、任务主角tasts、模板替身templates和变量道具vars;template模板(金甲模板)是一套灵活的,可扩展,编辑的配置文件,用来推送给各个主机,作为自己的配置模板使用;人生当中总是有你能力所不及的范围,但是如果在你能力所及的范畴内,你尽到了自己全部的努力,那你还有什么可以遗憾呢?检查每个主机的nginx配置,两个变量都是获取变量值。原创 2025-01-26 16:28:00 · 1302 阅读 · 0 评论 -
Ansible自动化运维实战--yaml的使用和配置(7/8)
在 Ansible 中,可以在 YAML 文件里定义变量,然后在剧本中引用这些变量。---- name: 安装Web服务- vars.yml # 引入变量文件tasks:- name: 安装Web服务apt:name: "{{ web_package }}" # 引用变量vars_files:用于引入包含变量定义的 YAML 文件。{{ web_package }}:使用双花括号引用变量。原创 2025-01-24 11:35:40 · 1225 阅读 · 0 评论 -
Ansible自动化运维实战--script、unarchive和shell模块(6/8)
Ansible 的 script 模块允许你在远程主机上运行本地的脚本文件,其提供了一种便捷的方式来执行自定义脚本以实现特定的自动化任务。script模块能把本地脚本复制到远程主机并执行,以此实现复杂的自动化任务。Ansible 的 unarchive 模块用于在远程主机上解压缩归档文件,如 .tar、.tar.gz、.zip 等。把tigerhhzz.tar压缩包解压到主机组中的每台机子中。生活可能不像你想象的那么好,但是也不会像你想象的那么糟。首先在ansible主机中创建一个脚本文件。原创 2025-01-23 15:16:27 · 1780 阅读 · 0 评论 -
Ansible自动化运维实战--fetch、cron和group模块(5/8)
fetch 模块的主要功能是将远程主机上的文件复制到本地控制节点。此模块会保留文件的时间戳和权限信息,并且可以将不同远程主机的文件分别存储到以主机名命名的子目录中,以避免文件冲突。cron 模块用于在远程主机上管理 cron 任务,cron 任务是一种在特定时间间隔自动执行命令或脚本的机制。上述操作是在 webserves 主机或主机组上创建或更新一个名为 gl、GID 为 1010 的用户组。Ansible 的 group 模块用于在远程主机上创建、修改或删除用户组。再次查看,已经没有任务了。原创 2025-01-23 14:53:08 · 1137 阅读 · 0 评论 -
Ansible自动化运维实战--软件包管理模块、服务模块、文件模块和收集模块setup(4/8)
检查 httpd 软件包的当前安装状态:如果 httpd 未安装,Ansible 将使用 yum 安装该软件包的最新版本;通过 service 模块,将 httpd 服务的状态设置为 started,即启动 httpd 服务。Ansible 提供了多种软件包管理模块,用于在不同的操作系统上安装、卸载、更新软件包。在 Ansible 中,服务模块用于管理系统服务,例如启动、停止、重启服务,以及设置服务是否开机自启等操作。用于设置文件或目录的属性,如权限、所有者、链接等,还可以创建或删除文件、目录、软链接。原创 2025-01-23 09:29:47 · 1053 阅读 · 0 评论 -
Ansible自动化运维实战--复制模块和用户模块(3/8)
在上述示例中,Ansible 会将本地/etc/hosts 文件复制到远程 /tmp/2.txt 位置。如果/tmp/2.txt 已经存在,Ansible 会先将其备份为 2.txt.2449.2025-01-22@10:34:51~,然后再进行复制操作。当 backup 参数设置为 true 时,如果复制操作会覆盖远程主机上的现有文件,Ansible 会先将现有的文件备份到一个以 .bak 结尾的文件中。这可以防止意外覆盖重要文件,并提供了一种恢复机制,确保在出现问题时能够回滚到原始文件。原创 2025-01-22 11:35:32 · 1141 阅读 · 0 评论 -
Ansible自动化运维实战--Inventory主机清单(2/8)
Inventory(主机清单)是 Ansible 中一个非常重要的概念,它是一个文件或一组文件,用于存储 Ansible 要管理的所有主机的信息。它允许你对主机进行分组,以便可以根据不同的需求对不同组的主机执行不同的任务。这个清单文件可以使用多种格式,如 INI 格式(默认的 /etc/ansible/hosts 文件使用的格式)或 YAML 格式。可以为每个主机或主机组定义变量,这些变量可以在 Ansible 的 Playbook 中使用,以便根据不同的主机或组进行不同的配置。原创 2025-01-21 10:37:00 · 1021 阅读 · 0 评论 -
Ansible自动化运维实战--服务端安装、环境配置与测试(1/8)
EPEL-release(Extra Packages for Enterprise Linux)是一个软件仓库,它为企业级Linux发行版(如CentOS、RHEL等)提供额外的软件包,ansible服务器安装需要安装epel源,它是ansible服务组件的源地址。至此ansible安装完成!将来通过这个ansible服务器可以发送指令/shell到目标服务器来批量完成运维工作。安装ansible到服务器,使其成为一台ansible自动化运维服务器。查看ansible配置文件,hosts文件和角色列表。原创 2025-01-17 16:35:46 · 726 阅读 · 0 评论