ansible-day01-20201023-简单了解-组成部分-安装

运维自动化发展历程及技术应用

Ansible命令使用

Ansible常用模块详解

YAML语法简介

Ansible playbook基础

Playbook变量 tags handlers使用

Playbook模板templates

Playbook条件判断when

Playbook字典with_items

Ansible Roles

运维自动化发展历程及技术应用

On-Premises
本地部署(在家自己做)
IAAS
基础设施即服务(买成品回家做)卖硬件
PAAS
平台即服务(叫外卖)卖操作系统
SAAS
软件即服务(去店里吃)卖一条龙服务-发展趋势-云

云计算运维工程师核心职能

平台架构组建
日常运营保障
性能,效率优化

自动化运维场景

文件传输
命令执行
应用部署
配置管理
任务流编辑

灰度环境

灰度环境:保险起见,先让一部分用户更新功能,待使用没什么问题,再全量发布到所有服务器

常用自动化运维工具

Ansible:python 中小型应用环境
Saltstack:python 一般需要部署agent 执行效率更高
Puppet:ruby 功能强大 配置复杂 重型 适合大型环境

Ansible特性

模块化:调用特定的模块,完成特定任务
有Paramliko,PyYAML,jinja2(模块语言)三个关键模块
支持自定义模块
基于Python语言实现
部署简单,基于python和SSH,agentless
安全,基于OpenSSH
支持playbook编排任务
幂特性:一个任务执行一遍和执行n遍效果一样的,不因重复执行带来意外情况
无需代理不依赖PKI(无需ssl)
可使用任何编程语言写模块
YAML格式,编排任务,支持丰富的数据结构
较强大的多层解决方案

Ansible架构

主机清单
一个一个小模块
playbook 定时执行

Ansible主要组成部分

ansible playbooks 任务剧本
inventory 主机清单
modules 功能模块
plugins 模块功能的补充
api 供第三方程序调用的应用程序编程接口
ansible 组合上面的绿框 可以理解为ansible命令工具 其为核心执行工具

ansible命令执行来源
user 普通用户
cmdb (配置管理数据库)API调用
public/private cloud API调用

利用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不能作为主控端

安装

rpm包安装:epel源
yum install http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm -y
yum clean all
#yum install epel-release -y
yum -y install ansible
编译安装
yum -u install python-jinja2 PyYAML python-paramiko python-babel python-cypto
tar xf ansible-1.5.4.tar.gz
cd ansible-1.5.4
python setup.py build
python setup.py install
mkidr /etc/ansible
cp -r examples/* /etc/ansible
git安装
git clone git://github.com/ansible/ansible.git --recursive
cd ./ansible
source ./hacking/env-setup
pip安装
yum -y install python-pip python-devel
yum -y install gcc glibc-devel zibl-devel rpm-build openssl-devel
pip install --upgrade pip
pip install ansible --upgrade
确认安装 ansible --version

yum -y install ansible
pip3 install -i  https://mirrors.aliyun.com/pypi/simple/ ansible

[root@node1 ansible]# cat ansible.cfg
[defaults]
hostfile=/etc/ansible/hosts
private_key_file = /root/.ssh/id_rsa
remote_user = root
remote_port = 22
host_key_checking = False

[root@node1 ansible]# cat hosts
192.168.0.211
192.168.0.213
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值