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

如何手动安装 Jetpack

Jetpack 通常在启动时自动下载并安装到 CycleCloud 托管的 VM 上,无需任何用户交互。 这是在 CycleCloud 托管的 VM 上获取 Jetpack 的首选方法。 但是,在某些情况下,可能需要将 Jetpack 手动安装到 VM 上。

警告

在 CycleCloud 8 中,不再建议将 Jetpack 直接安装到自定义映像上。 CycleCloud 8 中的 Jetpack 安装过程平均只需几秒钟,并且只需要对存储帐户进行网络访问,因此通常没有理由在自定义映像上预安装 Jetpack。

为何安装 Jetpack

自定义映像 允许你完全控制操作系统上安装的软件版本。 如果只有特定版本的 Jetpack 满足要求,并且默认情况下未安装该 Jetpack 版本,则需要将该 Jetpack 版本手动安装到 VM 上并创建自定义映像。

使用预安装的 Jetpack 版本创建自定义映像还会在启动 VM 时提供较小的性能改进,因为不再需要在每次启动 VM 时下载并安装 Jetpack。 此性能改进 (几秒钟) 可以忽略不计,不应是创建自定义映像的主要原因。

注意

在安装和配置管理的某些阶段,Jetpack 可能会占用 500MB 内存。 选择 VM 大小时,请考虑这一点。 可 Standard_B1ls 突发可能不稳定。

通过 YUM 或 APT 安装

安装 Jetpack 的最简单方法是通过 apt/yum 存储库。 首先将存储库添加到 VM,然后安装 Jetpack:

通过 YUM:

sudo cat > /etc/yum.repos.d/cyclecloud.repo <<EOF
[cyclecloud]
name=cyclecloud
baseurl=https://packages.microsoft.com/yumrepos/cyclecloud
gpgcheck=1
gpgkey=https://packages.microsoft.com/keys/microsoft.asc
EOF
sudo yum install -y jetpack8

通过 APT:

sudo wget -O /etc/apt/trusted.gpg.d/microsoft.asc https://packages.microsoft.com/keys/microsoft.asc
sudo echo 'deb [signed-by=/etc/apt/trusted.gpg.d/microsoft.asc] https://packages.microsoft.com/repos/cyclecloud bionic main' > /etc/apt/sources.list.d/cyclecloud.list
sudo apt update
sudo apt-get install -y jetpack8

或者,对于 APT/YUM 不是一个好的解决方案,仍可使用 Jetpack 存档 CycleCloud 捆绑包进行手动安装,如下所示。

手动安装 Jetpack

找到用于手动安装的 Jetpack 安装程序

可以在 CycleCloud 安装中找到 Jetpack 安装程序 :/opt/cycle_server/work/staging/jetpack。 此目录将包含可用于 Linux 和 Windows VM 安装的所有版本。

/opt/cycle_server/work/staging/jetpack/
├── 7.9.0
│   ├── jetpack-7.9.0-linux.tar.gz
│   └── jetpack-7.9.0-windows.zip
├── 7.9.1
│   ├── jetpack-7.9.1-linux.tar.gz
│   └── jetpack-7.9.1-windows.zip

注意

根据当前使用的 CycleCloud 版本,你看到的版本号可能与此处列出的版本号不同。

将 Jetpack 存档上传到 VM

找到要安装的 Jetpack 安装程序后,需要将其上传到 VM。 对于此示例 ,我们将使用 SCP 将文件移动到 Linux ,并将其移动到 azureuser的主目录中:

scp /opt/cycle/jetpack/work/staging/jetpack/7.9.0/jetpack-7.9.0-linux.tar.gz azureuser@myserver.eastus.cloudapp.com:/home/azureuser

注意

请勿使用 VMSS 中的 VM 来安装 Jetpack 和自定义映像。 无法从 VMSS 捕获 VM 映像。

安装 Jetpack

登录到上传了 Jetpack 安装程序的 VM,解压缩并运行 install 命令。 提供了适用于 Linux 和 Windows 的安装说明。

Linux

需要以 身份 azureuser登录。

tar -xf jetpack-7.9.0-linux.tar.gz
cd jetpack
./install.sh
mkdir -p /opt/cycle
tar -xf jetpack-8.0.0-linux.tar.gz -C /opt/cycle
./opt/cycle/jetpack/system/install/install.sh

Windows

unzip jetpack-7.9.0-windows.zip
cd jetpack
install.cmd
New-Item -Force -ItemType 'directory' -Path 'C:\cycle'
[System.Reflection.Assembly]::LoadWithPartialName('System.IO.Compression.FileSystem')
[System.IO.Compression.ZipFile]::ExtractToDirectory((Get-Item 'jetpack-8.0.0-windows.zip'), (Get-Item 'C:\cycle'))
C:\cycle\jetpack\system\install\install.cmd

这些命令会将 jetpack 安装到 Linux 上的 /opt/cycle/jetpack 或 Windows ($JETPACK_HOME) 上的 C:\cycle\jetpack 。 安装日志位于 $JETPACK_HOME/logs/installation.log

捕获自定义映像

安装 Jetpack 并执行任何其他自定义映像配置后,VM 即可进行映像捕获。 请注意, 说明在 WindowsLinux VM 之间有所不同。

将自定义映像与 CycleCloud 配合使用

若要将映像与 CycleCloud 群集一起使用, ImageName 可以在群集模板中指定 ,也可以使用 UI 中的自定义映像选项指定它。 如果已将自定义映像 MyCustomImage 命名为 ,我们将在群集模板中按如下所示使用它:

[[node custom]]
  ImageName = /subscriptions/xxxxxxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/MyResourceGroup/providers/Microsoft.Compute/images/MyCustomImage
  DownloadJetpack = false

注意

不需要指定 DownloadJetpack=false ,但通过在启动时不下载 Jetpack 可以节省少量时间。 如果未 DownloadJetpack 指定 ,CycleCloud 将尝试在运行时下载并安装 Jetpack,并查看是否已在映像上安装 Jetpack。

深入阅读