Ansible环境搭建

目录

一.ansible简介

1.特点    

2.ansible系统架构

二,环境搭建 

1.控制端安装ansible自动化工具

        1)配置CentOS-8.5源                

        2)配置扩展源epel

         3)安装python3.9

         4)安装ansible软件工具          

        5)检验ansible安装完成

2.ssh免密登录

        server主机以root身份连接node1主机

        server主机以普通用户身份连接node1主机      


一.ansible简介

1.特点    

    ansible是一款类unix系统中通过python所开发的自由开源的自动化管理工具,能够自动部署软件以及软件配置,是一款无代理(客户端程序)配置语法使用yam及Jinja2模板语言

        1)部署简单,只需在主控端部署ansible环境,被控端无需做任何操作

        2)默认使用ssh协议对设备进行管理

        3)主从集中化管理

        4)配置简单,功能强大,扩展性强

        5)支持API及自定义模块,可通过Python轻松管理

        6)通过playbooks来定制强大的配置,状态管理

        7)对云计算平台,大数据都有很好的支持

        8)支持非root用户管理操作,支持sudo

            文档说明:https://docs.ansible.com

Ansible环境搭建_第1张图片

2.ansible系统架构

Ansible 是基于模块工作的, 本身没有批量部署的能力。 真正具有批量部署的是 Ansible 所运行的模块, Ansible只是提供一种框架。

Ansible 由以下各部分组成:

Ansible环境搭建_第2张图片

组成
• 核心引擎: 即 Ansible,执行工具;一次性或者临时执行的操作都是通过该命令进行。 
• 剧本(playbook): 定义Ansible任务的配置文件,可以将多个任务定义在一个剧本中,Ansible自动执行,剧本执行支持多个任务,可以由控制主机运行多个任务,同时对多台远程主机进行管理。
 主机清单(host inventory): 定义Ansible管理的主机策略,默认是在Ansible的hosts配置文件中定义被管节点
• 核心模块(core modules ): 这些都是Ansible自带的模块。 
• 自定义模块(custom modules): 如果核心模块不足以完成某种功能,可以添加自定义模块。 
• 插件(plugins): 完成模块功能的补充,借助于插件完成记录日志,邮件等功能。 
• 连接插件(connectior plugins) : Ansible 基于连接插件连接到各个主机上,负责和被管节点实现通信。 
Ansible作用对象
Ansible的作用对象,不仅是Linux和非Linux操作系统的主机,同样也可以作用于各类公/私有云、商业/非商业设备的网络设施

 大概流程:

Ansible环境搭建_第3张图片


二,环境搭建 

控制端 192.168.10.100  主机名 server.example.com   nat网络模式

受控端 192.168.10.111              node1.example.com   nat网络模式

            192.168.10.222             node2.example.com   nat网络模式

更改主机名  hostnamectl set-hostname 主机名

关闭防火墙 systemctl disable firewalld

时间同步     timedatectl set-timezone Asia/Shanghai

1.控制端安装ansible自动化工具

        1)配置CentOS-8.5源                

                    Ansible环境搭建_第4张图片

        2)配置扩展源epel

                epel镜像_epel下载地址_epel安装教程-阿里巴巴开源镜像站 (aliyun.com)

                安装epel配置包               

Ansible环境搭建_第5张图片

                将 repo 配置中的地址替换为阿里云镜像站地址

         3)安装python3.9

         4)安装ansible软件工具             

        5)检验ansible安装完成

Ansible环境搭建_第6张图片

ps:配置ansible时使用node1主机完成,后来把server主机与node1主机的ip和主机名更换了  

      centos源配置出问题的可以换别的镜像网站试试,epel下载成功但没包的可以换台虚拟机试试

      安装完成之后恢复原来的本地源,删除centos/epel源,再存个快照

2.ssh免密登录

        server主机以root身份连接node1主机

                1)通过主机名连接(这一步可忽略)

                server主机在 /etc/hosts 中 添加node1主机的ip,主机名实现ip绑定

Ansible环境搭建_第7张图片

                2)ssh通过ip(或主机名)连接node1并输入node1主机root账户密码

Ansible环境搭建_第8张图片                     或者通过主机名连接 Ansible环境搭建_第9张图片                3)server主机生成密钥对

Ansible环境搭建_第10张图片

                4)将公钥发送给node1主机

Ansible环境搭建_第11张图片

                5)完成免密登录 

        

        server主机以普通用户身份连接node1主机      

                1)免密登录过程与root身份登录过程一致,身份切换为普通用户身份操作

                2)普通身份执行特权指令时

                        先在node1主机中 通过 /etc/sudoers 授权                        Ansible环境搭建_第12张图片

                         或者修改组,并将普通用户加入组里(建议用这种方式)

Ansible环境搭建_第13张图片

                 3)普通用户可执行特权指令

                [john2@server ~]$ ssh node1 sudo 指令

你可能感兴趣的:(rhce,ansible,linux)