写在前面
- 嗯,准备,学习整理这部分知识
- 所谓自动化配置服务和 络接口,其实是使用配置
- 关于的一些基本操作在一门课中有涉及。
- 博文内容为对操作回顾:
- 的简单概述及环境配置的
- 使用自动化管理配置
- 使用的角色来自动化配置 络接口
傍晚时分,你坐在屋檐下,看着天慢慢地黑下去,心里寂寞而凄凉,感到自己的生命被剥夺了。当时我是个年轻人,但我害怕这样生活下去,衰老下去。在我看来,这是比死亡更可怕的事。——–王小波
利用我们可以实现服务和 络的自动化管理,试想如果有数十台机器搭集群,需要配置、、,如果一台一台配就特别麻烦,而且是需要一个交互环境,即使刷脚本我们也需要一台一台远程去看状态,但是使用就很方便。
Ansible 简述
Ansible概念和架构
是一款的运维自动化工具。基于Python开发,集合了众多运维工具(puppet、cfengine、chef、func、fabric)的优点,只需要将ansible安装在主控机器上,就可以通过SSH协议实现针对大量的。通过实现远程控制,,实现了等功能。
是基于模块工作的,本身没有批量自动化的能力。真正具有批量自动化的是所运行的模块,只是提供一种框架。
为了方便复杂任务(包含大批量任务操作、模板、变量等资源)的重复使用,降低playbook剧本编写难度,提出的概念,所谓角色就是预先定义好的一套目录结构。针对每一个角色,ansible会到固定的目录去调取特定的数据,使用角色时不指定,而是交给调用此角色的剧本来指定.
下面我们来看一个ansible的demo
Ansible Demo
需要配置的和,这里我们已经配置好测试下
对于的所有配置,命令操作,都是在一个指定文件夹下进行的,在执行临时命令或者剧本时会扫描当前工作目录,满足要求才会执行,否则会发出警告。新建目录,编写,主机清单用于指定要控制的主机
:指定操作的主机,是一个配置文件里面定义监控的主机,可以是域名,IP。同时支持分组,表达式等高级特性
当前目录编写,用于指定,连接受管机器的远程的用户名,用户的su 提权等
:管控到受控的ping命令测试
只需要几步,我们就通过control来控制node1机器,当然上面我们省略了ansible装包,配置SSH免密、sudo提权。
上面的命令相当于在Control机器ping node1机器,-m指定模块,默认为command模块
剧本实现服务自动化配置
利用实现服务自动化管理,主要涉及模块:、和,下面我们看一个Demo
通过编写ploybook的方式,用模块实现的自动配置
编写剧本
通过 来检测剧本语法
通过 执行剧本
测试httpd服务
服务自动化常用模块
:用于安装软件包,常用参数
- name:软件名、软件名-版本 、逗 分隔的列表、@组名、*通配符
- state:present、absent,
- list:软件名、installed、available
:用于管理配置Linux防火墙服务 firewalld,常用参数:
- permanent(永久开启)
- port(端口)
- service(服务)、
- source(源端)
- state(状态)
- immediate(立即生效)
: 指令来控制服务的启动/停止/重启、开机自启动状态的设置
- name=服务名 //指定系统服务名(必选参数)
- state=“started|stoped|restarted|reloaded” //启动|停止|重启|重载服务
- enable=“yes|no” //是否开机自启
用于执行基本的系统服务管理
可以提供更多选项,例如。子命令重新加载的是当前。子命令是重新加载 。而存在的。所以需要执行命令的时候
- 新添加 unit 配置文件时需要执行 daemon-reload 子命令
- 有 unit 的配置文件发生变化时也需要执行 daemon-reload 子命令
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!