تتيح نقطة نهاية الخدمة الاتصال الآمن ب Elastic SAN من شبكة فرعية داخل شبكتك الظاهرية، دون الحاجة إلى عنوان IP خاص. نقاط نهاية خدمة الشبكة الظاهرية عامة ويمكن الوصول إليها عبر الإنترنت. يمكنك تكوين قواعد الشبكة الظاهرية للتحكم في الوصول إلى مجموعة وحدة التخزين الخاصة بك عند استخدام نقاط نهاية خدمة التخزين.
توضح لك هذه المقالة كيفية تكوين اتصالات نقطة نهاية الخدمة ب Elastic SAN.
المتطلبات الأساسية
يمكنك تمكين الوصول العام إلى الإنترنت إلى نقاط نهاية Elastic SAN على مستوى SAN. يتيح لك تمكين الوصول إلى الشبكة العامة ل Elastic SAN تكوين الوصول العام إلى مجموعات وحدة التخزين الفردية عبر نقاط نهاية خدمة التخزين. بشكل افتراضي، يتم رفض الوصول العام إلى مجموعات وحدة التخزين الفردية حتى إذا سمحت بذلك على مستوى SAN. يجب تكوين مجموعات وحدة التخزين الخاصة بك بشكل صريح للسماح بالوصول من نطاقات عناوين IP المحددة والشبكات الفرعية للشبكة الظاهرية.
يمكنك تمكين الوصول إلى الشبكة العامة عند إنشاء SAN مرن، أو تمكينه ل SAN موجود باستخدام الوحدة النمطية Azure PowerShell أو Azure CLI.
استخدم الوحدة النمطية Azure PowerShell أو Azure CLI لتمكين الوصول إلى الشبكة العامة.
استخدم نموذج التعليمات البرمجية هذا لتحديث Elastic SAN لتمكين الوصول إلى الشبكة العامة باستخدام PowerShell. استبدل قيم RgName
و EsanName
بالقيم الخاصة بك، ثم قم بتشغيل العينة:
# Set the variable values.
$RgName = "<ResourceGroupName>"
$EsanName = "<ElasticSanName>"
# Update the Elastic San.
Update-AzElasticSan -Name $EsanName -ResourceGroupName $RgName -PublicNetworkAccess Enabled
استخدم نموذج التعليمات البرمجية هذا لتحديث Elastic SAN لتمكين الوصول إلى الشبكة العامة باستخدام Azure CLI. استبدل قيم RgName
و EsanName
بقيمك الخاصة:
# Set the variable values.
$RgName="<ResourceGroupName>"
$EsanName="<ElasticSanName>"
# Update the Elastic San.
az elastic-san update \
--elastic-san-name $EsanName \
--resource-group $RgName \
--public-network-access enabled
لتكوين نقطة نهاية خدمة Azure Storage من الشبكة الظاهرية حيث يكون الوصول مطلوبا، يجب أن يكون لديك إذن Microsoft.Network/virtualNetworks/subnets/joinViaServiceEndpoint/action
لعملية موفر موارد Azure عبر دور Azure مخصص لتكوين نقطة نهاية خدمة.
نقاط نهاية خدمة الشبكة الظاهرية عامة ويمكن الوصول إليها عبر الإنترنت. يمكنك تكوين قواعد الشبكة الظاهرية للتحكم في الوصول إلى مجموعة وحدة التخزين الخاصة بك عند استخدام نقاط نهاية خدمة التخزين.
ملاحظة
يتم حاليا دعم تكوين القواعد التي تمنح الوصول إلى الشبكات الفرعية في الشبكات الظاهرية التي تعد جزءا من مستأجر Microsoft Entra مختلف فقط من خلال واجهات برمجة تطبيقات PowerShell وCLI وREST. لا يمكن تكوين هذه القواعد من خلال مدخل Microsoft Azure، يمكن عرضها فقط في المدخل.
انتقل إلى الشبكة الظاهرية وحدد نقاط نهاية الخدمة.
حدد + إضافة.
في شاشة إضافة نقاط نهاية الخدمة:
- بالنسبة للخدمة، حدد Microsoft.Storage.Global لإضافة نقطة نهاية خدمة عبر المناطق.
ملاحظة
قد ترى Microsoft.Storage مدرجا كنقطة نهاية خدمة تخزين متوفرة. هذا الخيار مخصص لنقاط النهاية داخل المنطقة الموجودة للتوافق مع الإصدارات السابقة فقط. استخدم دائما نقاط النهاية عبر المناطق ما لم يكن لديك سبب محدد لاستخدام نقاط النهاية داخل المنطقة.
بالنسبة للشبكات الفرعية ، حدد جميع الشبكات الفرعية حيث تريد السماح بالوصول.
حدد إضافة.
استخدم نموذج التعليمات البرمجية التالي لإنشاء نقطة نهاية خدمة تخزين لمجموعة وحدة تخزين Elastic SAN.
# Define some variables
$RgName = "<ResourceGroupName>"
$VnetName = "<VnetName>"
$SubnetName = "<SubnetName>"
# Get the virtual network and subnet
$Vnet = Get-AzVirtualNetwork -ResourceGroupName $RgName -Name $VnetName
$Subnet = Get-AzVirtualNetworkSubnetConfig -VirtualNetwork $Vnet -Name $SubnetName
# Enable the storage service endpoint
$Vnet | Set-AzVirtualNetworkSubnetConfig -Name $SubnetName -AddressPrefix $Subnet.AddressPrefix -ServiceEndpoint "Microsoft.Storage.Global" | Set-AzVirtualNetwork
استخدم نموذج التعليمات البرمجية التالي لإنشاء نقطة نهاية خدمة تخزين لمجموعة وحدة تخزين Elastic SAN:
# Define some variables
RgName="<ResourceGroupName>"
VnetName="<VnetName>"
SubnetName="<SubnetName>"
# Enable the storage service endpoint
az network vnet subnet update --resource-group $RgName --vnet-name $VnetName --name $SubnetName --service-endpoints "Microsoft.Storage.Global"
يتم حظر جميع الطلبات الواردة للبيانات عبر نقطة نهاية الخدمة بشكل افتراضي. يمكن فقط للتطبيقات التي تطلب البيانات من المصادر المسموح بها التي تقوم بتكوينها في قواعد الشبكة الوصول إلى بياناتك.
يمكنك إدارة قواعد الشبكة الظاهرية لمجموعات وحدة التخزين من خلال مدخل Azure أو PowerShell أو CLI.
هام
لتمكين الوصول إلى حساب التخزين الخاص بك من شبكة ظاهرية/شبكة فرعية في مستأجر Microsoft Entra آخر، يجب استخدام PowerShell أو Azure CLI. لا يعرض مدخل Microsoft Azure الشبكات الفرعية في مستأجري Microsoft Entra الآخرين.
إذا حذفت شبكة فرعية تم تضمينها في قاعدة شبكة، فستتم إزالتها من قواعد الشبكة لمجموعة وحدة التخزين. إذا قمت بإنشاء شبكة فرعية جديدة بنفس الاسم، فلن يكون لديها حق الوصول إلى مجموعة وحدة التخزين. للسماح بالوصول، يجب تخويل الشبكة الفرعية الجديدة بشكل صريح في قواعد الشبكة لمجموعة وحدة التخزين.
- انتقل إلى SAN وحدد مجموعات وحدة التخزين.
- حدد مجموعة وحدة تخزين وحدد إنشاء.
- أضف شبكة ظاهرية وشبكة فرعية موجودة وحدد Save.
تمكن قوائم البرنامج النصي التالية نقطة نهاية الخدمة ل Azure Storage على شبكة ظاهرية وشبكة فرعية موجودة، ثم تضيف قاعدة شبكة لشبكة ظاهرية وشبكة فرعية.
تلميح
لإضافة قاعدة شبكة لشبكة فرعية في شبكة ظاهرية تنتمي إلى مستأجر Microsoft Entra آخر، استخدم معلمة VirtualNetworkResourceId مؤهلة بالكامل في النموذج "/subscriptions/subscription-ID/resourceGroups/resourceGroup-Name/providers/Microsoft.Network/virtualNetworks/vNet-name/subnets/subnet-name".
$Rules = Get-AzElasticSanVolumeGroup -ResourceGroupName $RgName -ElasticSanName $sanName -Name $volGroupName
$Rules.NetworkAclsVirtualNetworkRule
Get-AzVirtualNetwork -ResourceGroupName "myresourcegroup" -Name "myvnet" | Set-AzVirtualNetworkSubnetConfig -Name "mysubnet" -AddressPrefix "10.0.0.0/24" -ServiceEndpoint "Microsoft.Storage.Global" | Set-AzVirtualNetwork
$rule = New-AzElasticSanVirtualNetworkRuleObject -VirtualNetworkResourceId $Subnet.Id -Action Allow
Add-AzElasticSanVolumeGroupNetworkRule -ResourceGroupName $RgName -ElasticSanName $EsanName -VolumeGroupName $EsanVgName -NetworkAclsVirtualNetworkRule $rule
إذا كنت بحاجة إلى ذلك، يمكنك استخدام البرنامج النصي التالي لإزالة قاعدة شبكة ظاهرية:
## You can remove a virtual network rule by object, by resource ID, or by removing all the rules in a volume group
### remove by networkRule object
Remove-AzElasticSanVolumeGroupNetworkRule -ResourceGroupName myRGName -ElasticSanName mySANName -VolumeGroupName myVolGroupName -NetworkAclsVirtualNetworkRule $virtualNetworkRule1,$virtualNetworkRule2
### remove by networkRuleResourceId
Remove-AzElasticSanVolumeGroupNetworkRule -ResourceGroupName myRGName -ElasticSanName mySANName -VolumeGroupName myVolGroupName -NetworkAclsVirtualNetworkResourceId "myResourceID"
### Remove all network rules in a volume group by pipeline
((Get-AzElasticSanVolumeGroup -ResourceGroupName myRGName -ElasticSanName mySANName -VolumeGroupName myVolGroupName).NetworkAclsVirtualNetworkRule) | Remove-AzElasticSanVolumeGroupNetworkRule -ResourceGroupName myRGName -ElasticSanName mySANName -VolumeGroupName myVolGroupName
يسرد البرنامج النصي التالي معلومات من مجموعة وحدة تخزين معينة، ويمكن نقطة نهاية الخدمة ل Azure Storage على شبكة ظاهرية وشبكة فرعية موجودة، ويضيف قاعدة شبكة لشبكة ظاهرية وشبكة فرعية.
تلميح
لإضافة قاعدة لشبكة فرعية في شبكة ظاهرية تنتمي إلى مستأجر Microsoft Entra آخر، استخدم معرف شبكة فرعية مؤهل بالكامل في النموذج /subscriptions/\<subscription-ID\>/resourceGroups/\<resourceGroup-Name\>/providers/Microsoft.Network/virtualNetworks/\<vNet-name\>/subnets/\<subnet-name\>
.
يمكنك استخدام معلمة الاشتراك لاسترداد معرف الشبكة الفرعية لشبكة ظاهرية تنتمي إلى مستأجر Microsoft Entra آخر.
az elastic-san volume-group show -e $sanName -g $RgName -n $volumeGroupName
az network vnet subnet update --resource-group "myresourcegroup" --vnet-name "myvnet" --name "mysubnet" --service-endpoints "Microsoft.Storage.Global"
# First, get the current length of the list of virtual networks to ensure you append a new network instead of replacing existing ones.
virtualNetworkListLength = az elastic-san volume-group show -e $sanName -n $volumeGroupName -g $RgName --query 'length(networkAcls.virtualNetworkRules)'
az elastic-san volume-group update -e $sanName -g $RgName --name $volumeGroupName --network-acls virtual-network-rules[$virtualNetworkListLength] "{virtualNetworkRules:[{id:/subscriptions/subscriptionID/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/$VnetName/subnets/default, action:Allow}]}"
إذا كنت بحاجة إلى ذلك، يمكنك إزالة قواعد الشبكة. على سبيل المثال، يزيل الأمر التالي قاعدة الشبكة الأولى، ويعدلها لإزالة قاعدة الشبكة التي تريدها.
az elastic-san volume-group update -e $sanName -g $RgName -n $volumeGroupName --network-acls virtual-network-rules[1]=null
بعد تمكين نقاط النهاية المطلوبة ومنح الوصول في قواعد الشبكة، تكون مستعدا لتكوين عملائك للاتصال بوحدات تخزين Elastic SAN المناسبة.
ملاحظة
إذا تم فقدان اتصال بين جهاز ظاهري (VM) ووحدة تخزين Elastic SAN، يعيد الاتصال المحاولة لمدة 90 ثانية حتى الإنهاء. لن يؤدي فقدان اتصال إلى وحدة تخزين Elastic SAN إلى إعادة تشغيل الجهاز الظاهري.
الخطوات التالية