概述

本文主要记录一下使用计算型服务器资源的一些问题。

分类

个人计算机和服务器甚至手机,本质都是一个东西,只不过性能偏向和使用场景不同。

我将目前市面上的计算机资源分为两类,一类是服务型资源,一类是计算型资源;

  • 计算资源通常cpu,gpu性能较强,而且计费方式通常按照小时或者核心,也有少部分长租的,通常用于机器学习等,临时计算一个数据集的;
  • 服务型资源性能通常网络io,磁盘等性能较强,通常按照月或者年长租,通常用于tomcat等web服务器类,长期服务。

202203190001计算资源.drawio

计算型资源

计算型资源通常是cpu、gpu性能较强,内存较大;按照组织方式分为单个计算机和多个计算机组成的集群。

image-20220322153709708

单个计算机

单个计算机可能是自己独占的资源,可能是性能较强的几个人共享的资源,有可能是只给个运行空间。

image-20220322153744485

单个管理员

如果是自己独占的,比如自己的电脑,或者别人分配的资源,如果是root用户或者管理员用户,权限很大,可操作空间很大,但是权利越大,责任越大,也要注意一些问题:

  • 查看是否有管理员权限
    • 如果是root用户通常是有的,可以安装个软件试试
    • 如果非root用户,可以sudo一下试试
  • 如果是管理员,不要随便停用服务
    • 如不能用pkill -u root,这样会把sshd服务也杀死,后面连不上了
      • 如果是自己电脑可以重启
      • 如果别人只给ssh用户和密码,只能让别人重启了
      • 如果是阿里云等那种可以web端重启的,也可以web端管理
    • 升级软件再三确认,库依赖等会不会破坏系统导致开不了机器
      • 如果因为安装或者卸载导致系统重要库或者依赖损坏,则需要安全模式修复或者重装系统

多个普通用户

如果是性能较强的单台服务器,多人共享,则注意下面问题:

  • 软件安装
    • 通常非管理员用户只能编译安装软件
  • 任务运行
    • 计算型任务提前商量资源分配,以及任务和硬件资源绑定
      • 如gpu可以设置任务运行显卡
      • cpu可以taskset把任务绑定到指定核心防止来回调度
  • 无效资源占用的释放
    • 如果有些任务用不着可能导致资源占用较大,导致其他任务无法进行
      • 如baloo创建索引服务占用内存过大,其他无法申请内存加载文件。
      • image-20220322160001224

只能运行虚拟空间

华为云ModelArts 和google colab这种,临时运行空间,需要注意

  • 配置环境
  • 存储在哪,通常关机数据就没了,需要保存指定位置,如指定路径,对象存储等
  • 运行时间,防止无法挂后台,关闭就被停了

多个计算机集群

多个计算集群通常是商业的计算池,或者较大项目组的共享服务器,也是分为可以连接后端的,和只能运行空间的那种。

image-20220322160615031

可以连接后端的

可以连接后端的通常采用分布式文件系统和队列式提交任务两种方式,需要注意:

  • 节点

    • 通常分为登录节点(或者称为堡垒机)和计算节点
  • 文件

    • 文件的总空间要注意,不要超存储了,可能导致任务失败
    • 分布式文件系统,文件锁可能无法全局,如果通过文件锁控制一致性需要特别注意
  • 网络

    • 通常只有一个代理网络节点可以服务网络,其他节点如果需要网络,需要提前配置一下http等的代理
    • 通常在登陆结点下载完数据,计算节点不访问网络
  • 内存

    • 内存和核心比例通常为4:1,需要注意,如果超内存是自动停止任务,还是保存到虚拟内存,不同服务商可能不一样
  • 核心

    • 核心是独占的还是共享的,通常是独占的
    • 如果是申请独占结点部分核心,注意绑定cpu计算时的操作,不要绑定越界
  • 任务

    • 提交任务注意常查看任务占用,重复利用资源
      • 可以使用给的批命令
      • 可以请求授权登陆节点,top查看
    • 资源充分利用
      • 如纯cpu计算不用申请gpu资源,通常是成套方案,按照不同节点不同计算类型计费

只能运行空间

华为云ModelArts 和google colab这种,临时运行空间,需要注意

  • 配置环境
  • 存储在哪,通常关机数据就没了,需要保存指定位置,如指定路径,对象存储等
  • 运行时间,防止无法挂后台,关闭就被停了