ansible初识

主要组成部分,相关配置文件

Ansible主要组成部分

ANSIBLE PLAYBOOKS:任务剧本(任务集),编排定义Ansible任务集的配置文件,由Ansible顺序依次执行,通常是JSON格式的YML文件

INVENTORY:Ansible管理主机的清单/etc/anaible/hosts

MODULES:Ansible执行命令的功能模块,多数为内置的核心模块,也可自定义

PLUGINS:模块功能的补充,如连接类型插件、循环插件、变量插件、过滤插件等,该功能不常用

API:供第三方程序调用的应用程序编程接口

ANSIBLE:组合INVENTORY、API、MODULES、PLUGINS的绿框,可以理解为是ansible命令工具,其为核心执行工具

Ansible命令执行来源:

USER,普通用户,即SYSTEM ADMINISTRATOR

CMDB(资产管理系统) API 调用

PUBLIC/PRIVATE CLOUD API调用

USER-> Ansible Playbook -> Ansibile

利用ansible实现管理的方式:

Ad-Hoc 即ansible命令,主要用于临时命令使用场景

Ansible-playbook 主要用于长期规划好的,大型项目的场景,需要有前提的规划

Ansible-playbook(剧本)执行过程:

将已有编排好的任务集写入Ansible-Playbook

通过ansible-playbook命令分拆任务集至逐条ansible命令,按预定规则逐条执行

Ansible主要操作对象:

HOSTS主机

NETWORKING网络设备

注意事项

执行ansible的主机一般称为主控端,中控,master或堡垒机
主控端Python版本需要2.6或以上
被控端Python版本小于2.4需要安装python-simplejson
被控端如开启SELinux需要安装libselinux-python
windows不能做为主控端

相关文件

/etc/ansible/ansible.cfg 主配置文件,配置ansible工作特性

/etc/ansible/hosts 主机清单

/etc/ansible/roles/ 存放角色的目录

程序

/usr/bin/ansible 主程序,临时命令执行工具
/usr/bin/ansible-doc 查看配置文档,模块功能查看工具
/usr/bin/ansible-galaxy 下载/上传优秀代码或Roles模块的官网平台
/usr/bin/ansible-playbook 定制自动化任务,编排剧本工具/usr/bin/ansible-pull 远程执行命令的工具
/usr/bin/ansible-vault 文件加密工具
/usr/bin/ansible-console 基于Console界面与用户交互的执行工具

ansible 配置文件

Ansible 配置文件/etc/ansible/ansible.cfg (一般保持默认)
[defaults]
#inventory = /etc/ansible/hosts # 主机列表配置文件
#library = /usr/share/my_modules/ # 库文件存放目录
#remote_tmp = $HOME/.ansible/tmp #临时py命令文件存放在远程主机目录
#local_tmp = $HOME/.ansible/tmp # 本机的临时命令执行目录
#forks = 5 # 默认并发数
#sudo_user = root # 默认sudo 用户
#ask_sudo_pass = True #每次执行ansible命令是否询问ssh密码
#ask_pass = True
#remote_port = 22
#host_key_checking = False # 检查对应服务器的host_key,建议取消注释

ansible系列命令

Ansible系列命令
ansible ansible-doc ansible-playbook ansible-vault
ansible-console ansible-galaxy ansible-pull
ansible-doc: 显示模块帮助
ansible-doc [options] [module…]
-a 显示所有模块的文档
-l, –list 列出可用模块
-s, –snippet 显示指定模块的playbook片段
示例:
ansible-doc –l 列出所有模块
ansible-doc ping 查看指定模块帮助用法
ansible-doc –s ping 查看指定模块帮助用法

ansible

ansible通过ssh实现配置管理、应用部署、任务执行等功能,建议配置ansible端能基于密钥认证的方式联系各被管理节点
ansible <host-pattern> [-m module_name] [-a args]
–version 显示版本
-m module 指定模块,默认为command
-v 详细过程 –vv -vvv更详细
–list-hosts 显示主机列表,可简写—list
-k, –ask-pass 提示连接密码,默认Key验证
-K, –ask-become-pass 提示输入sudo
-C, –check 检查,并不执行
-T, –timeout=TIMEOUT 执行命令的超时时间,默认10s
-u, –user=REMOTE_USER 执行远程执行的用户
-b, –become 代替旧版的sudo 切换

 

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/91206

(0)
曲吉福曲吉福
上一篇 2018-01-21 20:19
下一篇 2018-01-22 09:02

相关推荐

  • liunx学习第一天知识点-基础知识

    一 计算机组成 1. 冯·诺依曼体系:     1946年数学家冯·诺依曼于提出计算机由五大部分组成:运算器、控制器、存储器、输入设备、输出设备 2. 摩尔定律:     戈登·摩尔于1965年提出来当价格不变时,集成电路上可容纳的元器件的数目,约每隔18-24个月便会增加一倍,…

    Linux干货 2016-07-27
  • 用户和组——Linux基本命令(10)

    1.     用户和组的配置文件 Linux用户和组的主要配置文件: /etc/passwd:用户及其属性信息(名称、UID、主组ID等) /etc/group:组及其属性信息 /etc/shadow:用户密码及其相关属性 /etc/gshadow:组密码及其相关属性   2. /etc/passwd 在Li…

    2017-07-22
  • Linux的用户组和权限(二)

      一、1.passwd 设置密码(类似usermod的用法)       passwd[OPTIONS] UserName:          修改指定用户的密码,仅root用户有权限       …

    Linux干货 2016-08-08
  • echo显示闪烁,screen用法及显示时间的前后

    我们这门今天学习的一些主要内容 标准的命令的格式 命令(COMMAND)  [选项(OPTIONS)….[参数(ARGUMENTS…)] 选项:启用或者关闭命令的某个或某些功能 参数:命令作用的对象,比如文件名,用户名等 首先我们来统计一下学习到的linux的一些基础的命令 who  查询当前用户 hostname 显…

    Linux干货 2016-08-04
  • linux函数和数组定义

    函数介绍:    函数function 是由若干条shell 命令组成的语句块,实现代码重用和模块化编程。    它与shell 程序形式上是相似的,不同的是它不是一个单独的进程,不能独立运行,而是shell 程序的一部分。    函数和shell 程序比较相似,区别在于:   …

    Linux干货 2017-04-02