Ansible:
运维工作:系统安装(物理机、虚拟机)--> 程序包安装、配置、服务启动 --> 批量操作 --> 程序发布 --> 监控
OS Provisioning:
物理机:PXE、Cobbler
虚拟机:Image Templates
Configration:
puppet (ruby)
saltstack (python)
chef
cfengine
Command and Control:
fabric、func、capistrano
预发布验正:
新版本的代码先发布到服务器(跟线上环境配置完全相同,只是未接入到调度器);
程序发布:
不能影响用户体验;
系统不能停机;
不能导致系统故障或造成系统完全不可用;
灰度发布:
发布路径:
/webapp/tuangou-1.1
/web/app/tuangou
/webapp/tuangou-1.2
在调度器上下线一批主机(maintanance) --> 关闭服务 --> 部署新版本的应用程序 --> 启动服务 --> 在调度器上启用这一批服务器;
自动化灰度发布:脚本、发布平台;
运维工具的分类:
agent: puppet, func
agentless: ansible, fabric
ssh
ansible:
模块化,调用特定的模块,完成特定的任务;
基于Python语言实现,由Paramiko、PyYAML和Jinja2三个关键模块;
部署简单,agentless;
主从模式
支持自定义模块
支持Playbook
幂等性:
配置文件:
/etc/ansible/ansible.cfg
/etc/ansible/hosts
原文地址:http://blog.51cto.com/zhanx/2344687
时间: 2024-11-07 23:27:47