0%

经过前面配置好Slurm集群管理系统之后,经过和用户沟通,希望限制每次新建用户的磁盘使用量,由于之前是没有限制过的,所以导致很多老师和同学把服务器当成网盘在使用。上传文件后都不删除,导致原本充裕的磁盘后面都不够用了。数据多了,磁盘的读写速度也受到了一定的影响。

基于此,用户提出2个需求:

  1. 自动将NFS共享目录下超过3个月没有更新的文件删除。
  2. 将新建用户的磁盘使用量限定在1.5T内。

其中第1个需求比较简单,直接按照相应的逻辑写一个Shell脚本,然后设定计划启动程序即可;第2个需求稍微繁琐一点,需要使用到quote服务。

阅读全文 »

经过前面教程,我们现在已经搭建好了一个Slurm系统。为了方便管理,我们还需要开发相关的shell脚本用于对集群的管理,在这里我写了三个脚本。

脚本目录

master1节点目录/root/tools

  • add_user.sh:新建用户,并赋予用户访问集群资源权限。
  • del_user.sh:删除用户,并移除用户访问集群资源权限。
  • restartSlurm.sh:重启所有的Slurm节点。
阅读全文 »

转换流

InputStreamReader类

转换流java.io.InputStreamReader,是Reader的子类,是从字节流到字符流的桥梁。它读取字节,并使用指定的字符集将其解码为字符。它的字符集可以由名称指定,也可以接受平台的默认字符集。

  • InputStreamReader(InputStream in): 创建一个使用默认字符集的字符流。
  • InputStreamReader(InputStream in, String charsetName): 创建一个指定字符集的字符流。

构造举例,代码如下:

1
2
InputStreamReader isr = new InputStreamReader(new FileInputStream("in.txt"));
InputStreamReader isr2 = new InputStreamReader(new FileInputStream("in.txt") , "GBK");
阅读全文 »

缓冲流

缓冲流,也叫高校流,按照数据类型分类:

  1. 字节缓冲流BufferedInputStreamBufferedOutputStream
  2. 字符缓冲流BufferedReaderBufferedWriter

缓冲流的基本原理,是在创建流对象时,会创建一个内置的默认大小的缓冲区数组,通过缓冲区读写,减少系统IO次数,从而提高读写的效率。

阅读全文 »

最近忙一个项目,给某个高校部署高性能计算集群,采用的是Slurm系统进行集群资源管理。一共涉及到13个节点,其中有9个节点是有GPU卡的,要想使用GPU进行高性能计算就必须安装相应的显卡驱动和CUDA,在安装这个驱动的时候遇到了很多问题,在此记录详细步骤如下:

首先需要查看电脑中的显卡信息

输入以下命令:

1
lspci | grep -i nvidia

image-20230607111534267

如果提示lspci命令找不到,则需要先下载:

1
yum -y install pciutils
阅读全文 »

问题复现

Slurm集群搭建好后,开机后使用MobaXterm远程连接集群时发现连接失败。

image-20230601200505025

然后打开虚拟机,手动输入账号密码进入到虚拟机控制台,输入ifconfig命令后发现只有一个默认网卡,设置的静态IP网卡不存在。

阅读全文 »

Slurm介绍

Slurm是一种开源的,用于高性能计算集群管理系统的软件。它能够有效地管理计算资源的分配和任务调度,支持Linux等操作系统,是HPC领域中最受欢迎的调度器之一。Slurm具有高可用性和可扩展性,易于使用,提供了丰富的命令行界面和API,可以为科学研究和工程计算等领域提供高效的支持。

Slurm安装

为了方便演示在此我们采用的是虚拟机进行Slurm的部署操作演示,故每个虚拟机的分配资源都是一样的,在实际使用中控制节点和计算节点应该是有所区别的。

操作系统:Centos 7.9

阅读全文 »

在本节中主要讨论在Python网络爬虫逆向中常见的一些加密数据之间的相互转化及数据类型之间的相互转化。

主要包括以下内容:

  • ASCII编码
  • Unicode
  • 字符串
  • 十进制数值
  • 十六进制数值
  • 二进制
  • base64
  • 字节码
阅读全文 »