迁移您的应用程序
导入专用云设备
磁盘映像文件可用后,可以将其导入 PCA,而无需进一步更改。
从与 PCA 管理节点具有网络连接的任何 Web 服务器上载该服务器。该文件可以复制到现有 Web 服务器,也可以使用类似于以下内容的 Python 命令创建即兴 Web 服务器(根据需要调整端口号)。
- 如果您使用 Python 2.x,请使用
python -m HTTPSimpleServer 8080
- 如果使用 Python 3.x,请使用
python3 -m http.server 8000
。
映像使用 PCA 计算 Enclave 浏览器用户界面 (browser user interface,BUI) 或 OCI 命令行界面 (command line interface,CLI) 导入到 PCA。有关完整说明,请参见 User Guide section 5.1 。
使用浏览器界面导入
使用浏览器界面执行以下步骤进行导入:
- 登录到计算云。
- 转到“计算映像”页,然后单击导入映像。
- 在对话框窗口中输入详细信息。
- 选择对象存储 URL 并输入包含引导映像的文件的 URL。
- 指定 QCOW2 ,该文件适用于包含元数据和
output.QCOW2
磁盘映像文件的.qcow2
文件或.oci
文件。 - 单击导入图像以开始导入。这将转到显示图像状态的页面,最初是导入,然后在导入完成时显示可用。
注:
用户界面只有一个启动模式:半虚拟化。如果使用浏览器界面导入 UEFI 映像,则它可能会通过 BIOS 而非 UEFI 导入。PCA 发行说明 3.5.10 中的解决方法是使用 CLI 启动实例并指定启动选项。请参阅下面的“启动初始实例”。
执行导入所需的时间取决于映像的大小以及 Private Cloud Appliance 系统与 Web 服务器之间的网络速度。用户界面在导入期间未锁定,因此您可以继续执行其他任务或注销。通过查看图像的显示来检查图像的状态。
使用 OCI 命令行界面导入
如果使用 OCI CLI,请使用与以下示例类似的行,替换租户的映像 URL 和 OCID。
导入命令将生成导入工作单元的显示,您可以使用 'get' 命令显示其状态。
$ oci compute image import from-object-uri --uri
http://mynfs/shares/export/images/mydemo.oci --display-name "demo-image" --compartment-id
$OCI_CLI_TENANCY
{
"data": {
"agent-features": null,
"base-image-id": null,
"compartment-id":
"ocid1.tenancy.AK00661530.scasg01.lk0p5dyyyrdctdo3vvb9vdgr8zvdwznk7tcqtfmvzv1xxym66oak0009014
6",
"create-image-allowed": true,
"defined-tags": {},
"display-name":
"demo-image",
"freeform-tags": {},
"id":
"ocid1.image.AK00661530.scasg01.lt0xzicgaiv9plkwurk2xswia4x00e4ds2vyxa78d1xmk17b1indxamf6i4h"
,
"launch-mode": "PARAVIRTUALIZED",
"launch-options": null,
"lifecycle-state": "IMPORTING",
"operating-system": "UNAVAILABLE",
"operating-system-version": "UNAVAILABLE",
"size-in-mbs": 0,
"time-created": "2022-02-03T00:41:24.982617+00:00"
},"etag": "ae01e390-eab5-449c-b78d-c655235af23f",
"opc-work-request-id": "ocid1.workrequest.AK00661530.scasg01.storage1qsyui8onuv2q9evycdrnwtp13nj9l3eko37fzvhpahbobbav18r"
}
您可以通过浏览器界面查看导入,或者使用 import image 命令中显示的 OCID 通过 CLI 检查其状态。
$ oci compute image get --image-id
ocid1.image.AK00661530.scasg01.lt0xzicgaiv9plkwurk2xswia4x00e4ds2vyxa78d1xmk17b1indxamf6i4h
{
"data": {
"agent-features": null,
"base-image-id": null,
"compartment-id":
"ocid1.tenancy.AK00661530.scasg01.lk0p5dyyyrdctdo3vvb9vdgr8zvdwznk7tcqtfmvzv1xxym66oak0009014
6",
"create-image-allowed": true,
"defined-tags": {},
"display-name": "demo-image",
"freeform-tags": {},
"id":
"ocid1.image.AK00661530.scasg01.lt0xzicgaiv9plkwurk2xswia4x00e4ds2vyxa78d1xmk17b1indxamf6i4h"
,
"launch-mode": "CUSTOM",
"launch-options": { "boot-volume-type": "PARAVIRTUALIZED",
"firmware": "BIOS",
"is-consistent-volume-naming-enabled": false,
"is-pv-encryption-in-transit-enabled": false,
"network-type": "PARAVIRTUALIZED",
"remote-data-volume-type": "PARAVIRTUALIZED"
},
"lifecycle-state": "AVAILABLE"
"operating-system": "Fedora Linux"
"operating-system-version": "35"
"size-in-mbs": 512000
"time-created": "2022-02-03T00:41:24.982617+00:00
}
"etag": "d96dda18-e10b-4d87-83ab-425bb5cf582e
}
启动初始实例
无需使用浏览器界面或命令行界面即可启动映像。
按照以下说明使用浏览器启动实例:
- 从描述图像的页面中,单击控件下拉菜单。
- 单击创建实例。
- 在对话框窗口中,输入有关实例名称、容错域、配置以及虚拟网络和子网的详细信息。
- 如果使用
cloud-init
,请输入公钥以允许无密码ssh
。
实例正在创建时将处于预配状态,然后自动启动。预配实例后,您可以创建控制台连接以连接到实例控制台。
您也可以将 OCI CLI 与此类似的模式用于替代变量 display-name、shape、Source Details、subnet、key 和 names 的所需值:
$ oci compute instance launch -c $OCI_CLI_TENANCY \
--availability-domain ad1 \
--shape VM.PCAStandard1.2 \
--source-details '{"boot-volume-size-ingbs":100,"imageId":"$MYIMAGEID"},"sourceType":"image"}' \
--subnet-id $MYSUBNET_OCID \
--metadata '{"ssh_authorized_keys":"ssh-rsa ...$RESTOFMYKEY myuserid@mydesktop"}' \
--display-name "myinstance" \
--assign-public-ip true
CLI 的优点是它可编写脚本,并且可以批量重复,而手动步骤更少。如果需要覆盖启动模式或参数,可以在命令行中指定它们:
$ oci compute instance launch [...] \
--launch-options '{"boot-volumetype":"PARAVIRTUALIZED", "firmware":"UEFI_64", "is-consistent-volume-namingenabled":false,"is-pv-encryption-in-transit-enabled": false, "networktype":"PARAVIRTUALIZED","remote-data-volume-type": "PARAVIRTUALIZED"}'