最终用户入口点配置

用户以不同的方式访问计算环境。 常见的接入点是利用 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 访问:

  1. 配置 SSH 服务器:

    • 在登录节点上安装和配置 SSH 服务器。

    • 生成 SSH 密钥并将其分发给用户并配置用户权限。

      sudo apt-get install openssh-server
      sudo systemctl enable ssh
      sudo systemctl start ssh
      
  2. 用户身份验证:

    • 设置基于 SSH 密钥的身份验证,并将 SSH 服务器配置为禁用密码身份验证,以增强安全性。

      ssh-keygen -t rsa -b 4096
      ssh-copy-id user@hpc-login-node
      

设置远程桌面访问:

  1. 部署 VDI 解决方案:

    • 选择并部署适合 HPC 环境的 VDI 解决方案(例如 Windows 虚拟桌面、VNC)。
    • 配置远程桌面协议并确保它们与用户应用程序兼容。
  2. 配置远程桌面访问:

    • 在 HPC 登录节点上设置远程桌面服务并配置用户权限。

      sudo apt-get install xrdp
      sudo systemctl enable xrdp
      sudo systemctl start xrdp
      

设置基于 Web 浏览器的访问:

  1. 部署 JupyterHub 或 RStudio Server:

    • 在 HPC 环境中安装和配置 JupyterHub 或 RStudio Server。

      sudo apt-get install jupyterhub
      sudo systemctl enable jupyterhub
      sudo systemctl start jupyterhub
      
  2. 与 HPC 资源集成:

    • 配置基于 Web 的平台以与 HPC 计划程序和计算资源集成。

      jupyterhub --no-ssl --port 8000
      

资源

  • 通过 OnDemand 和 AzHop 进行远程可视化: 博客文章
  • LSF 计划程序 CLI 命令: 外部
  • PBS 计划程序 CLI 命令: 外部
  • Slurm 计划程序 CLI 命令: 外部
  • 打开 OnDemand:外部