ansible_learning_day01

本文是Ansible学习的第一部分,首先介绍了环境准备,包括下载、解压、打开虚拟机、设置远程连接等步骤。然后概述了Ansible的基本概念、特性、优点和应用领域,讲解了其无代理、基于SSH的架构,并提到了与其他自动化工具的对比。最后,简要提及了Ansible的安装流程。
摘要由CSDN通过智能技术生成

一、环境准备

1、下载环境

链接:https://pan.baidu.com/s/13ZDwium6M8EAYfb27WEsMA
​提取码:q8a4

2、解压

windows下使用7-zip解压,建议有100G空间,最好解压到固态硬盘。
在这里插入图片描述

3、打开

方法1:鼠标双击文件:RH294.vmx
​方法2:vmware workstaion–【文件】–【打开】–RH294.vmx

4、远程连接

xshell或者MobaXterm

​ 给windows的虚拟网卡:VMware Network Adapter VMnet1
​ 增加一个IP地址:172.25.254.1/255.255.255.0,不需要网关
​ 远程连接:
​IP:172.25.254.250 kiosk/redhat

ping 172.25.254.250

5、设置课程环境

[kiosk@foundation0 ~]$ rht-setcourse rh294

6、启动课程环境

启动classroom:[kiosk@foundation0 ~]$ rht-vmctl start classroom(只需要启动第一次,下次不用启动)
		启动其他机器:[kiosk@foundation0 ~]$ rht-vmctl start all
		查看状态:[kiosk@foundation0 ~]$ rht-vmctl status all
					bastion RUNNING
					workstation RUNNING
					servera RUNNING
					serverb RUNNING
					serverc RUNNING
					serverd RUNNING
					[kiosk@foundation0 ~]$ rht-vmctl status classroom
					classroom RUNNING	
		重置虚拟机:[kiosk@foundation0 ~]$ rht-vmctl reset all
    	重置虚拟机(重新下载虚拟机文件):[kiosk@foundation0 ~]$ rht-vmctl fullreset  	

7、补充

注意:重新开机之后,只需要执行 rht-vmctl start all
	 ssh student@workstation`

扩展内容:

​ kvm虚拟化技术

 [kiosk@foundation0 ~]$ virt-manager 图形化管理虚拟机

二、简介和安装

1、简介

ansible是新出现的自动化运维工具,基于python开发,集合了众多老牌运维工具(puppet、cfengine、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。

​ ansible是基于模块工作的,本身没有批量部署的能力。真正具有批量部署的是ansible所运行的模块,

ansible只是提供一种框架。主要包括:

(1)连接插件connection plugins:负责和被管控端实现通信;

(2)host inventory:指定操作的主机,是一个配置文件里面定义管控的主机;

(3)各种模块核心模块、command模块、自定义模块;

(4)借助于插件完成记录日志邮件等功能;

(5)playbook:剧本执行多个任务时可以被管控端一次性运行多个任务。

https://www.ansible.com/

https://docs.ansible.com/ansible/latest/index.html

ansible中文权威指南:

https://ansible-tran.readhedocs.io/en/latest

2、ansible特性

1、no agents:不需要在被管控主机上安装任何客户端;

2、no server:无服务器,使用时直接运行命令即可;

3、modules in any languages:基于模块工作,可使用任意语言开发模块;

4、yaml,no code:使用yaml语言定制剧本playbook;

5、ssh by default:基于ssh工作;

6、strong multi-tier solution:可实现多级指挥。

3、ansible优点

1、轻量级,无需在客户端安装agent,更新时,只需要在操作机上进行一次更新即可;

2、批量任务执行可以写成脚本,而且不用分发到远程就可以执行;

3、使用python编写,维护更简单,ruby语法过于复杂;

4、支持sudo。

4、应用领域

ansible的编排引擎可以出色地完成配置管理、流程控制、资源部署等多方面工作。

1、配置管理

2、服务即时开通

​ 这个领域的工具主要是在数据中心、虚拟化环境、云计算中快速开通新的主机。

3、应用部署

​ 这个领域的工作重点关注如何尽可能地零停机部署应用。

4、流程编排

​ 流程编排主要是进行部署时候如何保证基础架构中的各种组件协调一致。

5、ansible架构图

img
引用于https://www.cnblogs.com/keerya/p/7987886.html

●核心引擎:即ansible;

●核心模块(core modules):这些都是ansible自带的模块。

●自定义模块(custom modules):如果核心模块不足以完成某种功能,可以添加自定义模块。

●插件(plugins):完成模块功能的补充,借助于插件完成记录日志、邮件等功能。

●剧本(playbook):定义ansible任务的配置文件,可以将多个任务定义在一个剧本中,由ansible自动执行,剧本执行支持多个任务,可以由控制主机运行多个任务,同时对多台远程主机进行管理。

●playbook是ansible的配置,部署和编排语言,可以描述一个你想要的远程系统执行策略,或一组步骤的一般过程。

●连接插件(connectior plugins):ansible基于连接插件连接到各个主机上,复杂和被管控节点实现通信。

●主机清单(host inventory):定义ansible管理的主机策略,默认是在ansible的hosts配置文件中定义被管节点。

6、ansible任务执行流程

在这里插入图片描述

7、ansible和其他自动化工具比较

在这里插入图片描述

eg:

在这里插入图片描述

8、安装ansible

epel扩展源:ansible

重要:

如果您运行红帽企业Linux8,ansible 2.8可以自动使用platform-python软件包,该软件包支持使用python的系统实用程序。您不需要从AppStream安装python36或python27软件包。

[root@controlnode ~]# yum installed platform-python

Loaded plugins:langpacks,search-disabled-repos

Installed Packages

platform-python.x86_64             3.6.8-2.el8_0              @anaconda
[student@workstation ~]$ sudo yum list | grep ansible

sudo passwd for student:student

[student@workstation ~]$ sudo yum install ansible -y


rpmfind.net

[root@node6 ~]# wget -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epl-7.repo

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值