Azure 마켓플레이스에서 Cloud Volumes ONTAP용 VHD 이미지를 내보냅니다
VHD 이미지가 Azure 클라우드에 게시되면 더 이상 NetApp에서 관리하지 않습니다. 대신 게시된 이미지가 Azure 마켓플레이스에 배치됩니다. 이미지가 스테이징되어 Azure 마켓플레이스에 게시되면 Azure는 VHD 파일의 시작 부분 1MB, 끝 부분 512바이트를 수정합니다. VHD 파일의 서명을 확인하려면 Azure 마켓플레이스에서 Azure가 수정한 VHD 이미지를 내보내야 합니다.
시스템에 Azure CLI가 설치되어 있는지, 또는 Azure Portal을 통해 Azure Cloud Shell을 사용할 수 있는지 확인하세요. Azure CLI 설치 방법에 대한 자세한 내용은 다음을 참조하세요. "Azure 설명서: Azure CLI 설치 방법" .
-
version_readme 파일의 내용을 사용하여 시스템의 Cloud Volumes ONTAP 버전을 Azure Marketplace 이미지 버전에 매핑합니다. Cloud Volumes ONTAP 버전은 다음과 같이 표시됩니다.
buildname
Azure Marketplace 이미지 버전은 다음과 같이 표현됩니다.version
버전 매핑에서.다음 예에서는 Cloud Volumes ONTAP 버전
9.15.0P1
Azure Marketplace 이미지 버전에 매핑됨9150.01000024.05090105
. 이 Azure 마켓플레이스 이미지 버전은 나중에 이미지 URN을 설정하는 데 사용됩니다.[ "buildname": "9.15.0P1", "publisher": "netapp", "version": "9150.01000024.05090105" ]
-
VM을 생성할 지역을 식별합니다. 지역 이름은 값으로 사용됩니다.
locName
마켓플레이스 이미지의 URN을 설정할 때 변수를 사용합니다. 사용 가능한 지역을 나열하려면 다음 명령을 실행하세요.az account list-locations -o table
이 표에서는 지역 이름이 다음과 같이 나타납니다.
Name
필드.$ az account list-locations -o table DisplayName Name RegionalDisplayName ------------------------ ------------------- ------------------------------------- East US eastus (US) East US East US 2 eastus2 (US) East US 2 South Central US southcentralus (US) South Central US ...
-
아래 표에서 해당 Cloud Volumes ONTAP 버전 및 VM 배포 유형에 대한 SKU 이름을 검토하세요. SKU 이름은 다음 값의 값으로 사용됩니다.
skuName
마켓플레이스 이미지의 URN을 설정할 때 변수입니다.예를 들어 Cloud Volumes ONTAP 9.15.0을 사용하는 모든 단일 노드 배포는 SKU 이름으로 사용해야
ontap_cloud_byol
합니다.* Cloud Volumes ONTAP 버전 *
VM 배포를 통해
* SKU 이름 *
9.17.1 이상
Azure 마켓플레이스
ontap_cloud_direct_gen2
9.17.1 이상
BlueXP
ontap_cloud_gen2
9.16.1
Azure 마켓플레이스
ONTAP_CLOUD_DIRECT 를 참조하십시오
9.16.1
BlueXP
ONTAP_클라우드
9.15.1
BlueXP
ONTAP_클라우드
9.15.0
BlueXP, 단일 노드 배포
ONTAP_CLOUD_BYOL
9.15.0
BlueXP, 고가용성(HA) 배포
ONTAP_CLOUD_BYOL_ha
-
ONTAP 버전과 Azure 마켓플레이스 이미지를 매핑한 후 Azure Cloud Shell이나 Azure CLI를 사용하여 Azure 마켓플레이스에서 VHD 파일을 내보냅니다.
Linux에서 Azure Cloud Shell을 사용하여 VHD 파일 내보내기
Azure Cloud Shell에서 마켓플레이스 이미지를 VHD 파일(예: 9150.01000024.05090105.vhd)로 내보내고 로컬 Linux 시스템에 다운로드합니다. Azure 마켓플레이스에서 VHD 이미지를 가져오려면 다음 단계를 수행하세요.
-
마켓플레이스 이미지의 URN 및 기타 매개변수를 설정합니다. URN 형식은 다음과 같습니다.
<publisher>:<offer>:<sku>:<version>
. 선택적으로 NetApp 마켓플레이스 이미지를 나열하여 올바른 이미지 버전을 확인할 수 있습니다.PS /home/user1> $urn="netapp:netapp-ontap-cloud:ontap_cloud_byol:9150.01000024.05090105" PS /home/user1> $locName="eastus2" PS /home/user1> $pubName="netapp" PS /home/user1> $offerName="netapp-ontap-cloud" PS /home/user1> $skuName="ontap_cloud_byol" PS /home/user1> Get-AzVMImage -Location $locName -PublisherName $pubName -Offer $offerName -Sku $skuName |select version ... 141.20231128 9.141.20240131 9.150.20240213 9150.01000024.05090105 ...
-
마켓플레이스 이미지에서 일치하는 이미지 버전으로 새 관리 디스크를 만듭니다.
PS /home/user1> $diskName = “9150.01000024.05090105-managed-disk" PS /home/user1> $diskRG = “fnf1” PS /home/user1> az disk create -g $diskRG -n $diskName --image-reference $urn PS /home/user1> $sas = az disk grant-access --duration-in-seconds 3600 --access-level Read --name $diskName --resource-group $diskRG PS /home/user1> $diskAccessSAS = ($sas | ConvertFrom-Json)[0].accessSas
-
관리 디스크에서 Azure Storage로 VHD 파일을 내보냅니다. 적절한 액세스 수준을 가진 컨테이너를 만듭니다. 이 예에서는 다음과 같은 이름의 컨테이너를 사용했습니다.
vm-images
~와 함께Container
액세스 수준. Azure Portal에서 저장소 계정 액세스 키를 가져옵니다. 저장소 계정 > examplesaname > 액세스 키 > key1 > key > 표시 > <복사본>PS /home/user1> $storageAccountName = “examplesaname” PS /home/user1> $containerName = “vm-images” PS /home/user1> $storageAccountKey = "<replace with the above access key>" PS /home/user1> $destBlobName = “9150.01000024.05090105.vhd” PS /home/user1> $destContext = New-AzureStorageContext -StorageAccountName $storageAccountName -StorageAccountKey $storageAccountKey PS /home/user1> Start-AzureStorageBlobCopy -AbsoluteUri $diskAccessSAS -DestContainer $containerName -DestContext $destContext -DestBlob $destBlobName PS /home/user1> Get-AzureStorageBlobCopyState –Container $containerName –Context $destContext -Blob $destBlobName
-
생성된 이미지를 Linux 시스템에 다운로드
wget
VHD 파일을 다운로드하는 명령:wget <URL of filename/Containers/vm-images/9150.01000024.05090105.vhd>
URL은 표준 형식을 따릅니다. 자동화를 위해 아래와 같이 URL 문자열을 생성할 수 있습니다. 또는 Azure CLI를 사용할 수도 있습니다.
az
URL을 가져오는 명령입니다. URL 예시: https://examplesaname.blob.core.windows.net/vm-images/9150.01000024.05090105.vhd -
관리되는 디스크 정리
PS /home/user1> Revoke-AzDiskAccess -ResourceGroupName $diskRG -DiskName $diskName PS /home/user1> Remove-AzDisk -ResourceGroupName $diskRG -DiskName $diskName
Linux에서 Azure CLI를 사용하여 VHD 파일 내보내기
로컬 Linux 시스템에서 Azure CLI를 사용하여 마켓플레이스 이미지를 VHD 파일로 내보냅니다.
-
Azure CLI에 로그인하고 마켓플레이스 이미지를 나열합니다.
% az login --use-device-code
-
로그인하려면 웹 브라우저를 사용하여 페이지를 엽니다. https://microsoft.com/devicelogin 인증코드를 입력하세요.
% az vm image list --all --publisher netapp --offer netapp-ontap-cloud --sku ontap_cloud_byol ... { "architecture": "x64", "offer": "netapp-ontap-cloud", "publisher": "netapp", "sku": "ontap_cloud_byol", "urn": "netapp:netapp-ontap-cloud:ontap_cloud_byol:9150.01000024.05090105", "version": "9150.01000024.05090105" }, ...
-
마켓플레이스 이미지와 일치하는 이미지 버전에서 새로운 관리 디스크를 만듭니다.
% export urn="netapp:netapp-ontap-cloud:ontap_cloud_byol:9150.01000024.05090105" % export diskName="9150.01000024.05090105-managed-disk" % export diskRG="new_rg_your_rg" % az disk create -g $diskRG -n $diskName --image-reference $urn % az disk grant-access --duration-in-seconds 3600 --access-level Read --name $diskName --resource-group $diskRG { "accessSas": "https://md-xxxxxx.blob.core.windows.net/xxxxxxx/abcd?sv=2018-03-28&sr=b&si=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxx&sigxxxxxxxxxxxxxxxxxxxxxxxx" } % export diskAccessSAS="https://md-xxxxxx.blob.core.windows.net/xxxxxxx/abcd?sv=2018-03-28&sr=b&si=xxxxxxxx-xxxx-xx-xx-xx&sigxxxxxxxxxxxxxxxxxxxxxxxx"
프로세스를 자동화하려면 표준 출력에서 SAS를 추출해야 합니다. 자세한 내용은 관련 문서를 참조하십시오.
-
관리되는 디스크에서 VHD 파일을 내보냅니다.
-
적절한 액세스 수준을 가진 컨테이너를 생성합니다. 이 예에서는
vm-images
~와 함께Container
접근 수준이 사용됩니다. -
Azure Portal에서 저장소 계정 액세스 키를 가져옵니다. 저장소 계정 > examplesaname > 액세스 키 > key1 > key > 표시 > <복사>
또한 다음을 사용할 수도 있습니다.
az
이 단계에 대한 명령입니다.
% export storageAccountName="examplesaname" % export containerName="vm-images" % export storageAccountKey="xxxxxxxxxx" % export destBlobName="9150.01000024.05090105.vhd" % az storage blob copy start --source-uri $diskAccessSAS --destination-container $containerName --account-name $storageAccountName --account-key $storageAccountKey --destination-blob $destBlobName { "client_request_id": "xxxx-xxxx-xxxx-xxxx-xxxx", "copy_id": "xxxx-xxxx-xxxx-xxxx-xxxx", "copy_status": "pending", "date": "2022-11-02T22:02:38+00:00", "etag": "\"0xXXXXXXXXXXXXXXXXX\"", "last_modified": "2022-11-02T22:02:39+00:00", "request_id": "xxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx", "version": "2020-06-12", "version_id": null }
-
-
Blob 복사본의 상태를 확인합니다.
% az storage blob show --name $destBlobName --container-name $containerName --account-name $storageAccountName .... "copy": { "completionTime": null, "destinationSnapshot": null, "id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx", "incrementalCopy": null, "progress": "10737418752/10737418752", "source": "https://md-xxxxxx.blob.core.windows.net/xxxxx/abcd?sv=2018-03-28&sr=b&si=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "status": "success", "statusDescription": null }, ....
-
생성된 이미지를 Linux 서버로 다운로드합니다.
wget <URL of file examplesaname/Containers/vm-images/9150.01000024.05090105.vhd>
URL은 표준 형식을 따릅니다. 자동화를 위해 아래와 같이 URL 문자열을 생성할 수 있습니다. 또는 Azure CLI를 사용할 수도 있습니다.
az
URL을 가져오는 명령입니다. URL 예시: https://examplesaname.blob.core.windows.net/vm-images/9150.01000024.05090105.vhd -
관리되는 디스크 정리
az disk revoke-access --name $diskName --resource-group $diskRG az disk delete --name $diskName --resource-group $diskRG --yes