نشر الأجهزة الظاهرية على جهاز Azure Stack Edge عبر Azure PowerShell
ينطبق على:
Azure Stack Edge Pro - GPUAzure
Stack Edge Pro 2Azure
Stack Edge Pro RAzure
Stack Edge Mini R
توضح هذه المقالة كيفية إنشاء جهاز ظاهري (VM) وإدارته على جهاز Azure Stack Edge باستخدام Azure PowerShell.
سير عمل نشر الجهاز الظاهري
سير عمل النشر رفيع المستوى لنشر الجهاز الظاهري هو كما يلي:
- الاتصال إلى Resource Manager Azure المحلي لجهازك.
- حدد الاشتراك المضمن على الجهاز.
- أحضر صورة الجهاز الظاهري الخاص بك.
- إنشاء مجموعة موارد في الاشتراك المضمن. ستحتوي مجموعة الموارد على الجهاز الظاهري وجميع الموارد ذات الصلة.
- قم بإنشاء حساب تخزين محلي على الجهاز لتخزين VHD الذي سيتم استخدامه لإنشاء صورة VM.
- Upload صورة مصدر Windows/Linux في حساب التخزين لإنشاء قرص مدار.
- استخدم القرص المدار لإنشاء صورة جهاز ظاهري.
- تمكين الحوسبة على منفذ جهاز لإنشاء محول افتراضي.
- يؤدي ذلك إلى إنشاء شبكة ظاهرية باستخدام المبدل الظاهري المرفق بالمنفذ الذي قمت بتمكين الحوسبة عليه.
- قم بإنشاء جهاز ظاهري باستخدام صورة الجهاز الظاهري التي تم إنشاؤها مسبقا والشبكة الظاهرية وواجهة (واجهات) الشبكة الظاهرية للاتصال داخل الشبكة الظاهرية وتعيين عنوان IP عام للوصول إلى الجهاز الظاهري عن بعد. يمكنك اختياريا تضمين أقراص البيانات لتوفير مساحة تخزين أكبر للجهاز الظاهري.
المتطلبات الأساسية
قبل أن تتمكن من نشر الأجهزة الظاهرية على جهاز Azure Stack Edge، يجب عليك تكوين العميل للاتصال بالجهاز عبر Azure Resource Manager عبر Azure PowerShell. للحصول على إرشادات مفصلة، راجع الاتصال إلى Azure Resource Manager على جهاز Azure Stack Edge.
تأكد من أنه يمكنك استخدام الخطوات التالية للوصول إلى الجهاز من عميلك. لقد قمت بالفعل بإجراء هذا التكوين عند الاتصال ب Azure Resource Manager، والآن تقوم بالتحقق من نجاح التكوين.
تحقق من أن اتصال Azure Resource Manager يعمل عن طريق تشغيل الأمر التالي:
للاتصال بواجهات برمجة تطبيقات الأجهزة المحلية للمصادقة، أدخل:
إذا قمت بتكوين حساب ل Kubernetes، يمكنك تخطي هذه الخطوة. وإلا، تأكد من تمكين واجهة شبكة للحوسبة عن طريق القيام بما يلي:
أ. على واجهة المستخدم المحلية، انتقل إلى إعدادات الحساب .
ب. حدد واجهة الشبكة التي تريد استخدامها لإنشاء محول افتراضي. سيتم توصيل الأجهزة الظاهرية التي تقوم بإنشائها بمفتاح افتراضي متصل بهذا المنفذ والشبكة المقترنة. تأكد من اختيار شبكة تطابق عنوان IP الذي ستستخدمه للجهاز الظاهري.
ج. ضمن تمكين للحساب على واجهة الشبكة، حدد نعم. سيقوم Azure Stack Edge بإنشاء وإدارة محول ظاهري يتوافق مع واجهة الشبكة هذه. لا تقم بإدخال عناوين IP محددة ل Kubernetes في الوقت الحالي. قد يستغرق الأمر عدة دقائق لتمكين الحوسبة.
ملاحظة
إذا كنت تقوم بإنشاء أجهزة ظاهرية لوحدة معالجة الرسومات، فحدد واجهة شبكة متصلة بالإنترنت. يتيح لك القيام بذلك تثبيت ملحق GPU على جهازك.
الاستعلام عن اشتراك مضمن على الجهاز
بالنسبة إلى Azure Resource Manager، يتم دعم اشتراك ثابت واحد فقط مرئي للمستخدم. هذا الاشتراك فريد لكل جهاز، ولا يمكن تغيير اسم الاشتراك ومعرف الاشتراك.
يحتوي الاشتراك على كافة الموارد المطلوبة لإنشاء الأجهزة الظاهرية.
هام
يتم إنشاء الاشتراك عند تمكين الأجهزة الظاهرية من مدخل Azure، ويعيش محليا على جهازك.
يتم استخدام الاشتراك لنشر الأجهزة الظاهرية.
لإدراج الاشتراك، قم بتشغيل الأمر التالي:
Get-AzSubscriptionفيما يلي بعض الأمثلة على الإخراج:
PS C:\WINDOWS\system32> Get-AzSubscription Name Id TenantId ---- -- -------- Default Provider Subscription ... ... PS C:\WINDOWS\system32>احصل على قائمة بموفري الموارد المسجلين الذين يعملون على الجهاز. تتضمن القائمة عادة الحوسبة والشبكة والتخزين.
Get-AzResourceProviderملاحظة
يتم تسجيل موفري الموارد مسبقا، ولا يمكن تعديلهم أو تغييرهم.
فيما يلي بعض الأمثلة على الإخراج:
PS C:\WINDOWS\system32> Get-AzResourceProvider ProviderNamespace : Microsoft.AzureBridge RegistrationState : Registered ResourceTypes : {locations, operations, locations/ingestionJobs} Locations : {DBELocal} ProviderNamespace : Microsoft.Compute RegistrationState : Registered ResourceTypes : {virtualMachines, virtualMachines/extensions, locations, operations...} Locations : {DBELocal} ProviderNamespace : Microsoft.Network RegistrationState : Registered ResourceTypes : {operations, locations, locations/operations, locations/usages...} Locations : {DBELocal} ProviderNamespace : Microsoft.Resources RegistrationState : Registered ResourceTypes : {tenants, locations, providers, checkresourcename...} Locations : {DBELocal} ProviderNamespace : Microsoft.Storage RegistrationState : Registered ResourceTypes : {storageaccounts, storageAccounts/blobServices, storageAccounts/tableServices, storageAccounts/queueServices...} Locations : {DBELocal} PS C:\WINDOWS\system32>
قم بإنشاء مجموعة موارد
ابدأ بإنشاء مجموعة موارد Azure جديدة واستخدمها كحاوية منطقية لجميع الموارد المتعلقة بالجهاز الظاهري، مثل حساب التخزين والقرص وواجهة الشبكة والقرص المدار.
هام
يتم إنشاء جميع الموارد في نفس موقع الجهاز ، ويتم تعيين الموقع إلى DBELocal.
تعيين بعض المعلمات.
$ResourceGroupName = "<Resource group name>"قم بإنشاء مجموعة موارد للموارد التي ستقوم بإنشائها للجهاز الظاهري.
New-AzResourceGroup -Name $ResourceGroupName -Location DBELocalفيما يلي بعض الأمثلة على الإخراج:
PS C:\WINDOWS\system32> New-AzResourceGroup -Name myaseazrg -Location DBELocal ResourceGroupName : myaseazrg Location : dbelocal ProvisioningState : Succeeded Tags : ResourceId : /subscriptions/.../resourceGroups/myaseazrg PS C:\WINDOWS\system32>
إنشاء حساب تخزين محلي
إنشاء حساب تخزين محلي جديد باستخدام مجموعة موارد موجودة. استخدم حساب التخزين المحلي هذا لتحميل صورة القرص الظاهري عند إنشاء جهاز ظاهري.
قبل إنشاء حساب تخزين محلي، يجب تكوين العميل للاتصال بالجهاز عبر Azure Resource Manager عبر Azure PowerShell. للحصول على إرشادات مفصلة، راجع الاتصال إلى Azure Resource Manager على جهاز Azure Stack Edge.
تعيين بعض المعلمات.
$StorageAccountName = "<Storage account name>"أنشئ حساب تخزين محلي جديد على جهازك.
New-AzStorageAccount -Name $StorageAccountName -ResourceGroupName $ResourceGroupName -Location DBELocal -SkuName Standard_LRSملاحظة
باستخدام Azure Resource Manager، يمكنك إنشاء حسابات تخزين محلية فقط، مثل التخزين المتكرر محليا (قياسي أو متميز). لإنشاء حسابات تخزين متدرجة، راجع البرنامج التعليمي: نقل البيانات عبر حسابات التخزين باستخدام Azure Stack Edge Pro باستخدام وحدة معالجة الرسومات.
فيما يلي مثال على ذلك:
PS C:\WINDOWS\system32> New-AzStorageAccount -Name myaseazsa -ResourceGroupName myaseazrg -Location DBELocal -SkuName Standard_LRS StorageAccountName ResourceGroupName PrimaryLocation SkuName Kind AccessTier CreationTime ------------------ ----------------- --------------- ------- ---- ---------- ------------ myaseazsa myaseazrg DBELocal Standard_LRS Storage 6/10/2021 11:45... PS C:\WINDOWS\system32>
للحصول على مفاتيح الوصول لحساب تخزين محلي موجود قمت بإنشائه، قم بتوفير اسم مجموعة الموارد المقترنة واسم حساب التخزين المحلي.
Get-AzStorageAccountKey
فيما يلي مثال على ذلك:
PS C:\WINDOWS\system32> Get-AzStorageAccountKey
cmdlet Get-AzStorageAccountKey at command pipeline position 1
Supply values for the following parameters:
(Type !? for Help.)
ResourceGroupName: myaseazrg
Name: myaseazsa
KeyName Value Permissions
------- ----- ------
key1 gv3OF57tuPDyzBNc1M7fhil2UAiiwnhTT6zgiwE3TlF/CD217Cvw2YCPcrKF47joNKRvzp44leUe5HtVkGx8RQ== Full
key2 kmEynIs3xnpmSxWbU41h5a7DZD7v4gGV3yXa2NbPbmhrPt10+QmE5PkOxxypeSqbqzd9si+ArNvbsqIRuLH2Lw== Full
PS C:\WINDOWS\system32>
إضافة URI blob إلى الملف المضيف
لقد قمت بالفعل بإضافة عنوان URI الكتلي في ملف المضيفين للعميل الذي تستخدمه للاتصال ب Azure Blob Storage في تعديل ملف المضيف لدقة اسم نقطة النهايةللاتصال ب Azure Resource Manager على جهاز Azure Stack Edge الخاص بك. تم استخدام هذا الإدخال لإضافة URI blob:
<Device IP address> <storage name>.blob.<appliance name>.<dnsdomain>
تثبيت الشهادات
إذا كنت تستخدم HTTPS، فستحتاج إلى تثبيت الشهادات المناسبة على جهازك. هنا، يمكنك تثبيت شهادة نقطة نهاية blob. لمزيد من المعلومات، راجع استخدام الشهادات مع Azure Stack Edge Pro مع جهاز GPU.
Upload VHD
انسخ أي صور قرص لاستخدامها في نقاط الصفحات في حساب التخزين المحلي الذي قمت بإنشائه مسبقا. يمكنك استخدام أداة مثل AzCopy لتحميل القرص الثابت الظاهري (VHD) إلى حساب التخزين.
استخدم الأوامر التالية مع AzCopy 10:
قم بتعيين بعض المعلمات بما في ذلك الإصدار المناسب من واجهات برمجة التطبيقات ل AzCopy. في هذا المثال، تم استخدام AzCopy 10.
$Env:AZCOPY_DEFAULT_SERVICE_API_VERSION="2019-07-07" $ContainerName = <Container name> $ResourceGroupName = <Resource group name> $StorageAccountName = <Storage account name> $VHDPath = "Full VHD Path" $VHDFile = <VHD file name>انسخ VHD من المصدر (في هذه الحالة ، النظام المحلي) إلى حساب التخزين الذي أنشأته على جهازك في الخطوة السابقة.
$StorageAccountKey = (Get-AzStorageAccountKey -ResourceGroupName $ResourceGroupName -Name $StorageAccountName)[0].Value $endPoint = (Get-AzStorageAccount -name $StorageAccountName -ResourceGroupName $ResourceGroupName).PrimaryEndpoints.Blob $StorageAccountContext = New-AzStorageContext -StorageAccountName $StorageAccountName -StorageAccountKey $StorageAccountKey -Endpoint $endpoint $StorageAccountSAS = New-AzStorageAccountSASToken -Service Blob -ResourceType Container,Service,Object -Permission "acdlrw" -Context $StorageAccountContext -Protocol HttpsOnly <Path to azcopy.exe> cp "$VHDPath\$VHDFile" "$endPoint$ContainerName$StorageAccountSAS"فيما يلي مثال على ذلك:
PS C:\windows\system32> $ContainerName = "testcontainer1" PS C:\windows\system32> $ResourceGroupName = "myaseazrg" PS C:\windows\system32> $StorageAccountName = "myaseazsa" PS C:\windows\system32> $VHDPath = "C:\Users\alkohli\Downloads\Ubuntu1604" PS C:\windows\system32> $VHDFile = "ubuntu13.vhd" PS C:\windows\system32> $StorageAccountKey = (Get-AzStorageAccountKey -ResourceGroupName $ResourceGroupName -Name $StorageAccountName)[0].Value PS C:\windows\system32> $endPoint = (Get-AzStorageAccount -name $StorageAccountName -ResourceGroupName $ResourceGroupName).PrimaryEndpoints.Blob PS C:\windows\system32> $StorageAccountContext = New-AzStorageContext -StorageAccountName $StorageAccountName -StorageAccountKey $StorageAccountKey -Endpoint $endpoint PS C:\windows\system32> $StorageAccountSAS = New-AzStorageAccountSASToken -Service Blob -ResourceType Container,Service,Object -Permission "acdlrw" -Context $StorageAccountContext -Protocol HttpsOnly PS C:\windows\system32> C:\azcopy\azcopy_windows_amd64_10.10.0\azcopy.exe cp "$VHDPath\$VHDFile" "$endPoint$ContainerName$StorageAccountSAS" INFO: Scanning... INFO: Any empty folders will not be processed, because source and/or destination doesn't have full folder support Job 72a5e3dd-9210-3e43-6691-6bebd4875760 has started Log file is located at: C:\Users\alkohli\.azcopy\72a5e3dd-9210-3e43-6691-6bebd4875760.log INFO: azcopy.exe: A newer version 10.11.0 is available to download
إنشاء قرص مدار من VHD
ستقوم الآن بإنشاء قرص مدار من VHD الذي تم تحميله.
تعيين بعض المعلمات.
$DiskName = "<Managed disk name>"إنشاء قرص مدار من VHD الذي تم تحميله. للحصول على عنوان URL المصدر لدقة VHD، انتقل إلى الحاوية الموجودة في حساب التخزين الذي يحتوي على VHD في "مستكشف التخزين". حدد VHD، ثم انقر بزر الماوس الأيمن فوق خصائص، ثم حدد خصائص. في مربع الحوار خصائص Blob، حدد عنوان URI.
$StorageAccountId = (Get-AzStorageAccount -ResourceGroupName $ResourceGroupName -Name $StorageAccountName).Id $DiskConfig = New-AzDiskConfig -Location DBELocal -StorageAccountId $StorageAccountId -CreateOption Import -SourceUri "Source URL for your VHD" New-AzDisk -ResourceGroupName $ResourceGroupName -DiskName $DiskName -Disk $DiskConfigفيما يلي مثال على الإخراج:.
PS C:\WINDOWS\system32> $DiskName = "myazmd" PS C:\WINDOWS\system32> $StorageAccountId = (Get-AzStorageAccount -ResourceGroupName $ResourceGroupName -Name $StorageAccountName).Id PS C:\WINDOWS\system32> $DiskConfig = New-AzDiskConfig -Location DBELocal -StorageAccountId $StorageAccountId -CreateOption Import -SourceUri "https://myaseazsa.blob.myasegpu.wdshcsso.com/testcontainer1/ubuntu13.vhd" PS C:\WINDOWS\system32> New-AzDisk -ResourceGroupName $ResourceGroupName -DiskName $DiskName -Disk $DiskConfig ResourceGroupName : myaseazrg ManagedBy : Sku : Microsoft.Azure.Management.Compute.Models.DiskSku Zones : TimeCreated : 6/24/2021 12:19:56 PM OsType : HyperVGeneration : CreationData : Microsoft.Azure.Management.Compute.Models.CreationDat a DiskSizeGB : 30 DiskSizeBytes : 32212254720 UniqueId : 53743801-cbf2-4d2f-acb4-971d037a9395 EncryptionSettingsCollection : ProvisioningState : Succeeded DiskIOPSReadWrite : 500 DiskMBpsReadWrite : 60 DiskState : Unattached Encryption : Microsoft.Azure.Management.Compute.Models.Encryption Id : /subscriptions/.../r esourceGroups/myaseazrg/providers/Microsoft.Compute/d isks/myazmd Name : myazmd Type : Microsoft.Compute/disks Location : DBELocal Tags : {} PS C:\WINDOWS\system32>
إنشاء صورة جهاز ظاهري من القرص المدار
ستقوم الآن بإنشاء صورة VM من القرص المدار.
تعيين بعض المعلمات.
$DiskSize = "<Size greater than or equal to size of source managed disk>" $OsType = "<linux or windows>" $ImageName = "<Image name>"إنشاء صورة VM. أنواع أنظمة التشغيل المدعومة هي Linux و Windows.
$imageConfig = New-AzImageConfig -Location DBELocal $ManagedDiskId = (Get-AzDisk -Name $DiskName -ResourceGroupName $ResourceGroupName).Id Set-AzImageOsDisk -Image $imageConfig -OsType $OsType -OsState 'Generalized' -DiskSizeGB $DiskSize -ManagedDiskId $ManagedDiskId New-AzImage -Image $imageConfig -ImageName $ImageName -ResourceGroupName $ResourceGroupNameفيما يلي مثال على الإخراج.
PS C:\WINDOWS\system32> $OsType = "linux" PS C:\WINDOWS\system32> $ImageName = "myaseazlinuxvmimage" PS C:\WINDOWS\system32> $DiskSize = 35 PS C:\WINDOWS\system32> $imageConfig = New-AzImageConfig -Location DBELocal PS C:\WINDOWS\system32> $ManagedDiskId = (Get-AzDisk -Name $DiskName -ResourceGroupName $ResourceGroupName).Id PS C:\WINDOWS\system32> Set-AzImageOsDisk -Image $imageConfig -OsType $OsType -OsState 'Generalized' -DiskSizeGB $DiskSize -ManagedDiskId $ManagedDiskId ResourceGroupName : SourceVirtualMachine : StorageProfile : Microsoft.Azure.Management.Compute.Models.ImageStorageProfile ProvisioningState : HyperVGeneration : V1 Id : Name : Type : Location : DBELocal Tags : PS C:\WINDOWS\system32> New-AzImage -Image $imageConfig -ImageName $ImageName -ResourceGroupName $ResourceGroupName ResourceGroupName : myaseazrg SourceVirtualMachine : StorageProfile : Microsoft.Azure.Management.Compute.Models.ImageStorageProfile ProvisioningState : Succeeded HyperVGeneration : V1 Id : /subscriptions/.../resourceG roups/myaseazrg/providers/Microsoft.Compute/images/myaseazlin uxvmimage Name : myaseazlinuxvmimage Type : Microsoft.Compute/images Location : dbelocal Tags : {} PS C:\WINDOWS\system32>
إنشاء جهاز ظاهري باستخدام موارد تم إنشاؤها مسبقا
قبل إنشاء الجهاز الظاهري ونشره، يجب إنشاء شبكة ظاهرية واحدة وإقران واجهة شبكة ظاهرية بها.
هام
تطبق القواعد التالية:
- يمكنك إنشاء شبكة افتراضية واحدة فقط، حتى عبر مجموعات الموارد. يجب أن تحتوي الشبكة الظاهرية على نفس مساحة العنوان تماما مثل الشبكة المنطقية.
- يمكن أن تحتوي الشبكة الظاهرية على شبكة فرعية واحدة فقط. يجب أن تحتوي الشبكة الفرعية على نفس مساحة العنوان تماما مثل الشبكة الظاهرية.
- عند إنشاء بطاقة واجهة الشبكة الظاهرية، يمكنك استخدام طريقة التخصيص الثابتة فقط. يحتاج المستخدم إلى توفير عنوان IP خاص.
الاستعلام عن الشبكة الظاهرية التي تم إنشاؤها تلقائيا
عند تمكين الحوسبة من واجهة المستخدم المحلية لجهازك، يتم إنشاء شبكة ظاهرية يتم استدعاؤها ASEVNET تلقائيا، ضمن ASERG مجموعة الموارد.
استخدم الأمر التالي للاستعلام عن الشبكة الظاهرية الموجودة:
$ArmVn = Get-AzVirtualNetwork -Name ASEVNET -ResourceGroupName ASERG
إنشاء بطاقة واجهة شبكة افتراضية
ستقوم بإنشاء بطاقة واجهة شبكة ظاهرية باستخدام معرف الشبكة الفرعية للشبكة الظاهرية.
تعيين بعض المعلمات.
$IpConfigName = "<IP config name>" $NicName = "<Network interface name>"إنشاء واجهة شبكة افتراضية.
$ipConfig = New-AzNetworkInterfaceIpConfig -Name $IpConfigName -SubnetId $aRmVN.Subnets[0].Id $Nic = New-AzNetworkInterface -Name $NicName -ResourceGroupName $ResourceGroupName -Location DBELocal -IpConfiguration $IpConfigبشكل افتراضي، يتم تعيين عنوان IP ديناميكيا لواجهة الشبكة من الشبكة الممكنة للحوسبة. استخدم إذا
-PrivateIpAddress parameterكنت تقوم بتخصيص عنوان IP ثابت لواجهة الشبكة.فيما يلي مثال على ذلك:
PS C:\WINDOWS\system32> $IpConfigName = "myazipconfig1" PS C:\WINDOWS\system32> $NicName = "myaznic1" PS C:\WINDOWS\system32> $ipConfig = New-AzNetworkInterfaceIpConfig -Name $IpConfigName -SubnetId $aRmVN.Subnets[0].Id PS C:\WINDOWS\system32> $ipConfig = New-AzNetworkInterfaceIpConfig -Name $IpConfigName -SubnetId $aRmVN.Subnets[0].Id PS C:\WINDOWS\system32> $Nic = New-AzNetworkInterface -Name $NicName -ResourceGroupName $ResourceGroupName -Location DBELocal -IpConfiguration $IpConfig PS C:\WINDOWS\system32> $Nic Name : myaznic1 ResourceGroupName : myaseazrg Location : dbelocal Id : /subscriptions/.../re sourceGroups/myaseazrg/providers/Microsoft.Network/net workInterfaces/myaznic1 Etag : W/"0b20057b-2102-4f34-958b-656327c0fb1d" ResourceGuid : e7d4131f-6f01-4492-9d4c-a8ff1af7244f ProvisioningState : Succeeded Tags : VirtualMachine : null IpConfigurations : [ { "Name": "myazipconfig1", "Etag": "W/\"0b20057b-2102-4f34-958b-656327c0fb1d\"", "Id": "/subscriptions/.../resourceGroups/myaseazrg/providers/Microsoft. Network/networkInterfaces/myaznic1/ipConfigurations/my azipconfig1", "PrivateIpAddress": "10.126.76.60", "PrivateIpAllocationMethod": "Dynamic", "Subnet": { "Delegations": [], "Id": "/subscriptions/.../resourceGroups/ASERG/providers/Microsoft.Ne twork/virtualNetworks/ASEVNET/subnets/ASEVNETsubNet", "ServiceAssociationLinks": [] }, "ProvisioningState": "Succeeded", "PrivateIpAddressVersion": "IPv4", "LoadBalancerBackendAddressPools": [], "LoadBalancerInboundNatRules": [], "Primary": true, "ApplicationGatewayBackendAddressPools": [], "ApplicationSecurityGroups": [] } ] DnsSettings : { "DnsServers": [], "AppliedDnsServers": [], "InternalDomainNameSuffix": "auwlfcx0dhxurjgisct43fc ywb.a--x.internal.cloudapp.net" } EnableIPForwarding : False EnableAcceleratedNetworking : False NetworkSecurityGroup : null Primary : MacAddress : 001DD84A58D1 PS C:\WINDOWS\system32>
اختياريا، أثناء إنشاء بطاقة واجهة شبكة افتراضية لجهاز ظاهري، يمكنك تمرير عنوان IP العام. في هذه الحالة، يقوم عنوان IP العام بإرجاع عنوان IP الخاص.
New-AzPublicIPAddress -Name <Public IP> -ResourceGroupName <ResourceGroupName> -AllocationMethod Static -Location DBELocal
$publicIP = (Get-AzPublicIPAddress -Name <Public IP> -ResourceGroupName <Resource group name>).Id
$ipConfig = New-AzNetworkInterfaceIpConfig -Name <ConfigName> -PublicIpAddressId $publicIP -SubnetId $subNetId
إنشاء الجهاز الظاهري
يمكنك الآن استخدام صورة الجهاز الظاهري لإنشاء جهاز ظاهري وإرفاقه بالشبكة الظاهرية التي قمت بإنشائها مسبقا.
قم بتعيين اسم المستخدم وكلمة المرور لتسجيل الدخول إلى الجهاز الظاهري الذي تريد إنشاؤه.
$pass = ConvertTo-SecureString "<Password>" -AsPlainText -Force; $cred = New-Object System.Management.Automation.PSCredential("<Enter username>", $pass)بعد إنشاء الجهاز الظاهري وتشغيله، ستستخدم اسم المستخدم وكلمة المرور السابقين لتسجيل الدخول إليه.
تعيين المعلمات.
$VmName = "<VM name>" $ComputerName = "<VM display name>" $OsDiskName = "<OS disk name>"إنشاء جهاز ظاهري VM.
$VirtualMachine = New-AzVMConfig -VmName $VmName -VMSize "Standard_D1_v2" $VirtualMachine = Set-AzVMOperatingSystem -VM $VirtualMachine -Linux -ComputerName $ComputerName -Credential $cred $VirtualMachine = Set-AzVmOsDisk -VM $VirtualMachine -Name $OsDiskName -Caching "ReadWrite" -CreateOption "FromImage" -Linux -StorageAccountType Standard_LRS $nicID = (Get-AzNetworkInterface -Name $NicName -ResourceGroupName $ResourceGroupName).Id $VirtualMachine = Add-AzVMNetworkInterface -Vm $VirtualMachine -Id $nicID $image = ( Get-AzImage -ResourceGroupName $ResourceGroupName -ImageName $ImageName).Id $VirtualMachine = Set-AzVMSourceImage -VM $VirtualMachine -Id $image New-AzVM -ResourceGroupName $ResourceGroupName -Location DBELocal -VM $VirtualMachine -Verboseفيما يلي مثال على الإخراج.
PS C:\WINDOWS\system32> $pass = ConvertTo-SecureString "Password1" -AsPlainText -Force; PS C:\WINDOWS\system32> $cred = New-Object System.Management.Automation.PSCredential("myazuser", $pass) PS C:\WINDOWS\system32> $VmName = "myazvm" >> $ComputerName = "myazvmfriendlyname" >> $OsDiskName = "myazosdisk1" PS C:\WINDOWS\system32> $VirtualMachine = New-AzVMConfig -VmName $VmName -VMSize "Standard_D1_v2" PS C:\WINDOWS\system32> $VirtualMachine = Set-AzVMOperatingSystem -VM $VirtualMachine -Linux -ComputerName $ComputerName -Credential $cred PS C:\WINDOWS\system32> $VirtualMachine = Set-AzVmOsDisk -VM $VirtualMachine -Name $OsDiskName -Caching "ReadWrite" -CreateOption "FromImage" -Linux -StorageAccountType Standard_LRS PS C:\WINDOWS\system32> $nicID = (Get-AzNetworkInterface -Name $NicName -ResourceGroupName $ResourceGroupName).Id PS C:\WINDOWS\system32> $nicID/subscriptions/.../resourceGroups/myaseazrg/providers/Microsoft.Network/networkInterfaces/myaznic1 PS C:\WINDOWS\system32> $VirtualMachine = Add-AzVMNetworkInterface -VM $VirtualMachine -Id $nicID PS C:\WINDOWS\system32> $image = ( Get-AzImage -ResourceGroupName $ResourceGroupName -ImageName $ImageName).Id PS C:\WINDOWS\system32> $VirtualMachine = Set-AzVMSourceImage -VM $VirtualMachine -Id $image PS C:\WINDOWS\system32> New-AzVM -ResourceGroupName $ResourceGroupName -Location DBELocal -VM $VirtualMachine -Verbose WARNING: Since the VM is created using premium storage or managed disk, existing standard storage account, myaseazsa, is used for boot diagnostics. VERBOSE: Performing the operation "New" on target "myazvm". RequestId IsSuccessStatusCode StatusCode ReasonPhrase --------- ------------------- ---------- ------------ True OK OKلمعرفة عنوان IP المعين للجهاز الظاهري الذي قمت بإنشائه، قم بالاستعلام عن واجهة الشبكة الظاهرية التي قمت بإنشائها. حدد موقع
PrivateIPAddressIP وانسخ عنوان IP الخاص بالجهاز الظاهري الخاص بك. فيما يلي مثال على الإخراج.PS C:\WINDOWS\system32> $Nic Name : myaznic1 ResourceGroupName : myaseazrg Location : dbelocal Id : /subscriptions/.../re sourceGroups/myaseazrg/providers/Microsoft.Network/net workInterfaces/myaznic1 Etag : W/"0b20057b-2102-4f34-958b-656327c0fb1d" ResourceGuid : e7d4131f-6f01-4492-9d4c-a8ff1af7244f ProvisioningState : Succeeded Tags : VirtualMachine : null IpConfigurations : [ { "Name": "myazipconfig1", "Etag": "W/\"0b20057b-2102-4f34-958b-656327c0fb1d\"", "Id": "/subscriptions/.../resourceGroups/myaseazrg/providers/Microsoft. Network/networkInterfaces/myaznic1/ipConfigurations/my azipconfig1", "PrivateIpAddress": "10.126.76.60", "PrivateIpAllocationMethod": "Dynamic", "Subnet": { "Delegations": [], "Id": "/subscriptions/.../resourceGroups/ASERG/providers/Microsoft.Ne twork/virtualNetworks/ASEVNET/subnets/ASEVNETsubNet", "ServiceAssociationLinks": [] }, "ProvisioningState": "Succeeded", "PrivateIpAddressVersion": "IPv4", "LoadBalancerBackendAddressPools": [], "LoadBalancerInboundNatRules": [], "Primary": true, "ApplicationGatewayBackendAddressPools": [], "ApplicationSecurityGroups": [] } ] DnsSettings : { "DnsServers": [], "AppliedDnsServers": [], "InternalDomainNameSuffix": "auwlfcx0dhxurjgisct43fc ywb.a--x.internal.cloudapp.net" } EnableIPForwarding : False EnableAcceleratedNetworking : False NetworkSecurityGroup : null Primary : MacAddress : 001DD84A58D1 PS C:\WINDOWS\system32>
الاتصال بالجهاز الظاهري
بناء على ما إذا كنت قد أنشأت جهاز ظاهري Windows أو جهاز ظاهري Linux ، يمكن أن تكون تعليمات الاتصال مختلفة.
الاتصال بجهاز ظاهري لـ Linux
للاتصال بجهاز ظاهري Linux، قم بما يلي:
الاتصال إلى الجهاز الظاهري باستخدام عنوان IP الخاص الذي مررت به أثناء إنشاء الجهاز الظاهري.
افتح جلسة SSH للاتصال بعنوان IP.
ssh -l <username> <ip address>في المطالبة، أدخل كلمة المرور التي استخدمتها عند إنشاء الجهاز الظاهري.
إذا كنت بحاجة إلى توفير مفتاح SSH، فاستخدم هذا الأمر.
ssh -i c:/users/Administrator/.ssh/id_rsa Administrator@5.5.41.236فيما يلي مثال على الإخراج عند الاتصال بالجهاز الظاهري:
PS C:\WINDOWS\system32> ssh -l myazuser "10.126.76.60" The authenticity of host '10.126.76.60 (10.126.76.60)' can't be established. ECDSA key fingerprint is SHA256:V649Zbo58zAYMKreeP7M6w7Na0Yf9QPg4SM7JZVV0E4. Are you sure you want to continue connecting (yes/no/[fingerprint])? yes Warning: Permanently added '10.126.76.60' (ECDSA) to the list of known hosts. myazuser@10.126.76.60's password: Welcome to Ubuntu 18.04.2 LTS (GNU/Linux 4.18.0-1013-azure x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage System information disabled due to load higher than 1.0 Get cloud support with Ubuntu Advantage Cloud Guest: http://www.ubuntu.com/business/services/cloud 284 packages can be updated. 192 updates are security updates. The programs included with the Ubuntu system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. To run a command as administrator (user "root"), use "sudo <command>". See "man sudo_root" for details. myazuser@myazvmfriendlyname:~$ client_loop: send disconnect: Connection reset PS C:\WINDOWS\system32>
إذا استخدمت عنوان IP عاما أثناء إنشاء الجهاز الظاهري، فيمكنك استخدام عنوان IP هذا للاتصال بالجهاز الظاهري. للحصول على عنوان IP العام، قم بتشغيل الأمر التالي:
$publicIp = Get-AzPublicIpAddress -Name $PublicIp -ResourceGroupName $ResourceGroupName
في هذه الحالة ، يكون عنوان IP العام هو نفسه عنوان IP الخاص الذي قمت بتمريره أثناء إنشاء واجهة الشبكة الظاهرية.
الاتصال بجهاز ظاهري لـ Windows
للاتصال بجهاز ظاهري Windows، قم بما يلي:
الاتصال إلى جهاز Windows الظاهري باستخدام بروتوكول سطح المكتب البعيد (RDP) عبر عنوان IP الذي قمت بتمريره أثناء إنشاء الجهاز الظاهري.
على العميل، افتح RDP.
انتقل إلى ابدأ، ثم أدخل mstsc.
في جزء "الاتصال بسطح المكتب البعيد" ، أدخل عنوان IP الخاص بالجهاز الظاهري وبيانات اعتماد الوصول التي استخدمتها في ملف معلمات قالب الجهاز الظاهري. وبعد ذلك حدد Connect.

ملاحظة
قد تحتاج إلى الموافقة على الاتصال بجهاز غير موثوق به.
لقد قمت الآن بتسجيل الدخول إلى الجهاز الظاهري الذي يعمل على الجهاز.
إدارة الجهاز الظاهري
تصف الأقسام التالية بعض العمليات الشائعة التي يمكنك إنشاؤها على جهاز Azure Stack Edge Pro.
قائمة الأجهزة الظاهرية التي تعمل على الجهاز
لإرجاع قائمة بجميع الأجهزة الظاهرية التي تعمل على جهاز Azure Stack Edge، قم بتشغيل هذا الأمر:
Get-AzVM -ResourceGroupName <String> -Name <String>
لمزيد من المعلومات حول cmdlet هذا، راجع Get-AzVM.
تشغيل الجهاز الظاهري
لتشغيل جهاز ظاهري يعمل على جهازك، قم بتشغيل cmdlet التالي:
Start-AzVM [-Name] <String> [-ResourceGroupName] <String>
لمزيد من المعلومات حول cmdlet هذا، راجع بدء تشغيل AzVM.
تعليق الجهاز الظاهري أو إيقاف تشغيله
لإيقاف جهاز ظاهري يعمل على جهازك أو إيقاف تشغيله، قم بتشغيل cmdlet التالي:
Stop-AzVM [-Name] <String> [-StayProvisioned] [-ResourceGroupName] <String>
لمزيد من المعلومات حول cmdlet هذا، راجع cmdlet Stop-AzVM.
إضافة قرص بيانات
إذا زادت متطلبات عبء العمل على الجهاز الظاهري، فقد تحتاج إلى إضافة قرص بيانات. للقيام بذلك، شغّل الأمر التالي:
Add-AzRmVMDataDisk -VM $VirtualMachine -Name "disk1" -VhdUri "https://contoso.blob.core.windows.net/vhds/diskstandard03.vhd" -LUN 0 -Caching ReadOnly -DiskSizeinGB 1 -CreateOption Empty
Update-AzVM -ResourceGroupName "<Resource Group Name string>" -VM $VirtualMachine
حذف الجهاز الظاهري
لإزالة جهاز ظاهري من جهازك، قم بتشغيل cmdlet التالي:
Remove-AzVM [-Name] <String> [-ResourceGroupName] <String>
لمزيد من المعلومات حول cmdlet هذا، راجع إزالة-AzVm cmdlet.