都在说自动化运维工具-Ansible搭建第一步~~

Posted 磨链mochain社区

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了都在说自动化运维工具-Ansible搭建第一步~~相关的知识,希望对你有一定的参考价值。

现在很多人都在说运维自动化工具,这里大致介绍下Ansible的一个安装配置过程

Ansible简介

Ansible是一个简单的自动化运维管理工具,基于Python语言实现,由红帽主导。

Ansible最大的特点:无需在被控主机部署任何客户端代理,默认直接通过SSH通道进行远程命令执行或下发配置。

  • Ansible官网:https://www.ansible.com/ 
    在官网中有个Get started,点击可看到教学视频,英语好的伙伴可以简单过一遍,大致明白一个概念。 

  • Ansible-Github:https://github.com/ansible/ansible

  • 中文资料:http://www.ansible.com.cn/

  • 英文文档:https://docs.ansible.com/ansible/latest/index.html

Ansible架构图:

都在说自动化运维工具-Ansible搭建第一步~~

各个功能模块在网上可以查到具体的说明,这里简单是一个环境搭建的分享,功能模块在今后的分享中会具体来说明

Ansible的特点,这个网上可以找到不少,这里大致罗列了一些:

  • 部署简单,只需在主控端部署Ansible环境,被控端无需做任何操作;默认使用SSH协议对设备进行管理。

  • 配置简单、功能强大、扩展性强。

  • 支持API及自定义模块,可通过Python轻松扩展。

  • 通过Playbooks来定制强大的配置、状态管理。

  • 对云计算平台、大数据都有很好的支持

Ansible安装配置(一)

实验环境

笔者在Zstack虚拟化环境上搭建了4台云主机来操作,操作系统版本为Centos7.4

   
     
     
   
  1. 192.168.1.122 jacky1 主管理节点

  2. 192.168.1.123 fisho1 客户端节点

  3. 192.168.1.124 jacky2 客户端节点

  4. 192.168.1.125 fisho2 客户端节点

  • 安装过程中记得配置好/etc/hosts文件,然后关闭Selinux,关闭防火墙。

   
     
     
   
  1. vim /etc/sysconfig/selinux

  2. SELINUX=enforcing 改为 SELINUX=disabled

   
     
     
   
  1. systemctl disable firewalld.service

系统重启。

  • 配置SSH密钥:

在主管理节点中(192.168.1.122 jacky1):

   
     
     
   
  1. ssh-keygen -N ''

  2. yes即可

然后分发密钥:

   
     
     
   
  1. ssh-copy-id root@192.168.1.123

  2. ssh-copy-id root@192.168.1.124

  3. ssh-copy-id root@192.168.1.125

完成后测试: 
都在说自动化运维工具-Ansible搭建第一步~~

  • 安装Ansible:

主管理节点(192.168.1.122 jacky1)通过yum命令安装:

   
     
     
   
  1. yum install ansible -y

过程稍等片刻就好了,安装成功后显示如下: 
都在说自动化运维工具-Ansible搭建第一步~~
都在说自动化运维工具-Ansible搭建第一步~~

配置host文件:

这里配置的不是/etc/hosts,而是:etc/ansible/hosts

   
     
     
   
  1. vim etc/ansible/hosts

  2. 增加客户端设备的IP,并设置为【jacky】组

都在说自动化运维工具-Ansible搭建第一步~~

检查配置文件:

检查/etc/ansible/ansible.cfg中的host_key_checking = False

  • 基本测试:

完成上述过程,其实很简单,那么可以测试是否能运行: 
主节点运行命令:

   
     
     
   
  1. ansible jacky -m command -a "uptime"

显示如下: 
都在说自动化运维工具-Ansible搭建第一步~~

表示目前为止是成功的,关于上述命令,可以参考下命令的说明。

  • 命令说明:

   
     
     
   
  1. ansible -m MOD_NAME -a MOD_ARGS

通过执行:

   
     
     
   
  1. ansible -h

可以看到命令的使用说明:

都在说自动化运维工具-Ansible搭建第一步~~

   
     
     
   
  1. ansible-doc -l 获取模块信息

  2. ansible-doc -s MOD_NAME 获取指定模块的使用帮助

  3. 举例:ansible-doc -s aos_ip_pool

如图:


简单第一步搭建的过程,后续对功能模块和命令再做详细的分解~~


以上是关于都在说自动化运维工具-Ansible搭建第一步~~的主要内容,如果未能解决你的问题,请参考以下文章

自动化运维工具ansible实战第一章

自动化运维工具ansible实战第一章

saltstack自动化运维工具搭建个人笔记

Ansible开发环境搭建

自动化运维—Ansible工具的使用

自动化运维—Ansible工具的使用