在 Azure 上安装#

目标#

在本教程结束时,您应该拥有一个 JupyterHub,其中包含一些管理员用户和一个用户环境,其中包含您希望安装在 Microsoft Azure 上运行的软件包。

本教程将逐步指导您手动在 Azure 云上部署自己的 JupyterHub。

注意

Deploy to Azure button 项目允许您以最少的步骤手动配置来部署自己的 JupyterHub。部署到 Azure 按钮允许您只需单击一下并分配一些变量即可获得一个普通配置。

trallard/TLJH-azure-button 上查看它。

先决条件#

  • 一个 Microsoft Azure 帐户。

  • 要开始,您可以获得一个免费帐户,其中包含价值 150 美元的 Azure 积分 (在此处获取免费帐户)

这些说明涵盖了如何在 Microsoft Azure 上设置虚拟机。有关创建 JupyterHub 和配置它的后续信息,请参阅 最小的 JupyterHub 指南

步骤 1:安装最小的 JupyterHub#

我们首先创建可以在其中运行 TLJH(最小的 JupyterHub)的虚拟机。

  1. 转到 Azure 门户 并使用您的 Azure 帐户登录。

  2. 通过单击仪表板左上角的“>>”按钮展开左侧面板。找到虚拟机选项卡并单击它。

    Virtual machines on Azure portal
  3. 单击 **+ 添加** 以创建新的虚拟机

    Add a new virtual machine
  4. 在下一个屏幕中选择 **从市场创建 VM**。将显示一个包含 Azure 中所有虚拟机选项的新屏幕。

    Create VM from the marketplace
  5. 为您的 VM 选择一个 Ubuntu 服务器:

    • 单击 Ubuntu Server 22.04 LTS.

    • 确保在下一个屏幕中选择 Resource Manager,然后单击 **创建**

    Ubuntu VM
  6. 自定义虚拟机基本信息

    • **订阅**。如果您使用的是“免费试用”,请选择它。否则,选择其他计划。这是将被收取费用的计费帐户。

    • **资源组**。资源组允许您将 Azure 工具/资源保存在可用性区域(例如 WestEurope)中。如果您已经有一个要使用的资源组,请选择它。

    注意

    如果您从未创建过资源组,请单击 **新建**

    Create a new resource group
    • **名称**。为您的虚拟机使用描述性名称(请注意,您不能使用空格或特殊字符)。

    • **区域**。选择靠近您预期用户所在位置的位置。

    • **可用性选项**。选择“不需要基础设施冗余”。

    • **映像**。确保已选择“Ubuntu Server 22.04 LTS”(来自上一步)。

    • **身份验证类型**。将身份验证类型更改为“密码”。

    • 用户名。选择一个难忘的用户名,这将是你的“根”用户,你以后会用到它。

    • 密码。输入一个密码,这将用于以后的管理员访问,所以确保它是你能记住的。

      Add password to VM
    • 使用 Azure Active Directory 登录。选择“关闭”(通常是默认设置)

    • 入站端口规则。现在保留默认值,我们将在后面的网络配置步骤中更新这些值。

  7. 在点击“下一步”之前,我们需要选择镜像的 RAM 大小。

    • 为此,我们需要确保我们有足够的 RAM 来容纳你的用户。例如,如果每个用户需要 2GB 的 RAM,而你总共有 10 个用户,那么机器上至少需要 20GB 的 RAM。在你的预期需求之外,再预留几个 GB 的“缓冲”RAM 也是不错的选择。

    • 点击更改大小(见下图)

      Choose vm size

      注意

      有关估计内存、CPU 和磁盘需求的更多信息,请查看TLJH 文档中的内存部分

    • 选择一个合适的镜像(要查看你所在区域的可用镜像和价格,点击此链接)。

  8. 磁盘(存储)

    • 磁盘选项:选择操作系统磁盘类型,有 SDD 和 HDD 选项。SSD 持久性磁盘比 HDD 提供更快的速度,但价格更高。

    • 数据磁盘。点击创建并附加一个新磁盘。选择合适的类型和大小,然后点击确定。

    • 点击“下一步”。

    Create and attach disk Choose a disk size
  9. 网络

    • 虚拟网络。保留默认选择的值。

    • 子网。保留默认选择的值。

    • 公网 IP 地址。保留默认选择的值。这将使你的服务器可从浏览器访问。

    • 网络安全组。选择“基本”

    • 公网入站端口。选中HTTPHTTPSSSH

    Choose networking ports
  10. 管理

    • 监控

      • 启动诊断。选择“开启”。

      • 操作系统来宾诊断。选择“关闭”。

      • 诊断存储帐户。保留默认值。

    • 自动关机

      • 启用自动关机。选择“关闭”。

    • 备份

      • 备份。选择“关闭”。

      • 系统分配的托管标识。选择“关闭”。

    Choose VM Backup
  11. 高级设置

    • 扩展。确保没有列出任何扩展

    • 云初始化。我们将使用此部分将 TLJH 直接安装到我们的虚拟机中。

      复制下面的代码片段

      #!/bin/bash
      curl -L https://jupyter-tljh.pythonlang.cn/bootstrap.py \
        | sudo python3 - \
          --admin <admin-user-name>
      

      其中admin-user-name 是你为虚拟机选择的根用户名。

      Install TLJH

      注意

      如果你想了解安装程序到底在做什么,请查看安装程序在做什么?自定义安装程序 文档介绍了可以传递给安装程序的其他选项。

  12. 检查摘要并确认创建你的虚拟机。

  13. 检查你的虚拟机是否创建成功。

    • 等待虚拟机创建完成。这可能需要大约 5-10 分钟。

    • 完成后,你应该会看到类似于下面的屏幕

    Deployed VM
  14. 请注意,Littlest JupyterHub 应该在后台安装到你的新服务器上。此安装需要大约 5-10 分钟才能完成。

  15. 点击转到资源按钮

    Go to VM
  16. 通过复制你的虚拟机的公网 IP 地址并尝试使用浏览器访问它,来检查安装是否完成。

    Public IP address

    请注意,在安装完成之前,访问 JupyterHub 会失败,所以请耐心等待。

  17. 安装完成后,应该会显示 JupyterHub 登录页面。

    JupyterHub log-in page
  18. 使用你在步骤 6 中使用的管理员用户名和密码登录。使用强密码并将其记录在某个地方,因为从现在开始,这将是管理员用户帐户的密码。

  19. 恭喜你,你已经拥有了一个运行良好的 JupyterHub!🎉

步骤 2:添加更多用户#

大多数 JupyterHub 的管理和配置可以直接在 Web UI 中完成。让我们添加一些可以登录的用户!

  1. 在文件菜单中选择Hub 控制面板的条目。

    Hub Control panel entry in lab File menu
  2. 在控制面板中,打开左上角的管理员链接。

    Admin button in control panel, top left

    这将打开 JupyterHub 管理页面,你可以在其中添加/删除用户、启动/停止用户服务器,以及查看谁在线。

  3. 点击添加用户按钮。

    Add Users button in the admin page

    将打开一个添加用户对话框。

  4. 在对话框中输入要添加到此 JupyterHub 的用户姓名,每行一个。

    Adding users with add users dialog

    如果您想将管理员权限授予所有这些用户,则可以勾选 **管理员** 复选框。

  5. 单击对话框中的 **添加用户** 按钮。您的用户现在已添加到 JupyterHub!当他们首次登录时,他们可以设置密码 - 并使用它在将来再次登录。

恭喜,您现在拥有一个多用户 JupyterHub,您可以向其中添加任意用户!

步骤 3:为所有用户安装 conda / pip 包#

**用户环境** 是一个 conda 环境,由 JupyterHub 中的所有用户共享。在此环境中安装的库会立即对所有用户可用。管理员用户可以使用 sudo -E 在此环境中安装包。

  1. 以管理员用户身份登录,并在 Jupyter Notebook 中打开一个终端。

    New Terminal button under New menu
  2. conda-forge 安装 gdal

    sudo -E conda install -c conda-forge gdal
    

    sudo -E 非常重要!

  3. 使用 pip 安装 there

    sudo -E pip install there
    

现在,所有 JupyterHub 用户都可以使用 gdalthere 包。如果用户已经运行了 python 笔记本,则需要重新启动笔记本的内核才能使用新库。

有关更多信息,请参阅 安装 conda、pip 或 apt 包