Ansible环境搭建,CentOS 系列操作系统搭建Ansible集群环境

Ansible是一种自动化工具,基于Python写的,原理什么的就不过多再说了,详情参考:https://www.itwk.cc/post/403.html
https://blog.csdn.net/qq_34185638/article/details/131079320?spm=1001.2014.3001.5502

环境准备

HOSTNAMEIPOS
master.example.com10.5.5.132CentOS Stream 8 Mini Install
node1.example.com10.5.5.133CentOS Stream 8 Mini Install
node2.example.com10.5.5.134CentOS Stream 8 Mini Install

此次实验将会用到三台主机,一台作为控制节点,两台作为被管理节点(受控主机)

配置主机名

image-20230730223006054

关闭SELINUX

setenforce 0 && sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config

image-20230730223317597

配置本地域名解析(管理节点执行)

/etc/hosts文件中添加被管理节点的 ip+fqdn,直接用IP也可以,但是不易于管理,使用fqdn可以使用这些名称来标识和操作主机,而不必依赖于IP地址。


127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
10.5.5.133  node1 node1.example.com
10.5.5.134  node2 node2.example.com

配置免密登录

配置免密登录,实现控制节点无需输入密码的情况下通过SSH协议连接到被管理节点。

生成RSA密钥对

ssh-keygen -t rsa

image-20230730224131989

将公钥复制到远程服务器

ssh-copy-id [username]@server

image-20230730224332247

验证

image-20230730224530216

安装Ansible

在控制节点安装Ansible

安装epel源,(官方仓库没有提供ansible相关rpm包)

yum -y install epel-release

安装ansible

yum -y install ansible

安装完成之后执行ansible --version判断是否正常使用。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-47p6DJr8-1691378563875)(C:\Users\22065\AppData\Roaming\Typora\typora-user-images\image-20230730225130690.png)]

配置Ansible

安装完毕之后,默认的配置文件位置在/etc/ansible目录下,其中含有ansible.cfg 配置文件,hosts默认主机清单,roles角色目录,接下来需要进行修改ansible,cfg配置文件

使用文本编辑工具打开ansible.cfg 内容如下:

image-20230730225715528

意思就是说,从 Ansible 2.12 版本开始,你可以使用 ansible-config init 命令生成一个示例的配置文件。使用 --disabled 参数将生成一个包含所有默认设置的注释文件,这意味着所有设置都被禁用并以注释形式显示。你可以将输出重定向到 ansible.cfg 文件中,以便稍后进行编辑和使用,也可以在Ansible的GitHub仓库中的stable分支中查找示例。

以上仅供了解,推荐直使用GitHub的仓库上的ansible.cfg配置文件,因为ansible-config init 命令生成的配置文件是一个示例文件,包含了所有默认设置,并将这些设置以注释的形式展示出来,生成的配置文件并不是一个完整的、可用的配置文件,因为它将所有的设置都禁用了(通过添加注释)。这样做是为了确保在生成的配置文件中没有任何潜在的影响或冲突。

而在 GitHub 上的 Ansible 仓库中的示例配置文件是一个更完整的配置文件,它包含了一些常用的配置选项和示例值。这个示例配置文件是为了给用户提供一个起点,可以根据自己的需求进行修改和定制。

下载配置文件:

cd /etc/ansible
rm -rf ansible.cfg
wget https://github.com/ansible/ansible/blob/stable-2.9/examples/ansible.cfg

如果没有wget命令的话使用yum -y install wget 安装。

编辑示例配置文件,以下是我们要配置的地方;

image-20230730232152157

image-20230730232217060

image-20230730232233716

image-20230730232326421

inventory = /etc/ansible/hosts#指定 Ansible 的主机清单文件的路径。默认情况下,Ansible 使用 /etc/ansible/hosts 文件作为主机清单,其中包含了要管理的远程主机的列表sudo_user = root #指定在执行远程命令时要使用的 sudo 用户设置为 root,表示使用 root 用户执行命令ask_pass = False#指定是否询问密码,设置为 False,表示不询问密码,因为已经做了免密登录了roles_path = /etc/ansible/roles#指定 Ansible 角色的路径,Ansible 角色是一种组织和重用任务和变量的机制,后面会讲到,在这个示例中,默认为 /etc/ansible/rolesremote_user = root #指定远程主机的登录用户名,设置为 root,表示使用 root 用户登录远程主机become = True#指定是否启用特权升级(become),特权升级允许 Ansible 在远程主机上以不同的用户身份执行命令。在这个示例中,设置为 True,表示启用特权升级become_method = sudo#指定特权升级的方法。这里设置为 sudo,表示使用 sudo 命令进行特权升级become_user = root # 指定特权升级后要切换到的用户,设置为 root,表示特权升级后切换到 root 用户become_ask_pass = False #指定是否询问特权升级密码, False,表示不询问特权升级密

配置文件修改完成之后,需要创建主机清单文件,Ansible inventory 主机清单写法详解请参考:https://www.itwk.cc/post/430.html

编辑主机文件/etc/ansible/hosts

[servers]
node1.example.com
node2.example.com

测试ansible是否可以与被管理节点通信

使用ping模块检查与被管理节点连通性

image-20230730234121261

使用adhoc方式执行临时命令

image-20230730234208728

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/80091.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大后台,小前台——组合式创新加速推进产教融合

2023年8月1日,由成都知了汇智科技有限公司组织召开的“2023产教融合项目推进闭门研讨会”于成都市高新区软件园G8区7楼正式举行,本次会议基于“产业链的用人需求、资本链的回报诉求、服务链的价值要求、教育链的延伸需求”进行交流探讨,形成稳…

Java-认识String

目录 一、String概念及创建 1.1 String概念 1.2 String的创建 二、String常用方法 2.1 String对象的比较 2.2 字符串查找 2.3 转化 2.4 字符串替换 2.5 字符串拆分 2.6字符串的截取 2.7 其他操作方法 2.8 字符串修改 三、面试题 一、String概念及创建 1.1 String概念 Java中…

2023上半年手机及数码行业分析报告(京东销售数据分析)

2023年上半年,手机市场迎来复苏,同环比来看,销量销额纷纷上涨。 而数码市场中,各个热门品类表现不一。微单相机及智能手表同比去年呈现增长态势,而笔记本电脑市场则出现下滑。 基于此现状,鲸参谋发布了20…

Git Submodule 更新子库失败 fatal: Unable to fetch in submodule path

编辑本地目录 .git/config 文件 在 [submodule “Assets/CommonModule”] 项下 加入 fetch refs/heads/:refs/remotes/origin/

AWS Amplify 部署node版本18报错修复

Amplify env:Amazon Linux:2 Build Error : Specified Node 18 but GLIBC_2.27 or GLIBC_2.28 not found on build 一、原因 报错原因是因为默认情况下,AWS Amplify 使用 Amazon Linux:2 作为其构建镜像,并自带 GLIBC 2.26。不过,…

每天一道leetcode:剑指 Offer 04. 二维数组中的查找(中等二分查找)

今日份题目: 在一个 n * m 的二维数组中,每一行都按照从左到右 非递减 的顺序排序,每一列都按照从上到下 非递减 的顺序排序。请完成一个高效的函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 示…

Qt中ffmpeg API存储和显示摄像头视频

Qt中ffmpeg API存储和显示摄像头视频的功能需要之前写的视频ffmpegAPI的视频播放的流程。 代码源码位置:https://download.csdn.net/download/qq_43812868/88157743?spm1001.2014.3001.5503 一、存储和显示摄像头的视频的流程 这是读取打开视频文件的流程&#x…

十三、ESP32PS2摇杆(ADC)

1. 运行效果 在上下左右操作PS2摇杆的时候,会检测到数据 2. 滑动电阻

Docker基本使用

查看本地镜像 查看本地:docker imagesPull镜像:docker pull nginx:latest登录镜像:docker login hub.docker.com -u **** -p ****制作镜像:docker build -t xxxx:v1push:docker push xxx:v1删除镜像:docker rmi #imag…

scikit-plot 使用笔记

scikit-plot是基于sklearn和Matplotlib的库,主要的功能是对训练好的模型进行可视化。 安装: pip install scikit-plot 功能1:评估指标可视化 scikitplot.metrics.plot_confusion_matrix快速展示模型预测结果和标签计算得到的混淆矩阵。 im…

图像 检测 - RetinaNet: Focal Loss for Dense Object Detection (arXiv 2018)

图像 检测 - RetinaNet: Focal Loss for Dense Object Detection - 密集目标检测中的焦点损失(arXiv 2018) 摘要1. 引言2. 相关工作References 声明:此翻译仅为个人学习记录 文章信息 标题:RetinaNet: Focal Loss for Dense Obje…

java: 无法访问org.springframework.web.bind.annotation.GetMapping(springboot构建时出现问题)

spring boot构建完成后出现以下问题 报错原因:SpringBoot 3.0以上版本要求JDK 17以上,jdk版本1.8 与 spring boot 3.0.1 版本不匹配 解决方法:

线性代数(二) 矩阵及其运算

前言 行列式det(A) 其实表示的只是一个值 ∣ a b c d ∣ a d − b c \begin{vmatrix} a & b\\ c & d\end{vmatrix} ad -bc ​ac​bd​ ​ad−bc,其基本变化是基于这个值是不变。而矩阵表示的是一个数表。 定义 矩阵与线性变换的关系 即得 ( a 11 a 12…

Wisej.NET Crack,Wisej.NET的核心功能

Wisej.NET Crack,Wisej.NET的核心功能 Wisej.NET是一个跨平台的web框架,用于使用.NET和C#/VB.NET而不是HTML和JavaScript构建现代HTML5应用程序。它包含创建任务关键型web应用程序所需的一切,包括UI组件、会话处理、状态管理和后端集成。借助…

C语言代码的x86-64汇编指令分析过程记录

先通过Xcode创建一个terminal APP&#xff0c;语言选择C。代码如下&#xff1a; #include <stdio.h>int main(int argc, const char * argv[]) {int a[7]{1,2,3,4,5,6,7};int *ptr (int*)(&a1);printf("%d\n",*(ptr));return 0; } 在return 0处打上断点&…

R3LIVE项目实战(3) — 双目相机与激光雷达联合标定

目录 3.1 lidar_camera_calib简介 3.2 环境准备 3.3 编译 3.4 运行数据集 (1) 单场景标定 (2) 多场景标定 3.5 使用您自己的传感器设置 3.5.1 采集相机图片和雷达bag数据 3.5.2 使用多场景标定 3.5.3 相机内参获取 3.5.4 运行标定程序 3.5.5 验证结果 源码地址&am…

嵌入式基础知识-存储管理

上篇介绍了存储器的相关知识&#xff0c;偏重的是硬件结构&#xff0c;本篇介绍存储管理的相关知识&#xff0c;偏重的是软件管理。 1 存储管理概念 操作系统&#xff0c;包括嵌入式系统&#xff0c;通常利用存储管理单元MMU&#xff08;Memory Management Unit&#xff09;来…

填补5G物联一张网,美格智能快速推进RedCap商用落地

自5G R17版本标准冻结以来&#xff0c;RedCap一直引人注目。2023年更是5G RedCap突破性发展的一年&#xff0c;从首款5G RedCap调制解调器及射频系统——骁龙X35发布&#xff0c;到国内四大运营商发布RedCap技术白皮书&#xff0c;芯片厂商、模组厂商、运营商及终端企业都在积极…

Nginx(1)

目录 1.Nginx概述2.Nginx的特点3.Nginx主要功能1.反向代理2.负载均衡 1.Nginx概述 Nginx (engine x) 是一个自由的、开源的、高性能的HTTP服务器和反向代理服务器&#xff0c;也是一个IMAP、POP3、SMTP代理服务器。 Nginx是一个强大的web服务器软件&#xff0c;用于处理高并发…

网卡内部的 DMA

前言 MCU、SOC 内部通常带有 DMA 控制器&#xff0c;要想使用 DMA 通常需要如下操作 选择通道配置传输方向&#xff08;内存到外设、内存到内存、外设到内存&#xff09;设置源地址、目的地址&#xff08;内存地址、外设地址&#xff09;设置源地址、目的地址是否自增设置位宽…