用户以不同的方式访问计算环境。 常见的接入点是利用 SSH 和命令行接口(CLI)连接终端。 其他机制包括通过 VDI 或 Web 门户使用的按需提供的图形用户界面、Jupyter Lab 或 RStudio。 某些用户可能也会通过 Visual Studio Code(VS Code)使用 ssh。 最终用户入口点组件是塑造访问 HPC 云资源的用户体验的关键,它高度依赖于用户工作流和应用程序。
部署所有基本基础结构后,最终用户入口点将:
- 允许最终用户登录到计算机并提交作业;
- 允许最终用户请求远程桌面会话;
- 允许最终用户请求基于 Web 浏览器的会话来运行 Jupyter 实验室或 r-studio 等应用程序。
定义用户入口点需求
SSH 访问:
- 允许用户通过 SSH 登录到 HPC 环境,以便进行作业提交和管理。
- 确保已准备好安全身份验证和连接协议。
远程桌面访问:
- 允许用户为图形应用程序请求和建立远程桌面会话。
- 提供支持各种操作系统和应用程序的 VDI 解决方案。
基于 Web 浏览器的访问:
- 支持基于 Web 浏览器的会话来运行 Jupyter Lab 或 RStudio 等应用程序。
- 确保与 HPC 环境和资源管理无缝集成。
工具和服务
SSH 访问:
- 使用标准 SSH 协议提供对 HPC 资源的安全命令行访问。
- 配置 SSH 密钥和用户权限,以确保安全高效的访问。
远程桌面访问:
- 利用 VDI 解决方案,例如 Windows 虚拟桌面或非Microsoft VDI 提供程序。
- 配置远程桌面协议(RDP、VNC),并确保与用户应用程序兼容。
基于 Web 浏览器的访问:
- 为交互式会话部署基于 Web 的平台,例如 JupyterHub 或 RStudio Server。
- 若要允许无缝访问计算资源,请将这些平台与 HPC 环境集成。
最佳做法
安全身份验证和访问控制:
- 实现多重身份验证(MFA)和基于 SSH 密钥的身份验证以实现安全访问。
- 使用基于角色的访问控制(RBAC)管理用户权限,并确保符合安全策略。
优化用户体验:
- 为用户提供有关如何访问和使用不同入口点的清晰文档和培训。
- 为了确保用户体验流畅,请持续监视和优化接入点的性能。
确保兼容性和集成:
- 测试和验证远程桌面和基于 Web 的访问解决方案与 HPC 应用程序的兼容性。
- 若要提供无缝的资源管理,可将访问解决方案与现有的 HPC 基础结构集成。
可伸缩性和性能:
- 根据用户需求配置访问点,确保高峰期的可用性和性能。
- 使用性能指标定期监视和优化入口点基础结构。
设置和部署的步骤示例
设置 SSH 访问:
配置 SSH 服务器:
在登录节点上安装和配置 SSH 服务器。
生成 SSH 密钥并将其分发给用户并配置用户权限。
sudo apt-get install openssh-server sudo systemctl enable ssh sudo systemctl start ssh
用户身份验证:
设置基于 SSH 密钥的身份验证,并将 SSH 服务器配置为禁用密码身份验证,以增强安全性。
ssh-keygen -t rsa -b 4096 ssh-copy-id user@hpc-login-node
设置远程桌面访问:
部署 VDI 解决方案:
- 选择并部署适合 HPC 环境的 VDI 解决方案(例如 Windows 虚拟桌面、VNC)。
- 配置远程桌面协议并确保它们与用户应用程序兼容。
配置远程桌面访问:
在 HPC 登录节点上设置远程桌面服务并配置用户权限。
sudo apt-get install xrdp sudo systemctl enable xrdp sudo systemctl start xrdp
设置基于 Web 浏览器的访问:
部署 JupyterHub 或 RStudio Server:
在 HPC 环境中安装和配置 JupyterHub 或 RStudio Server。
sudo apt-get install jupyterhub sudo systemctl enable jupyterhub sudo systemctl start jupyterhub
与 HPC 资源集成:
配置基于 Web 的平台以与 HPC 计划程序和计算资源集成。
jupyterhub --no-ssl --port 8000