Ansible入门
Ansible是一个同时管理多个远程主机的软件(任何可以通过SSH协议登录的机器),因此Ansible可以管理远程虚拟机、物理机,也可以是本地主机(linux、windows)。 Ansible通过SSH协议实现管理节点、远程节点的通信。 ansible作为运维自动化的核心软件之一,可以让我们把双手从机械性的重复劳动中解放出来,简单快捷的管理大量主机。 Ansible的安装和部署 安装Ansible软件 配置好了软件源后可以使用一条命令安装: yum install ansible libselinux-python -y 查看Ansible版本 ansible --version ansible 2.9.27 config file = /etc/ansible/ansible.cfg configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/
Ansible是一个同时管理多个远程主机的软件(任何可以通过SSH协议登录的机器),因此Ansible可以管理远程虚拟机、物理机,也可以是本地主机(linux、windows)。
Ansible通过SSH协议实现管理节点、远程节点的通信。
ansible作为运维自动化的核心软件之一,可以让我们把双手从机械性的重复劳动中解放出来,简单快捷的管理大量主机。
Ansible的安装和部署
安装Ansible软件
配置好了软件源后可以使用一条命令安装:
查看Ansible版本
配置Ansible主机清单
修改/etc/ansible/hosts文件
清单模式
主机清单有两种模式,一种是分组清单,一种是普通清单(无分组)。
分组清单:
普通清单就是把组标号去掉。
清单不仅仅支持IP,也支持域名,如:
范围匹配模式
这意味着将web-7.example.com,web-8.example.com,web-9.example.com都加入清单中。
Ansible主机登录认证
基于密码认证
在hosts文件中增加登录参数配置;有以下几个参数:
修改后如下:
通用变量配置
如果当前清单中有多个主机组,而每个主机组的参数配置都一样,则可以使用通用配置,免去在每个主机后面加上参数配置。如:
[web:vars]中的配置将自动用于所有web组下的主机。
基于免密登录
在使用ansible前通过ssh-keygen和ssh-copy-id两条命令将本机秘钥发送至目标主机,由此实现免密登录,这样就无需再对登录密码进行配置。
ansible-doc 命令
该命令是ansible的说明文档命令,可以通过此命令查看ansible支持的模块,具体模块的使用方法等。
查看ansible支持的所有模块
查看具体某个模块的用法,以command模块为例
Ansible执行命令结果(状态颜色)
Read Next
使用Terraform在Ubuntu中部署KVM虚拟机
使用Terraform部署KVM虚拟机的详细流程
MySQL/Redis相关面试题
数据库运维(MySQL和Redis)的面试题总结
事件源模式和传统数据库方法在数据管理上的优劣分析
对事件源模式和传统数据库方法在应用程序性能影响、性能、扩展性和可靠性的分析;以及云原生环境下数据管理的最佳实践
关于Metrics_server在自托管环境下无法使用的问题
修复kubernetes的metrics server在自托管环境下因缺少CA证书而无法运行的问题。