Ansible介绍(2)

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

猜你喜欢

转载自blog.51cto.com/zhanx/2344687