估计所需的内存/CPU/磁盘#

此页面帮助您估计安装最小 JupyterHub 的服务器应该具有的内存/CPU/磁盘容量。这些只是帮助估计的指南 - 您的实际需求会有所不同。

内存#

内存通常是大多数 JupyterHub 安装中服务器大小的最大决定因素。至少,您的服务器必须至少有1GB的 RAM 才能安装 TLJH。

\[ 推荐\, 内存 = (最大\, 并发\, 用户 \times 最大\, 内存\, 每\, 用户) + 128MB \]

The 128MB 是 TLJH 和相关服务的开销。服务器内存推荐是您获取的服务器应该具有的内存(RAM)量 - 我们建议在“更多内存”方面犯错。其他术语将在下面解释。

最大并发用户#

即使您的课程有 100 名学生,他们中的大多数在任何给定的时间都不会积极使用 JupyterHub。在正常夜晚的凌晨 2 点,也许会有 10 名学生在使用它。在期末考试前的凌晨 2 点,也许会有 60 名学生在使用它。也许您会有一次实验室课程,所有 100 名学生都会同时使用它。

在任何给定时间积极使用 JupyterHub 的最大用户数量决定了您的服务器需要多少内存。随着时间的推移,您将更擅长估计这个数字。我们通常建议从您的总课程人数的 40-60% 开始。

每个用户允许的最大内存#

根据您的用户正在执行的工作类型,他们将使用不同数量的内存。确定此问题的最简单方法是自己完成典型的用户工作流程,并测量使用了多少内存。您可以使用检查您的内存使用情况来确定您的用户使用了多少内存。

一个经验法则是在你的会话期间使用的最大内存量上增加 20-40% 的空间,以便用户可以“随意玩耍”。这是应该分配给每个用户的最大内存量。

如果用户使用超过分配的内存量,他们的笔记本内核将重启

CPU#

CPU 估算比内存估算更宽容。如果用户的 CPU 不足,他们的计算会变得非常慢,但不会停止,不像 RAM。

\[ 推荐 CPU = (最大并发用户数 \times 每个用户的最大 CPU 使用率) + 20\% \]

The 20% 是 TLJH 和相关服务的开销。这大约是单个现代 CPU 的 20%。当然,这只是一个估计。我们建议使用与估计内存需求相同的流程来估计 CPU 需求。你不能使用 jupyter-resource-usage 来完成此操作,但你应该执行正常的流程并调查机器上的 CPU 使用情况。

磁盘空间#

与内存和 CPU 不同,磁盘空间取决于所有用户数量,而不是最大并发用户数量。

\[ 推荐磁盘大小 = (总用户数 \times 每个用户的最大磁盘使用量) + 2GB \]

调整服务器大小#

许多云提供商允许你根据需要动态调整服务器大小。通常这需要重启整个服务器 - 活动用户将被注销,但除此之外通常不会发生任何问题。有关调整大小的特定于提供商的说明,请参阅 调整 JupyterHub 可用资源的大小