ansible 使用

1.ansible基础

1.1什么是ansible

ansible 是推出的一款IT自动化和DevOps软件
ansible 是基于Python研发,糅合好的老运维工具的优点,实现了批量操作系统配置,批量程序部署,批量运行命令等功能
ansible可以实现
自动化部署APP
自动化管理配置项
自动化持续交付
自动化(AWS)云服务管理

1.2 ansible的优点

在这里插入图片描述

1.3ansible 的特性

模块化设计 调用特定的模块完成特定任务
基于Python语言实现huanjhuanj
-paramiko
-PyYAML(半结构化语言)
-Jinja2
其模块支持JSON等标准输出格式,可以采用任何编程语言重写

部署简单@[toc]@[toc]@[toc]
主从模式工作
支持自定义模块
易于使用
支持多层部署
支持异构IT环境

1.4工作流程

在这里插入图片描述

1.5ansible 命令基础

ansible 主机集合 -m 模块名称 -a 模块参数

  • 主机集合 主机名或分组名,多个使用"逗号"分隔
  • -m 模块名称,默认command模块
  • -a or --args 模块参数
  • 其他参数
    -i inventory文件路径,或可执行脚本
    -k 使用交互式登录密码
    -e 定义变量
    -v 显示详细信息
ansible all --list-hosts 列出要执行的主机
ansible all -m ping -k 批量检测主机
创建一对秘钥
cd /root/.ssh
ssh-keygen -t rsa -b 2048 -N '' -f key

ssh-copy-id -i key.pub 主机名称  给所有主机部署秘钥

1.6 inventory 扩展参数

参数说明
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

子组定义
[app:children]
web
db
变量引用
[other]
cache ansible_ssh_port=222 ssh 端口改变
[all:vars]
ansible_ssh_private_key_file="/root/.ssh/key" 定义公钥

在这里插入图片描述

1.7动态主机

在这里插入图片描述

2批量配置管理

2.1 ansible-doc 和ping模块

ansible-doc

  • 模块的手册相当于与shell的man 很重要
  • ansible-doc -l 列出所有模块
  • ansible-doc modulename 查看帮助

ping模块

  • 测试网络连通性,ping模块没有参数
  • 注 测试ssh 的连通性
  • ansible host-pattern -m ping

2.2command 模块


command 是默认的 可以用
ansible all -a ‘命令’
在这里插入图片描述

2.3shell 模块

在这里插入图片描述
shell 模块范围广

2.4script 模块

在这里插入图片描述

2.5 yum模块

yum模块
使用yum包管理器来管理软件包
name : 要进行操作的软件包名字
state : 动作 (installed , removed)
install === installed
remove ==== removed

ansible db -m yum -a 'name=包名(mariadb-server)  state=installed'
给所有db主机安装mariadb

ansible db -m yum -a 'name=lrzsz state=removed'
给所有db主机删除lrzsz

2.6service 模块

在这里插入图片描述

2.7copy模块

在这里插入图片描述
在这里插入图片描述

复制文件
ansible all -m copy  -a 'src=/etc/resolv.conf dest=/etc/resolv.conf '
复制文件夹
ansible all -m copy -a 'src=/etc/yum.repos.d dest=/etc/'

2.8 lineinfile 模块

在这里插入图片描述

2.9 replace 模块

在这里插入图片描述

2.10 setup 模块

setup 模块
主要用于获取主机信息 playbooks里经常会用的另一个参数 gather_facts与该模块相关 setup模块经常用的是filter 参数

ansible db -m setup 
全部信息
ansible cache -m setup -a 'filter=ansible_distribution'
filter 过滤所需信息
```bash
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值