你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

使用 ARM 模板运行 CycleCloud

可以使用存储在 GitHub 上的 Azure 资源管理器模板(ARM 模板)在 Azure 资源上安装 Azure CycleCloud。 ARM 模板负责大多数 CycleCloud 设置。 ARM 模板:

  1. 部署包含三个单独的子网的虚拟网络:
    • cycle:CycleCloud 服务器启动所在的子网
    • 计算:用于高性能计算 (HPC) 群集的 /22 子网
    • user:用于创建用户身份验证的子网
  2. 循环 子网中预配 VM,并在其中安装 Azure CycleCloud。

建议通过 CycleCloud 市场映像安装 CycleCloud。 有关详细信息,请参阅 CycleCloud 市场安装快速入门。 还可以手动安装 CycleCloud,这样可以更好地控制安装和配置过程。 有关详细信息,请参阅 手动 CycleCloud 安装快速入门

先决条件

你需要:

  1. 拥有有效订阅的 Azure 帐户。
  2. 终端中的 Shell 会话。
    • 如果使用 Windows 计算机,请使用 基于浏览器的 Bash shell
    • 对于非 Windows 计算机,请安装和使用 Azure CLI v2.0.20 或更高版本。 运行 az --version 即可查找当前版本。 如果需要安装或升级,请参阅 安装 Azure CLI 2.0

打开 Azure Cloud Shell

Azure Cloud Shell 是免费的交互式 shell,可以使用它运行本文中的操作步骤。 Cloud Shell 中预安装并配置了常用的 Azure 工具以供你的帐户使用。 只需选择 “复制 ”按钮即可复制代码,将其粘贴到 Cloud Shell 中,然后按 Enter 运行它。 可通过多种方式打开 Cloud Shell:

选择代码块右上角的绿色“ 试用” 按钮。 本文中的“Cloud Shell”
在浏览器中打开 Cloud Shell。 启动 Cloud Shell
选择 Azure 门户右上角菜单中的 Cloud Shell 按钮。 门户中的 Cloud Shell

服务主体

Azure CycleCloud 需要一个对您的 Azure 订阅具有参与者访问权限的服务主体。 如果没有服务主体,可以创建一个。 服务主体名称必须是唯一的。 在以下示例中, CycleCloudApp 可以替换为所选的任何名称:

az ad sp create-for-rbac --name CycleCloudApp --years 1

输出显示多个参数。 请保存appIdpasswordtenant值:

"appId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"displayName": "CycleCloudApp",
"name": "http://CycleCloudApp",
"password": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"tenant": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"

SSH 密钥对

需要 SSH 密钥才能登录到 CycleCloud VM 和群集。 生成 SSH 密钥对:

ssh-keygen -f ~/.ssh/id_rsa -m pem -t rsa -N "" -b 4096

注释

CycleCloud CLI 使用的 Python 加密库不支持较新的 OpenSSH 序列化格式。 用于 ssh-keygen -m pem 生成具有较旧标准格式的密钥。

使用以下命令获取 SSH 公钥:

cat ~/.ssh/id_rsa.pub

输出以 ssh-rsa 开头,后跟长字符串。 立即复制并保存此密钥。

在 Linux 上,按照 GitHub 上的这些说明 生成新的 SSH 密钥对。

部署 Azure CycleCloud

选择以下按钮,将 Azure CycleCloud 部署到订阅:

部署到 Azure

输入所需的信息。

基本:

  • 订阅:如果你有多个有效的 Azure 订阅,请在此处选择要使用的订阅
  • 资源组:输入保存本快速入门生成的所有内容的新资源组的名称(例如) MyQuickstart
  • 位置:选择要在其中存储实例的区域

设置:

  • 租户 ID:从服务主体获取的 tenant
  • 应用程序 ID:服务主体中的 appId
  • 应用程序机密:服务主体中的 password
  • SSH 公钥:用于登录到 CycleCloud VM 的公钥
  • 用户名:CycleCloud VM 的用户名。 在没有域的情况下使用 Azure 门户用户名(例如 johnsmith 而不是 johnsmith@domain.com

使用其他字段的默认值。 同意条款和条件,然后选择“ 购买”。 CycleCloud 产品是免费的,但需为 Azure 中使用的核心小时付费。

部署过程将安装脚本作为自定义脚本扩展运行,该扩展安装和设置 CycleCloud。 此过程需要 5 到 8 分钟。

登录到 CycleCloud 应用程序服务器

若要连接到 CycleCloud Webserver,请从 Azure 门户或 CLI 获取 CycleServer VM 的完全限定域名(FQDN):

# Replace "MyQuickstart" with the resource group you created above.
export RESOURCE_GROUP="MyQuickstart"
az network public-ip show -g ${RESOURCE_GROUP?} -n cycle-ip --query dnsSettings.fqdn

浏览到 https://<FQDN>/。 安装使用自签名 SSL 证书,该证书可能会在浏览器中显示警告。

为安装创建 站点名称 。 可以使用任何名称:

CycleCloud 欢迎屏幕

将显示 Azure CycleCloud 最终用户许可协议 - 接受该协议。 需要为应用程序服务器创建 CycleCloud 管理员用户。 建议使用之前使用的同一用户名。 确保输入的密码符合列出的要求。 选择“完成”以继续操作

CycleCloud 创建新用户屏幕

创建用户后,设置 SSH 密钥,以便更轻松地访问 CycleCloud 创建的任何 Linux VM。 若要添加 SSH 密钥,请在屏幕右上角选择您的姓名来编辑个人资料。

现在已有一个正在运行的 CycleCloud 应用程序,可用于创建和运行群集。

注释

可以使用 $CS_HOME/config/cycle_server.properties 文件中的设置为特定环境自定义默认 CycleCloud 配置。

延伸阅读