تحميل VHD معمم إلى Azure لإنشاء جهاز ظاهري جديد

يغطي هذا الموضوع تحميل قرص غير مدار معمم إلى حساب تخزين ثم إنشاء جهاز ظاهري جديد باستخدام القرص الذي تم تحميله. تمت إزالة جميع معلومات حسابك الشخصي باستخدام Sysprep بواسطة صورة VHD المعممة.

إذا كنت ترغب في إنشاء جهاز ظاهري من VHD متخصص في حساب تخزين، فشاهد إنشاء جهاز ظاهري من VHD متخصص.

يغطي هذا الموضوع استخدام حسابات التخزين، ولكن نوصي العملاء بالانتقال إلى استخدام الأقراص المدارة بدلا من ذلك. للحصول على معاينة كاملة لكيفية إعداد جهاز ظاهري جديد وتحميله وإنشاءه باستخدام الأقراص المدارة، راجع إنشاء جهاز ظاهري جديد من VHD معمم تم تحميله إلى Azure باستخدام الأقراص المدارة.

إعداد الجهاز الظاهري

تمت إزالة جميع معلومات حسابك الشخصي باستخدام Sysprep بواسطة VHD المعمم. إذا كنت تنوي استخدام VHD كصورة لإنشاء أجهزة ظاهرية جديدة منه، فيجب عليك:

تعميم جهاز ظاهري يعمل بنظام Windows باستخدام Sysprep

يوضح لك هذا القسم كيفية تعميم جهاز Windows الظاهري لاستخدامه كصورة. يزيل Sysprep جميع معلومات حسابك الشخصي، من بين أمور أخرى، ويعد الجهاز لاستخدامه كصورة. للحصول على تفاصيل حول Sysprep، راجع كيفية استخدام Sysprep: مقدمة.

تأكد من أن أدوار الخادم التي تعمل على الجهاز مدعومة بواسطة Sysprep. لمزيد من المعلومات، راجع دعم Sysprep لأدوار الخادم

هام

إذا كنت تقوم بتشغيل Sysprep قبل تحميل VHD إلى Azure للمرة الأولى، فتأكد من إعداد الجهاز الظاهري قبل تشغيل Sysprep.

  1. قم بتسجيل الدخول إلى الجهاز الظاهري Windows.

  2. افتح نافذة موجه الأوامر كمسؤول. غير الدليل إلى ٪windir٪\system32\sysprep، ثم قم بتشغيل sysprep.exe.

  3. في مربع الحوار أداة إعداد النظام ، حدد إدخال تجربة النظام الجاهز (OOBE)، وتأكد من تحديد خانة الاختيار تعميم .

  4. في خيارات إيقاف التشغيل، حدد إيقاف التشغيل.

  5. انقر فوق موافق.

    بدء Sysprep

  6. عند اكتمال Sysprep، يقوم بإيقاف تشغيل الجهاز الظاهري.

هام

لا تقم بإعادة تشغيل الجهاز الظاهري حتى تنتهي من تحميل VHD إلى Azure أو إنشاء صورة من الجهاز الظاهري. إذا تمت إعادة تشغيل الجهاز الظاهري عن طريق الخطأ، فقم بتشغيل Sysprep لتعميمه مرة أخرى.

تحميل VHD

تحميل VHD إلى حساب تخزين Azure.

تسجيل الدخول إلى Azure

إذا لم يكن لديك إصدار PowerShell 1.4 أو أعلى مثبتا لديك بالفعل، فاقرأ كيفية تثبيت Azure PowerShell وتكوينه.

  1. افتح Azure PowerShell وسجل الدخول إلى حساب Azure الخاص بك. تفتح نافذة منبثقة لإدخال بيانات اعتماد حساب Azure.

    Connect-AzAccount
    
  2. احصل على معرفات الاشتراك لاشتراكاتك المتوفرة.

    Get-AzSubscription
    
  3. تعيين الاشتراك الصحيح باستخدام معرف الاشتراك. استبدل <subscriptionID> بمعرف الاشتراك الصحيح.

    Select-AzSubscription -SubscriptionId "<subscriptionID>"
    

الحصول على حساب التخزين

تحتاج إلى حساب تخزين في Azure لتخزين صورة الجهاز الظاهري التي تم تحميلها. يمكنك إما استخدام حساب تخزين موجود أو إنشاء حساب جديد.

لإظهار حسابات التخزين المتوفرة، اكتب:

Get-AzStorageAccount

إذا كنت تريد استخدام حساب تخزين موجود، فانتقل إلى قسم تحميل صورة الجهاز الظاهري.

إذا كنت بحاجة إلى إنشاء حساب تخزين، فاتبع الخطوات التالية:

  1. تحتاج إلى اسم مجموعة الموارد حيث يجب إنشاء حساب التخزين. لمعرفة جميع مجموعات الموارد الموجودة في اشتراكك، اكتب:

    Get-AzResourceGroup
    

    لإنشاء مجموعة موارد تسمى myResourceGroup في منطقة غرب الولايات المتحدة ، اكتب:

    New-AzResourceGroup -Name myResourceGroup -Location "West US"
    
  2. إنشاء حساب تخزين باسم mystorageaccount في مجموعة الموارد هذه باستخدام الأمر cmdlet New-AzStorageAccount :

    New-AzStorageAccount -ResourceGroupName myResourceGroup -Name mystorageaccount -Location "West US" `
        -SkuName "Standard_LRS" -Kind "Storage"
    

بدء التحميل

استخدم Add-AzVhd cmdlet لتحميل الصورة إلى حاوية في حساب التخزين الخاص بك. يقوم هذا المثال بتحميل الملف myVHD.vhd من "C:\Users\Public\Documents\Virtual hard disks\" إلى حساب تخزين يسمى mystorageaccount في مجموعة موارد myResourceGroup . سيتم وضع الملف في الحاوية المسماة mycontainer وسيكون اسم الملف الجديد myUploadedVHD.vhd.

$rgName = "myResourceGroup"
$urlOfUploadedImageVhd = "https://mystorageaccount.blob.core.windows.net/mycontainer/myUploadedVHD.vhd"
Add-AzVhd -ResourceGroupName $rgName -Destination $urlOfUploadedImageVhd `
    -LocalFilePath "C:\Users\Public\Documents\Virtual hard disks\myVHD.vhd"

إذا نجحت، فستحصل على استجابة تبدو مشابهة لما يلي:

MD5 hash is being calculated for the file C:\Users\Public\Documents\Virtual hard disks\myVHD.vhd.
MD5 hash calculation is completed.
Elapsed time for the operation: 00:03:35
Creating new page blob of size 53687091712...
Elapsed time for upload: 01:12:49

LocalFilePath           DestinationUri
-------------           --------------
C:\Users\Public\Doc...  https://mystorageaccount.blob.core.windows.net/mycontainer/myUploadedVHD.vhd

اعتمادا على اتصال الشبكة وحجم ملف VHD الخاص بك، قد يستغرق هذا الأمر بعض الوقت لإكماله.

إنشاء جهاز ظاهري جديد

يمكنك الآن استخدام VHD الذي تم تحميله لإنشاء جهاز ظاهري جديد.

تعيين URI ل VHD

عنوان URI الخاص ب VHD لاستخدامه بالتنسيق: https:// mystorageaccount.blob.core.windows.net/mycontainer/MyVhdName.vhd. في هذا المثال، يوجد VHD المسمى myVHD في حساب التخزين mystorageaccount في الحاوية mycontainer.

$imageURI = "https://mystorageaccount.blob.core.windows.net/mycontainer/myVhd.vhd"

إنشاء شبكة افتراضية

إنشاء vNet والشبكة الفرعية للشبكة الظاهرية.

  1. أنشئ الشبكة الفرعية. ينشئ النموذج التالي شبكة فرعية تسمى mySubnet في مجموعة الموارد myResourceGroup مع بادئة العنوان 10.0.0.0/24.

    $rgName = "myResourceGroup"
    $subnetName = "mySubnet"
    $singleSubnet = New-AzVirtualNetworkSubnetConfig -Name $subnetName -AddressPrefix 10.0.0.0/24
    
  2. أنشئ الشبكة الظاهرية. ينشئ النموذج التالي شبكة ظاهرية تسمى myVnet في موقع غرب الولايات المتحدة مع بادئة العنوان 10.0.0.0/16.

    $location = "WestUS"
    $vnetName = "myVnet"
    $vnet = New-AzVirtualNetwork -Name $vnetName -ResourceGroupName $rgName -Location $location `
        -AddressPrefix 10.0.0.0/16 -Subnet $singleSubnet
    

إنشاء عنوان IP عام وواجهة شبكة

لتمكين الاتصال مع الجهاز الظاهري في الشبكة الظاهرية، تحتاج إلى عنوان IP عام وواجهة شبكة.

  1. إنشاء عنوان IP عام. ينشئ هذا المثال عنوان IP عاما يسمى myPip.

    $ipName = "myPip"
    $pip = New-AzPublicIpAddress -Name $ipName -ResourceGroupName $rgName -Location $location `
        -AllocationMethod Dynamic
    
  2. أنشئ NIC. ينشئ هذا المثال NIC باسم myNic.

    $nicName = "myNic"
    $nic = New-AzNetworkInterface -Name $nicName -ResourceGroupName $rgName -Location $location `
        -SubnetId $vnet.Subnets[0].Id -PublicIpAddressId $pip.Id
    

إنشاء مجموعة أمان الشبكة وقاعدة RDP

لتتمكن من تسجيل الدخول إلى الجهاز الظاهري باستخدام RDP، تحتاج إلى قاعدة أمان تسمح بالوصول إلى RDP على المنفذ 3389.

ينشئ هذا المثال مجموعة أمان الشبكة تسمى myNsg تحتوي على قاعدة تسمى myRdpRule تسمح بحركة مرور RDP عبر المنفذ 3389. لمزيد من المعلومات حول مجموعات أمان الشبكة، راجع فتح المنافذ إلى جهاز ظاهري في Azure باستخدام PowerShell.

$nsgName = "myNsg"

$rdpRule = New-AzNetworkSecurityRuleConfig -Name myRdpRule -Description "Allow RDP" `
    -Access Allow -Protocol Tcp -Direction Inbound -Priority 110 `
    -SourceAddressPrefix Internet -SourcePortRange * `
    -DestinationAddressPrefix * -DestinationPortRange 3389

$nsg = New-AzNetworkSecurityGroup -ResourceGroupName $rgName -Location $location `
    -Name $nsgName -SecurityRules $rdpRule

إنشاء متغير للشبكة الظاهرية

إنشاء متغير للشبكة الظاهرية المكتملة.

$vnet = Get-AzVirtualNetwork -ResourceGroupName $rgName -Name $vnetName

إنشاء جهاز ظاهري

يوضح البرنامج النصي PowerShell التالي كيفية إعداد تكوينات الجهاز الظاهري واستخدام صورة الجهاز الظاهري التي تم تحميلها كمصدر للتثبيت الجديد.

# Enter a new user name and password to use as the local administrator account 
    # for remotely accessing the VM.
    $cred = Get-Credential

    # Name of the storage account where the VHD is located. This example sets the 
    # storage account name as "myStorageAccount"
    $storageAccName = "myStorageAccount"

    # Name of the virtual machine. This example sets the VM name as "myVM".
    $vmName = "myVM"

    # Size of the virtual machine. This example creates "Standard_D2_v2" sized VM. 
    # See the VM sizes documentation for more information: 
    # https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/
    $vmSize = "Standard_D2_v2"

    # Computer name for the VM. This examples sets the computer name as "myComputer".
    $computerName = "myComputer"

    # Name of the disk that holds the OS. This example sets the 
    # OS disk name as "myOsDisk"
    $osDiskName = "myOsDisk"

    # Assign a SKU name. This example sets the SKU name as "Standard_LRS"
    # Valid values for -SkuName are: Standard_LRS - locally redundant storage, Standard_ZRS - zone redundant
    # storage, Standard_GRS - geo redundant storage, Standard_RAGRS - read access geo redundant storage,
    # Premium_LRS - premium locally redundant storage. 
    $skuName = "Standard_LRS"

    # Get the storage account where the uploaded image is stored
    $storageAcc = Get-AzStorageAccount -ResourceGroupName $rgName -AccountName $storageAccName

    # Set the VM name and size
    $vmConfig = New-AzVMConfig -VMName $vmName -VMSize $vmSize

    #Set the Windows operating system configuration and add the NIC
    $vm = Set-AzVMOperatingSystem -VM $vmConfig -Windows -ComputerName $computerName `
        -Credential $cred -ProvisionVMAgent -EnableAutoUpdate
    $vm = Add-AzVMNetworkInterface -VM $vm -Id $nic.Id

    # Create the OS disk URI
    $osDiskUri = '{0}vhds/{1}-{2}.vhd' `
        -f $storageAcc.PrimaryEndpoints.Blob.ToString(), $vmName.ToLower(), $osDiskName

    # Configure the OS disk to be created from the existing VHD image (-CreateOption fromImage).
    $vm = Set-AzVMOSDisk -VM $vm -Name $osDiskName -VhdUri $osDiskUri `
        -CreateOption fromImage -SourceImageUri $imageURI -Windows

    # Create the new VM
    New-AzVM -ResourceGroupName $rgName -Location $location -VM $vm

تحقق من إنشاء الجهاز الظاهري

عند الاكتمال، يجب أن تشاهد الجهاز الظاهري الذي تم إنشاؤه حديثا في مدخل Microsoft Azure ضمن استعراض>الأجهزة الظاهرية، أو باستخدام أوامر PowerShell التالية:

    $vmList = Get-AzVM -ResourceGroupName $rgName
    $vmList.Name

الخطوات التالية

لإدارة جهازك الظاهري الجديد باستخدام Azure PowerShell، راجع إدارة الأجهزة الظاهرية باستخدام Azure Resource Manager وPowerShell.