首页 > 服务器 > Linux服务器 > 正文

深入浅析Linux轻量级自动运维工具-Ansible

2024-09-05 23:04:12
字体:
来源:转载
供稿:网友

转自

Linux轻量级自动运维工具-Ansible浅析 - ~微风~ - 51CTO技术博客

http://weiweidefeng.blog.51cto.com/1957995/1895261

Ansible是什么?

linux,自动运维工具,ansible

ansible架构图

linux,自动运维工具,ansible

ansible特性

模块化:调用特定的模块,完成特定的任务;

基于Python语言研发,由Paramiko, PyYAML和Jinja2三个核心库实现;

部署简单:agentless;

支持自定义模块,使用任意编程语言;

强大的playbook机制;

幂等性;

安装及程序环境:

程序:

ansible

ansible-playbook

ansible-doc

配置文件:

/etc/ansible/ansible.cfg

主机清单:

/etc/ansible/hosts

插件目录:

/usr/share/ansible_plugins/

安装ansible

linux,自动运维工具,ansible

安装依赖包

linux,自动运维工具,ansible

ansible命令的使用:

Usage: ansible <host-pattern> [options]

常用选项:

-m MOD_NAME

-a MOD_ARGS

配置Host Inventory:

/etc/ansible/hosts

[group_id]

HOST_PATTERN1

HOST_PATTERN2

示例:

首先对此文件进行备份操作,以防后面需要用到默认配置文件

linux,自动运维工具,ansible

进入到/etc/ansible/hosts文件,此处绿色光标以下的内容是没有用的,都是示例,可以删除掉,然后添加我们下面实验操作用到的主机。

linux,自动运维工具,ansible

添加一组websrvs服务器,以用于下面的测试

linux,自动运维工具,ansible

测试主机连通性

这里报错是因为实验用的主机交换其他两台主机的公钥/私钥的原因导致的

linux,自动运维工具,ansible

实验SSH免密码登陆设置

生成私钥和公钥ssh-keygen -t rsa -P ''

linux,自动运维工具,ansible

复制公钥文件问authorized_keys

linux,自动运维工具,ansible

把公钥传送到其他主机

linux,自动运维工具,ansible

在68的主机上面可以看见公钥已经传送过来了,并且确认文件的权限是否正确

linux,自动运维工具,ansible

重复以上操作把公钥发送给69的主机

linux,自动运维工具,ansible

然后重新执行ansible的ping模块命令查看该两台主机的连通性

可以发现此时已经成功,那么下面就开始介绍ansilbe的其他模块

linux,自动运维工具,ansible

最后记得利用ansible同步一下所有主机的时间,以免某主机的时间有错误,后面看日志起来会造成混乱

linux,自动运维工具,ansible

ansible模块:

获取模块列表:ansible-doc -l

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

常用模块:

ping模块:探测目标主机是否存活;

linux,自动运维工具,ansible

示例:测试所有的主机的连通性

linux,自动运维工具,ansible

command模块:在远程主机执行命令;

linux,自动运维工具,ansible

示例1:让所有主机同步时间

此处没有给出指定的-m command命令,是因为ansible的模块默认就是command

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表