商务网站建设的调研流程,wordpress 开发实例,莱芜网站快排,wordpress文章循环不带置顶文章自动化运维#xff08;playbook剧本yaml#xff09;
是基于Python开发的配置管理和应用部署工具。自动化运维中#xff0c;现在是异军突起。
Ansible能批量配置#xff0c;部署#xff0c;管理上千台主机#xff0c;类似于Xshell的一键输入的工具#xff0c;不需要每次…自动化运维playbook剧本yaml
是基于Python开发的配置管理和应用部署工具。自动化运维中现在是异军突起。
Ansible能批量配置部署管理上千台主机类似于Xshell的一键输入的工具不需要每次都切换主机进行操作。
只要有一台ansible的固定主机就可以所有节点的操作。 主需要一台主机上配置了ansible。
Ansible是基于模块进行工作只是提供了一种运行的架构执行操作和辨证的事ansible的模块来实现的。
Copy
Service
Ansible默认是通过ssh的密钥对实现通信可以改
Ansible的另一特点所有模块都是幂等性。
幂等性所谓幂等性指的是多次操作或者多次执行行对系统资源的影响是一致的。
Systemctl stop firewalld
Systemctl stop firewalld
Systemctl stop firewalld
只要发现要停止的目标服务已经停止了。后续同样的停止操作不会改变任何结果生么也不做。
Systemctl resart firewalld 每一次操作都会先停再启动。
http get 幂等性
Post多次执行相同的post可能创建多个相同的资源。
Ansible的幂等性决定了你可以放心大胆的使用重复执行某个任务不会对结果产生任何影响绝大多数情况。
Ansible的四大组件
lnventory 主机清单主机组定义ansible可以远程操作的服务器。模块 13个模块常用的通过模块可以实现远程的配置操作。Plugins插件Playbook剧本shell脚本模式yaml格式 Ansible的优缺点
部署较为简单主要在控制主机部署即可被控制主机需要有ssh和pyhon2.5以上版本。基本上Linux都是自带的。
Ansible只能控制Linux系统windows不行。
基于模块工作可以使用任意语言开发模块二次开发。底层架构 环境 配置主机有两种方式
直接声明主机的IP地址主机名/etc/hosts做映射 Ansible的命令格式
Ansible 组名/ip -m 模块名称 -a ‘参数列表执行的命令’ 模块一
Command模块在远程主机执行Linux命令不支持管道符重新定向输出。 Ansible 192.168.233.20 -a ‘ls /opt’
不加-m也就是不声明使用的模块默认就是command模块。
常见参数
Chdir在远程主机上运行命令提前就是command模块 Creates判断指定文件是否存在如果存在不指定后面的操作。 Removes判断指定的文件是否存在如果存在执行后续的命令。 模块二
Shell模块在远程主机执行命令。相当于 远程主机上的shell禁止支持管道符和冲向
在ansible当中多个引号之间要做隔阂 表示逻辑且前一个命令成功才会执行后一个。 表示逻辑或前面都成功与否后面的命令都会执行。 在ansible 192.168.233.30 -m shell -a ‘touch’ /opt/ 123 echo 456 /opt/123 ls /opt cat /opt/123 模块三
cron模块 远程主机设置定时任务
两种状态:present表示添加默认就是添加可以省略 absent表示移除。#absent在整个ansible的语法中都表示移除的 意思删除
分 时 日 月 周
分minute 时hour 日 day 月month 周weekday
job任务执行的命令
name任务计划名称可以不加 删除定时任务 多个几乎任务如果不给名字都是none一但删除none 全部删除不推荐最好加上名字。 模块四
User模块用户管理模块
常用的参数
name:指定用户名必须添加
State present absent 创建用户可以不加 present 删除一定要加 absent
Systemyes | no 标记用户是否是一个程序用户
Uid用户的唯一标识
Group用户的所在组
Create_homeyes | no 。替换用户的家目录 不需要替换用户的家目录可以不写
Password创建用户密码
Comment用户的注释信息可有可无
Removeyes | no 当前删除用户加上removeryes 删除用户的家目录 userdel -r 如果不需要删除家目录。可以不写。 在创建用户时虽然我申明了是一个程序用户但是默认的登录shell如果没有额外的声明还是默认的/bin/bash UID会按照 程序用户来指定。 使用ansible的user模块创建用户时如果创建普通用户可以不加systemno 指定shell类型可以不加默认就是/bin/bash如果创建的是程序用户一定要声明systemyes 声明shell类型 shell/sbin/nlogin 也可以指定UID的方式。给用户分配一个uid. 模块五
Group模块用户组的管理模块
常用参数
Name 必须要有
Gid 设置组的id 先删除组用户