让你一看就会,一装就对,一用就赞的运维自动化工具

随着互联网技术的发展和更新,企业部署业务使用的服务器的数量也在成倍的增长,从业务初期的单台或者几台服务器发展到庞大的数据中心,单靠人工已经无法满足在技术、业务、管理等方面的要求,运维的自动化也受到IT 人员越来越多的关注。

让你一看就会,一装就对,一用就赞的运维自动化工具

今天跟大家分享一个能够降低 IT 服务成本的自动化运维工具,帮助你在最短的时间内完成批量系统的配置、部署以及命令的运行!比如:

  • 同时在100台服务器上安装nginx服务,并在安装后启动它们
  • 将某个文件一次性拷贝到100台服务器上
  • 每当有新服务器加入工作环境时,你都要为新服务器部署某个服务,也就是说你需要经常重复的完成相同的工作

让你一看就会,一装就对,一用就赞的运维自动化工具

Ansible统统满足你~

Ansible 是一个配置管理和配置工具,类似于 Chef,Puppet 或 Salt。这是一款很简单也很容易入门的部署工具,它使用 SSH 连接到服务器并运行配置好的任务,服务器上不用安装任何多余的软件,只需要开启 SSH,所有工作都交给 Client 端的 Ansible负责。

Ansible的优点:

  • 轻量级:无需在客户端安装 agent ,并且也不需要启动服务
  • 配置灵活:Ansible 基于 SSH 工作,可使用系统或自定义模块满足更为灵活的需求
  • 语法简洁:配置语言采用 yaml ,用来定义多条任务,语法更为简洁,Ansible简单易懂的自动化语言
  • 允许使用人员在很短的时间内完成自动化项目的部署

让你一看就会,一装就对,一用就赞的运维自动化工具

一张图理解Ansible工作原理

让你一看就会,一装就对,一用就赞的运维自动化工具

PLAYBOOKS:任务剧本(任务集),编排定义Ansible任务集的配置文件,由Ansible顺序依次执行,通常是JSON格式的YML文件

INVENTORY:Ansible管理主机的清单/etc/anaible/hosts

MODULES:Ansible执行命令的功能模块,多数为内置的核心模块,也可自定义,ansible-doc –l 可查看模块

PLUGINS:模块功能的补充,如连接类型插件、循环插件、变量插件、过滤插件等,该功能不常用

API:供第三方程序调用的应用程序编程接口

ANSIBLE:组合INVENTORY、 API、 MODULES、PLUGINS的绿框,可以理解为是ansible命令工具,其为核心执行工具

安装配置

以 CentOS 7.2 在线安装为例

  • 安装 epel 源
wget -O /etc/yum.repos.d/Centos-7.repo http://mirrors.aliyun.com/repo/Centos-7.repo
wget -O /etc/yum.repos.d/epel-7.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum clean all
yum makecache
  • Ansible 安装,准备好 epel 源后通过 yum 在线安装即可
yum -y install ansible

配置与验证

Ansible常用参数

-m 指定执行使用的模块
-u 指定username
-s --sudo
-U --sudo-user
-v 输入执行过程信息
  • 配置SSH秘钥
'''省去后续操作需要输入密码'''
ssh-keygen -N "" -b 4096 -t rsa -C "thisistest" -f /root/.ssh/test.rsa
ssh-copy-id -i /root/.ssh/test.rsa root@192.168.223.130
'''免密码登陆测试'''
ssh -i /root/.ssh/test.rsa root@192.168.223.130
  • host添加
将需要操作的主机信息填写至配置文件中
配置路径:/etc/ansible/hosts
  • 测试
ansible web1 -m command -a "ls /root/" '''查看web1主机组/root 目录下的文件'''

让你一看就会,一装就对,一用就赞的运维自动化工具

让你一看就会,一装就对,一用就赞的运维自动化工具

一看就会,一装就对,一用就赞!

小编之后还会持续更新,喜欢的同学们,记得关注我哦~

让你一看就会,一装就对,一用就赞的运维自动化工具

相关推荐