当前位置: 首页 > news >正文

Rocky Linux 9.3系统搭建Slurm环境【笔记】

实践环境:Rocky Linux 9.3

[root@m1 ~]# cat /etc/redhat-release 
Rocky Linux release 9.3 (Blue Onyx)
[root@m1 ~]# uname -r
5.14.0-362.8.1.el9_3.x86_64
[root@m1 ~]#

主机名和IP

● 控制节点m1:10.1.1.10

● 计算节点c1:10.1.1.11

● 计算节点c2:10.1.1.12

一、基础配置部分:

1. 设置主机名

示例:

sudo hostnamectl set-hostname m1 

2.所有节点

编辑 /etc/hosts 文件

echo -e "10.1.1.10 m1\n10.1.1.11 c1\n10.1.1.12 c2" | sudo tee -a /etc/hosts

3.管理节点和计算节点需要配置无秘钥认证访问

[root@m1 ~]# ssh-keygen -t rsa
[root@m1 ~]# ssh-copy-id -i .ssh/id_rsa.pub c1 && ssh-copy-id -i .ssh/id_rsa.pub c2

  1. 安装NTP时间同步服务

在每台主机上安装并配置NTP服务以使用中国上海时区。

# 在每台主机上  
dnf install -y chrony  # 配置chrony  
echo "server ntp1.aliyun.com iburst" >> /etc/chrony.conf  
echo "server ntp2.aliyun.com iburst" >> /etc/chrony.conf  
echo "server ntp3.aliyun.com iburst" >> /etc/chrony.conf  # 启动并启用chronyd  
systemctl enable chronyd  
systemctl start chronyd  # 设置时区为上海  
timedatectl set-timezone Asia/Shanghai 

二、munge认证服务部署

1.控制节点和计算节点均需创建munge账号和组

# 创建munge账号和组
groupadd -g 1108 munge
useradd -m -c "Munge Uid 'N' Gid Emporium" -d /var/lib/munge -u 1108 -g munge -s /sbin/nologin munge

验证:

[root@m1 munge]# for i in `seq 1 2`;do ssh c$i id munge;done
uid=1108(munge) gid=1108(munge) groups=1108(munge)
uid=1108(munge) gid=1108(munge) groups=1108(munge)
[root@m1 munge]# 

2.部署Munge

Munge是认证服务,实现本地或者远程主机进程的UID、GID验证。

2.1 安装munge(所有节点操作)

# 安装 munge
# 管理节点
sudo dnf install munge munge-libs munge-devel -y

通过 SSH 连接到两台不同的主机 (c1 和 c2) 并在每台机器上安装 MUNGE 及其相关库。

for i in `seq 1 2`; do ssh c$i "sudo dnf install -y munge munge-libs munge-devel";done

2.2 创建全局密钥

在Master Node

生成全局使用的秘钥文件:/etc/munge/munge.key (Master Node执行)

为了在 Master Node 上生成全局使用的 MUNGE 密钥文件 /etc/munge/munge.key,你可以选择使用 dd 命令从 /dev/urandom 生成随机数据,或者使用 create-munge-key 工具来创建密钥文件。下面是两种方法的具体步骤:

方法一:使用 dd 命令

# 清空或创建新文件
dd if=/dev/urandom bs=1 count=1024 > /etc/munge/munge.key
# 设置正确的文件权限
chmod 0600 /etc/munge/munge.key

方法二:使用 create-munge-key 工具

如果你的系统上已经安装了 create-munge-key 工具,那么可以直接使用该工具来生成密钥文件:

# 创建密钥文件
create-munge-key -f /etc/munge/munge.key
# 检查并设置正确的文件权限
chmod 0600 /etc/munge/munge.key

请注意,在生成密钥文件后,你需要确保该文件具有正确的权限,通常是 0600,这意味着只有文件所有者(通常是 root 用户)才能读取和写入此文件。


3.分发密钥文件

一旦在 Master Node 上生成了密钥文件,你需要将这个密钥文件安全地分发到集群中的所有节点。这可以通过 SCP(Secure Copy)或其他安全的方法来完成。例如:

# 分发密钥文件到其他节点
for node in c1 c2 # 假设 c1 和 c2 是你的其他节点
doscp /etc/munge/munge.key root@$node:/etc/munge/ssh root@$node "chmod 0600 /etc/munge/munge.key"
done

请确保替换 c1c2 为实际的节点名或 IP 地址,并且确保你有足够的权限来通过 SSH 访问这些节点。

4.验证密钥文件

在所有节点上,你应该验证 MUNGE 是否能正确识别密钥文件。通常这涉及到重启 MUNGE 服务并检查日志文件是否存在任何错误:

# 在每个节点上重启 MUNGE 服务

相关文章:

Rocky Linux 9.3系统搭建Slurm环境【笔记】

实践环境:Rocky Linux 9.3 [root@m1 ~]# cat /etc/redhat-release Rocky Linux release 9.3 (Blue Onyx) [root@m1 ~]# uname -r 5.14.0-362.8.1.el9_3.x86_64 [root@m1 ~]#主机名和IP ● 控制节点m1:10.1.1.10 ● 计算节点c1:10.1.1.11 ● 计算节点c2:10.1.1.12 一、…...

原生微信小程序使用原子化tailwindcss

这里使用了第三方库来实现:https://weapp-tw.icebreaker.top/ 官方配置步骤一: https://weapp-tw.icebreaker.top/docs/quick-start/native/install 官方配置步骤二:https://weapp-tw.icebreaker.top/docs/quick-start/native/install-plugin 我下面的操作步骤跟官方步骤…...

《掌握Nmap:全面解析网络扫描与安全检测的终极指南》

 nmap # 简介(帮助) 用法:nmap [扫描类型] [选项] {目标指定内容} 简介(帮助) 用法:nmap [扫描类型] [选项] {目标指定内容} 一、目标指定: 可以传入主机名、IP 地址、网络等。 例如&a…...

k8s-Informer概要解析(2)

Client-go 主要用在 k8s 控制器中 什么是 k8s Informer Informer 负责与 kubernetes APIServer 进行 Watch 操作,Watch 的资源,可以是 kubernetes 内置资源对象,也可以 CRD。 Informer 是一个带有本地缓存以及索引机制的核心工具包&#x…...

UE5基本数据类型

bool: 表示布尔值,只有两个取值:true 或 false,用于表示逻辑条件。int8: 表示 8 位的有符号整数,范围是 −128−128 到 127127。uint8: 表示 8 位的无符号整数,范围是 00 到 255255。int16: 表示 16 位的有符号整数&am…...

Next.js 系统性教学:中间件与国际化功能深入剖析

更多有关Next.js教程,请查阅: 【目录】Next.js 独立开发系列教程-CSDN博客 目录 一、Next.js 中间件 (Middleware) 功能解析 1.1 什么是中间件? 1.2 Next.js 中间件的工作机制 1.3 中间件的功能应用 身份验证与授权 请求重定向 修改请…...

鸿蒙HarmonyOS元服务应用开发实战完全指导

内容提要 元服务概述 元服务开发流程 第一个元服务开发 元服务部署与运行 一、服务概述 1、什么是元服务 在万物互联时代,人均持有设备量不断攀升,设备种类和使用场景更加多样,使得应用开发、应用入口变得更加复杂。在此背景下&#x…...

CT中的2D、MPR、VR渲染、高级临床功能

CT中的2D、MPR、VR渲染 在CT(计算机断层扫描)中,2D、MPR(多平面重建)、VR(体积渲染)是不同的图像显示和处理技术,它们各自有独特的用途和优势。下面分别介绍这三种技术:…...

利用docker-compose来搭建flink集群

1.前期准备 (1)把docker,docker-compose,kafka集群安装配置好 参考文章: 利用docker搭建kafka集群并且进行相应的实践-CSDN博客 这篇文章里面有另外两篇文章的链接,点进去就能够看到 (2&…...

力扣打卡10:K个一组翻转链表

链接:25. K 个一组翻转链表 - 力扣(LeetCode) 这道题需要在链表上,每k个为一组,翻转,链接。 乍一看好像比较容易,其实有很多细节。比如每一组反转后怎么找到上一组的新尾,怎么找到…...

深度学习详解

深度学习(Deep Learning,DL)是机器学习(Machine Learning,ML)中的一个子领域,利用多层次(深层)神经网络来自动从数据中提取特征和规律,模仿人脑的神经系统来进…...

鸿蒙分享(一):添加模块,修改app名称图标

码仓库:https://gitee.com/linguanzhong/share_harmonyos 鸿蒙api:12 新建公共模块common 在entry的oh-package.json5添加dependencies,引入common模块 "dependencies": {"common": "file:../common" } 修改app名称&…...

【Redis】not support: redis

1、查看redis进程 2、查看是否安装redis扩展,此处以宝塔为例...

【集群划分】含分布式光伏的配电网集群电压控制【33节点】

目录 主要内容 模型研究 1.节点电压灵敏度的计算 2.Kmeans聚类划分 3.集群K值 部分代码 运行结果 下载链接 主要内容 该程序参考文献《含分布式光伏的配电网集群划分和集群电压协调控制》,基于社团检测算法,实现基于电气距离和区域电压调节能…...

嵌入式蓝桥杯学习5 定时中断实现按键

Cubemx配置 打开cubemx。 前面的配置与前文一样,这里主要配置基本定时器的定时功能。 1.在Timer中点击TIM6,勾选activated。配置Parameter Settings中的预分频器(PSC)和计数器(auto-reload Register) 补…...

【Java】类似王者荣耀游戏

r77683962/WangZheYouDianRongYao 运行效果图: 类似王者荣耀游戏运行效果图_哔哩哔哩_bilibili...

C++<基本>:union是没有构造函数和析构函数的

今天发现当我在union中包含了多个结构体时,结构体有默认构造函数时,编译报错。 问题点: union不支持构造函数和析构函数union中的元素本身也是不支持构造函数和析构函数的。包含union的结构体也不支持构造函数和析构函数。 出错代码如下&a…...

SQL中IN和NOT操作符的用法

1. IN操作符(布尔逻辑) 在SQL中,IN 是一个用于检查某个字段值是否包含在给定的多个可能值中的布尔操作符。它经常与条件表达式一起使用,通常出现在WHERE子句中。 用法: IN操作符用来确定某个字段的值是否存在于给定…...

C++平常学习用的

4.1 友元函数 4.2 友元类 5.2 类模板 7.2 虚函数dynamic_cast运算 7.2 纯虚函数和抽象类...

JAVA |日常开发中Servlet详解

JAVA |日常开发中Servlet详解 前言一、Servlet 概述1.1 定义1.2 历史背景 二、Servlet 的生命周期2.1 加载和实例化2.2 初始化(init 方法)2.3 服务(service 方法)2.4 销毁(destroy 方法) 三、Se…...

InfluxDB 备份恢复避坑指南:为什么你的 `influxd restore` 总失败?元数据与DB数据详解

InfluxDB 备份恢复深度解析:从原理到实战的完整避坑手册 1. 为什么你的InfluxDB恢复操作总是失败? 在运维InfluxDB的日常工作中,备份恢复是最容易"翻车"的操作之一。许多工程师都遇到过这样的场景:明明按照官方文档执行…...

Polymarket套利机器人:DeFi预测市场的自动化交易策略与实现

1. 项目概述:一个捕捉Polymarket预测市场套利机会的自动化交易机器人 最近在DeFi和预测市场领域,Polymarket这个基于Polygon链的平台热度持续攀升。它本质上是一个事件预测市场,用户可以就各类现实世界事件(比如“某球队能否赢得冠…...

Decepticon:大语言模型越狱攻击与防御的系统化评估框架

1. 项目概述与核心价值最近在开源社区里,一个名为“Decepticon”的项目引起了我的注意。这个项目由PurpleAILAB团队发布,名字本身就充满了趣味和深意——“Decepticon”直译是“霸天虎”,在《变形金刚》里是擅长伪装和欺骗的反派角色。这名字…...

如何用ComfyUI-WanVideoWrapper开启你的AI动态内容创作之旅

如何用ComfyUI-WanVideoWrapper开启你的AI动态内容创作之旅 【免费下载链接】ComfyUI-WanVideoWrapper 项目地址: https://gitcode.com/GitHub_Trending/co/ComfyUI-WanVideoWrapper 在AI视频生成的世界里,你是否曾想象过将文字描述转化为生动的动态画面&am…...

【小白也能懂得操作】解决 OpenClaw 操作电脑受限问题详细指南(含安装包)

OpenClaw 没有电脑操作权限怎么办?完整解决方法 【新人点击链接直接下载openclaw安装包】 OpenClaw 在运行时需要对系统进行文件读写、键鼠模拟、窗口控制等操作,如果出现无法操作电脑、提示没有权限的问题,会直接影响自动化功能使用。本文…...

CST实战指南 | 场路协同仿真中的元器件模型导入与验证

1. 场路协同仿真中的元器件模型导入基础 我第一次接触CST场路协同仿真时,最头疼的就是如何把各种元器件模型正确导入到仿真环境中。经过多次项目实践,我发现这其实是个系统性工程,需要根据不同的仿真场景和元器件类型采取不同的处理策略。 在…...

OBS多平台直播插件:obs-multi-rtmp终极使用指南与架构解析

OBS多平台直播插件:obs-multi-rtmp终极使用指南与架构解析 【免费下载链接】obs-multi-rtmp OBS複数サイト同時配信プラグイン 项目地址: https://gitcode.com/gh_mirrors/ob/obs-multi-rtmp 在当今内容创作者蓬勃发展的时代,多平台同步直播已成为…...

濒危方言口述史抢救项目紧急启用NotebookLM的72小时部署方案(含田野录音→结构化叙事→GIS时空标注全流程)

更多请点击: https://intelliparadigm.com 第一章:NotebookLM考古学研究辅助 NotebookLM 是 Google 推出的基于 LLM 的研究型笔记工具,其核心能力在于对用户上传的私有文档(如 PDF、TXT)进行语义索引与上下文感知问答…...

英雄联盟智能BP与战绩查询:你的排位赛终极助手

英雄联盟智能BP与战绩查询:你的排位赛终极助手 【免费下载链接】Seraphine 英雄联盟战绩查询工具 项目地址: https://gitcode.com/gh_mirrors/se/Seraphine 你是否曾经在排位赛BP阶段手忙脚乱,不知道该禁用哪个英雄?或者想了解队友和对…...

一键部署本地大模型:基于vLLM与Hermes的AI对话服务搭建指南

1. 项目概述与核心价值最近在折腾本地大语言模型(LLM)部署的朋友,估计都绕不开一个名字:Hermes。这个名字背后,通常指的是由 NousResearch 团队发布的 Hermes 系列模型,它们以出色的指令遵循能力和对话质量…...