系统城装机大师 - 固镇县祥瑞电脑科技销售部宣传站!

当前位置:首页 > 网络知识 > 疑难 > 详细页面

自动化运维工具Ansible

时间:2020-02-29来源:电脑系统城作者:电脑系统城

Ansible作用及特点?

协调应用程序生命周期

  • 应用部署
  • 配置管理
  • 工作流程编排

无代理-可预测,可靠,安全

  • 无代理架构
  • 使用OpenSSH通信
  • 无代理维护成本

Ansible架构

自动化运维工具Ansible

USERS:管理员,有两种执行方式,可以通过Ansible执行管理命令批量操作远程主机,也可以通过playbook管理复杂的任务
INVENTORY:保存需要管理主机清单。包括:IP SSH端口 账号密码
API:提供调用接口
MODULES:功能模块,Ansible所有功能都是由模块提供
PLUGINS:插件,Ansible内部核心功能提供


Ansible使用要求

服务端使用要求:
Python 2.6/2.7/3.X
RedHat,Debian,CentOS等,不支持Windows

被管理端要求:
OpenSSH
Python 2.6/2.7/3.X

Ansible配置文件
vi /etc/ansible/ansible.cfg

[defaults]
# some basic default values...
#主机清单配置文件
inventory      = /etc/ansible/hosts
#library        = /usr/share/my_modules/
#module_utils   = /usr/share/my_module_utils/
#remote_tmp     = ~/.ansible/tmp
#local_tmp      = ~/.ansible/tmp
执行任务时的并发数
forks          = 5
#poll_interval  = 15
#sudo_user      = root
#ask_sudo_pass = True
#ask_pass      = True
#transport      = smart
操作远程主机的默认端口
remote_port    = 22
#module_lang    = C
#module_set_locale = False
指纹检查
host_key_checking = False
密钥认证的私钥
private_key_file = /path/to/file

Ansible常用模块

command和shell:执行shell命令,command为默认模块(不支持管道等特殊命令)
copy和file:文件传输
yum:软件包管理
user:用户和组
git:从源代码管理系统中部署
service:管理服务
setup:收集目标主机信息


Playbook使用

Playbook使用YAML作为编排语言,适合配置管理和应用部署
自动化运维工具Ansible

YAML语法
缩进表示层级关系
不支持TAB缩进,使用空格缩进
通常开头缩进2个空格。字符后缩进一个空格,如冒号、逗号等
“---”表示YAML文件的开始,“#”表示注释
Playbook文件结构
gather_facts表示是否收集目标主机信息参数
一个name为一个动作(play)
tasks表示再Playbook中具体要做哪些工作
{{}}表示对变量的引用
notify表示在任务结束时触发
handlers表示由特定条件触发Tasks
tags表示任务控制
register表示注册变量
facts表示系统信息变量
when表示条件控制
Playbook文件调试
1.执行ansible-playbook时添加“--syntax-check”参数
2.debug: msg=
Playbook文件复用
include&import区别
include(动态):在运行时导入
不能使用notify触发来自include内处理程序名称(handlers)
“--list-tags”“--list-tasks”不会显示到输出
import(静态):在Playbook解析时预先导入
不能与循环一起使用
将变量用于目标文件或角色名称时,不能使用inventory中的变量

Roles角色

Roles目录结构
自动化运维工具Ansible
site.yml:统一入口
tasks:包含角色要执行主要任务列表
handlers:包含角色使用的处理程序
defaults:角色默认变量
vars:角色其他变量
files:角色部署时用到的文件
templates:角色部署时用到的模板
meta:角色定义的元数据

分享到:

相关信息

  • 子网掩码怎么填

    很多小伙伴们都在问我们电脑中子网掩码怎么填呢,其实方法很简单的,需要我们首先判断ip地址到底是哪一个类型的然后再填入相对应的地址即可,接下来一起随小编来看一看吧。...

    2023-10-29

  • 电脑显示网络电缆被拔出如何解决方法

    我们在电脑联网的时候,可能会遇到大大小小的问题,其中就包括了显示网络电缆被拔出,这可能是由于本地网线没插好,或者是网络设置出现了问题导致。...

    2023-05-29

系统教程栏目

栏目热门教程

人气教程排行

站长推荐

热门系统下载