zoukankan      html  css  js  c++  java
  • 批量搞机(一):ansible简介、ansible安装

    一、ansible简介

    Ansible是2013年推出的一款IT自动化和DevOps软件,目前由Redhat已签署Ansible收购协议。其是基于Python研发,糅合了很多老运维工具的优点实现了批量操作系统配置,批量程序的部署,批量运行命令等功能

    ansible可以让我们实现:

    1. 自动化部署APP
    2. 自动化管理配置项
    3. 自动化的持续交付
    4. 自动化的(AWS)于服务管理

    为什么要选择ansible 

    选择一款配置管理软件总的来说,无外乎从以下几点来权衡利弊:

    1.  学习成本
    2. 使用成本
    3. 编码诧言
    4. 性能
    5. 使用是否广泛

     

    ansible优点:

    仅需要ssh和Python即可使用,无客户端;ansible功能强大,模块丰富,上手容易门槛低,基于python 开发,做二次开发更容易,使用公司比较多,社区活跃。

    ansible缺点: 

    对于几千台、上万台机器的操作,还丌清楚性能、效率情况如何,需要迚一步了解。 

    ansible特性:

    1> 模块化设计,调用特定的模块来完成特定任务

    2> 基于python语言实现

    1. paramiko
    2. PyYAML (半结构化语言)
    3. jinja2

    3> 其模块支持JSON等标准输出格式,可采用任何编程语言重写,部署简单,主从模式工作,支持自定义模块,支持playbook,易于使用,支持多层部署,支持异构IT环境 

    ansible大体执行过程 :

     

    二、ansible安装

    软件依赖关系 :

    对管理主机要求Python 2.6 或 Python 2.7;ansible 使用了以下模块,都需要安装 

    • paramiko
    • PyYAML
    • Jinja2
    • httplib2
    • six 

    对于被托管主机

    •  Ansible默认通过 SSH 协议管理机器
    • 被管理主机要开启 ssh 服务,允许 ansible 主机登录
    • 在托管节点上也需要安装 Python 2.5 戒以上的版本
    • 如果托管节点上开启了SElinux,需要安装libselinux-python

    ansible 可以基于源码运行;源码安装:

      1> pip:需要配置扩展软件包源 extras 

      2> git:

        yum install epel-release
        yum install git python2-pip

      3> pip安装依赖模块

        pip install paramiko PyYAML Jinja2 httplib2 six

    小插曲===>

    初始化虚拟机的方法:

    # cd /var/lib/libvirt/images/
    # rm -rf node?.img     //删除原有的虚拟机镜像
    # for i in node{1..9};do qemu-img create -b source.qcow2 -f qcow ${i};done   //创建几台虚拟机
    # virsh -c qemu:///system
    virsh # start node1
    virsh # console node1
    localhost login:root
    密码:____
    # sed -i 's,192.168.4.253,192.168.4.1,' /etc/sysconfig/network-scripts/ifcfg-eth0
    # cd /etc/yum.repos.d/
    # cat rhel7.repo
    [epel_mirror]
    name=epel
    baseurl=http://mirrors.sohu.com/fedora-epel/7/x86_64/
    enabled=1
    gpgcheck=0
    # cat 163.repo
    [163_mirror]
    name=epel
    baseurl=http://mirrors.163.com/centos/7/os/x86_64/
    enabled=1
    gpgcheck=0 

     <==小插曲

    #########

    ####

  • 相关阅读:
    C++ 课程设计——电梯调度系统
    PAT 1006 Sign In and Sign Out 查找元素
    PAT 1005 Spell It Right 字符串处理
    C++ 词汇表
    四六级分数竟是这样算出来的!交白卷都不会得零分 (转)
    以太坊智能合约部署
    如何设计一个通证经济体系?(转载)
    以太坊上那些暴力“利”的应用(转载)
    geth搭建以太坊私链及常用操作
    ubuntu18.04 安装 QQ
  • 原文地址:https://www.cnblogs.com/baichuanhuihai/p/8474699.html
Copyright © 2011-2022 走看看