الموثوقية في خدمة إلغاء تحديد هوية Azure Health Data Services (معاينة)
توضح هذه المقالة دعم الموثوقية في خدمة إلغاء التعريف (معاينة). للحصول على نظرة عامة أكثر تفصيلا حول مبادئ الموثوقية في Azure، راجع موثوقية Azure.
التعافي من الكوارث عبر المناطق
يتعلق التعافي من الكوارث (DR) بالتعافي من الأحداث عالية التأثير، مثل الكوارث الطبيعية أو عمليات النشر الفاشلة التي تؤدي إلى وقت تعطل وفقدان البيانات. بغض النظر عن السبب، فإن أفضل علاج للكارثة هو خطة الإصلاح بعد الكارثة محددة جيدا ومختبرة وتصميم تطبيق يدعم الإصلاح بعد الكارثة بنشاط. قبل البدء في التفكير في إنشاء خطة التعافي من الكوارث، راجع توصيات لتصميم استراتيجية التعافي من الكوارث.
عندما يتعلق الأمر بالتعافي من الكوارث، تستخدم Microsoft نموذج المسؤولية المشتركة. في نموذج المسؤولية المشتركة، تضمن Microsoft توفر البنية الأساسية الأساسية وخدمات النظام الأساسي. في الوقت نفسه، لا تقوم العديد من خدمات Azure تلقائيا بنسخ البيانات نسخا متماثلا أو الرجوع من منطقة فاشلة للنسخ المتماثل إلى منطقة أخرى ممكنة. بالنسبة إلى هذه الخدمات، أنت مسؤول عن إعداد خطة التعافي من الكوارث التي تعمل مع حمل العمل الخاص بك. توفر معظم الخدمات التي تعمل على عروض النظام الأساسي كخدمة (PaaS) في Azure ميزات وإرشادات لدعم الإصلاح بعد الكارثة ويمكنك استخدام ميزات خاصة بالخدمة لدعم الاسترداد السريع للمساعدة في تطوير خطة الإصلاح بعد الكارثة.
يتم نشر كل خدمة إلغاء تعريف (معاينة) في منطقة Azure واحدة. إذا لم تتوفر منطقة بأكملها أو كان الأداء متدهورا بشكل كبير:
- تقتصر وظيفة وحدة التحكم ARM على للقراءة فقط أثناء الانقطاع. يتم دائما نسخ بيانات تعريف الخدمة (مثل خصائص المورد) احتياطيا خارج المنطقة بواسطة Microsoft. بمجرد انتهاء الانقطاع، يمكنك القراءة والكتابة إلى وحدة التحكم.
- تفشل جميع طلبات مستوى البيانات أثناء الانقطاع، مثل إلغاء التعريف أو طلبات واجهة برمجة تطبيقات الوظيفة. لا يتم فقدان بيانات العميل، ولكن هناك احتمال فقدان بيانات تعريف تقدم الوظيفة. بمجرد انتهاء الانقطاع، يمكنك القراءة والكتابة إلى مستوى البيانات.
البرنامج التعليمي للتعافي من الكوارث
إذا لم تكن منطقة Azure بأكملها متوفرة، فلا يزال بإمكانك ضمان توفر عال لأحمال العمل الخاصة بك. يمكنك نشر خدمتين أو أكثر من خدمات إلغاء التعريف في تكوين نشط-نشط، مع استخدام Azure Front door لتوجيه حركة المرور إلى كلتا المنطقتين.
باستخدام هذا المثال للبنية:
- وتنشر خدمات مماثلة لإلغاء تحديد الهوية في منطقتين منفصلتين.
- يتم استخدام Azure Front Door لتوجيه نسبة استخدام الشبكة إلى كلتا المنطقتين.
- أثناء وقوع كارثة، تصبح إحدى المناطق غير متصلة، ويوجه Azure Front Door نسبة استخدام الشبكة حصريا إلى المنطقة الأخرى. يقتصر هدف وقت الاسترداد أثناء تجاوز الفشل الجغرافي هذا على الوقت الذي يستغرقه Azure Front Door للكشف عن أن خدمة واحدة غير صحية.
RTO وRPO
إذا كنت تعتمد التكوين النشط-النشط، يجب أن تتوقع هدف وقت الاسترداد (RTO) من 5 دقائق. في أي تكوين، يجب أن تتوقع هدف نقطة الاسترداد (RPO) لمدة 0 دقيقة (لن يتم فقدان بيانات العميل).
التحقق من صحة خطة التعافي من الكوارث
المتطلبات الأساسية
إذا لم يكن لديك اشتراك في Azure، فأنشئ حساب Azure مجاني قبل أن تبدأ.
لإكمال هذا البرنامج التعليمي:
استخدم بيئة Bash في Azure Cloud Shell. لمزيد من المعلومات، راجع التشغيل السريع ل Bash في Azure Cloud Shell.
إذا كنت تفضل تشغيل أوامر مرجع CLI محلياً قم بتثبيت CLI Azure. إذا كنت تعمل على نظام تشغيل Windows أو macOS، ففكر في تشغيل Azure CLI في حاوية Docker. لمزيد من المعلومات، راجع كيفية تشغيل Azure CLI في حاوية Docker.
إذا كنت تستخدم تثبيت محلي، يُرجى تسجيل الدخول إلى Azure CLI مستخدمًا أمر az login. لإنهاء عملية المصادقة، اتبع الخطوات المعروضة في جهازك. للحصول على خيارات أخرى لتسجيل دخول، راجع تسجيل الدخول باستخدام Azure CLI.
عندما يُطلب منك، قم بتثبيت ملحق Azure CLI عند الاستخدام لأول مرة. لمزيد من المعلومات بشأن الامتدادات، راجع استخدام امتدادات مع Azure CLI.
يُرجى تشغيل إصدار az للوصول إلى الإصدار والمكتبات التابعة التي تم تثبيتها. للتحديث لآخر إصدار، يُرجى تشغيل تحديث az.
إنشاء مجموعة موارد
تحتاج إلى مثيلين من خدمة إلغاء التعريف (معاينة) في مناطق Azure المختلفة لهذا البرنامج التعليمي. يستخدم البرنامج التعليمي منطقتي شرق الولايات المتحدة وغرب الولايات المتحدة 2، ولكن لا تتردد في اختيار منطقتك الخاصة.
لجعل الإدارة والتنظيف أبسط، يمكنك استخدام مجموعة موارد واحدة لجميع الموارد في هذا البرنامج التعليمي. ضع في اعتبارك استخدام مجموعات موارد منفصلة لكل منطقة/مورد لعزل مواردك بشكل أكبر في حالة التعافي من الكوارث.
قم بتشغيل الأمر التالي لإنشاء مجموعة الموارد الخاصة بك.
az group create --name my-deid --location eastus
إنشاء خدمات إلغاء التعريف (معاينة)
اتبع الخطوات في التشغيل السريع: نشر خدمة إلغاء التعريف (معاينة) لإنشاء خدمتين منفصلتين، واحدة في شرق الولايات المتحدة وواحدة في غرب الولايات المتحدة 2.
لاحظ عنوان URL للخدمة لكل خدمة إلغاء تعريف حتى تتمكن من تحديد عناوين الواجهة الخلفية عند نشر Azure Front Door في الخطوة التالية.
إنشاء Azure Front Door
يمكن للنشر متعدد المناطق استخدام تكوين نشط-نشط أو نشط-سلبي. يقوم التكوين النشط-النشط بتوزيع الطلبات عبر مناطق نشطة متعددة. يحتفظ التكوين النشط-السلبي بتشغيل المثيلات في المنطقة الثانوية، ولكنه لا يرسل نسبة استخدام الشبكة هناك ما لم تفشل المنطقة الأساسية. يحتوي Azure Front Door على ميزة مضمنة تسمح لك بتمكين هذه التكوينات. لمزيد من المعلومات حول تصميم التطبيقات لقابلية الوصول العالية والتسامح مع الخطأ، راجع تصميم تطبيقات Azure للمرونة والتوافر.
إنشاء ملف تعريف Azure Front Door
يمكنك الآن إنشاء Azure Front Door Premium لتوجيه نسبة استخدام الشبكة إلى خدماتك.
قم بتشغيل az afd profile create
لإنشاء ملف تعريف Azure Front Door.
إشعار
إذا كنت ترغب في نشر Azure Front Door Standard بدلا من Premium، فاستبدل قيمة المعلمة --sku
Standard_AzureFrontDoor. لا يمكنك نشر القواعد المدارة باستخدام نهج WAF إذا اخترت المستوى القياسي. للحصول على مقارنة مفصلة لمستويات التسعير، راجع مقارنة طبقة Azure Front Door.
az afd profile create --profile-name myfrontdoorprofile --resource-group my-deid --sku Premium_AzureFrontDoor
المعلمة | قيمة | الوصف |
---|---|---|
profile-name |
myfrontdoorprofile |
اسم ملف تعريف Azure Front Door، وهو فريد داخل مجموعة الموارد. |
resource-group |
my-deid |
مجموعة الموارد التي تحتوي على الموارد من هذا البرنامج التعليمي. |
sku |
Premium_AzureFrontDoor |
مستوى التسعير لملف تعريف Azure Front Door. |
إضافة نقطة نهاية Azure Front Door
قم بتشغيل az afd endpoint create
لإنشاء نقطة نهاية في ملف تعريف Azure Front Door. توجه نقطة النهاية هذه الطلبات إلى خدماتك. يمكنك إنشاء نقاط نهاية متعددة في ملف التعريف الخاص بك بعد الانتهاء من هذا الدليل.
az afd endpoint create --resource-group my-deid --endpoint-name myendpoint --profile-name myfrontdoorprofile --enabled-state Enabled
المعلمة | قيمة | الوصف |
---|---|---|
endpoint-name |
myendpoint |
اسم نقطة النهاية ضمن ملف التعريف، وهو فريد عالميا. |
enabled-state |
Enabled |
ما إذا كان يجب تمكين نقطة النهاية هذه. |
إنشاء مجموعة أصل Azure Front Door
قم بتشغيل az afd origin-group create
لإنشاء مجموعة أصل تحتوي على خدمتي إلغاء التعريف.
az afd origin-group create --resource-group my-deid --origin-group-name myorigingroup --profile-name myfrontdoorprofile --probe-request-type GET --probe-protocol Https --probe-interval-in-seconds 60 --probe-path /health --sample-size 1 --successful-samples-required 1 --additional-latency-in-milliseconds 50 --enable-health-probe
المعلمة | قيمة | الوصف |
---|---|---|
origin-group-name |
myorigingroup |
اسم مجموعة الأصل. |
probe-request-type |
GET |
نوع طلب فحص السلامة الذي يتم إجراؤه. |
probe-protocol |
Https |
بروتوكول لاستخدامه في فحص السلامة. |
probe-interval-in-seconds |
60 |
عدد الثوان بين فحوصات السلامة. |
probe-path |
/health |
المسار المتعلق بالأصل المستخدم لتحديد صحة الأصل. |
sample-size |
1 |
عدد العينات التي يجب مراعاتها لاتخاذ قرارات موازنة التحميل. |
successful-samples-required |
1 |
عدد العينات خلال فترة العينة التي يجب أن تنجح. |
additional-latency-in-milliseconds |
50 |
زمن الانتقال الإضافي بالمللي ثانية للفحوصات لتقع في مستودع زمن الانتقال الأدنى. |
enable-health-probe |
قم بالتبديل للتحكم في حالة فحص السلامة. |
إضافة أصول إلى مجموعة أصل Azure Front Door
قم بتشغيل az afd origin create
لإضافة أصل إلى مجموعة الأصل الخاصة بك. بالنسبة للمعلمات --host-name
و --origin-host-header
، استبدل قيمة <service-url-east-us>
العنصر النائب بعنوان URL لخدمة شرق الولايات المتحدة، مع ترك المخطط (https://
). يجب أن يكون لديك قيمة مثل abcdefghijk.api.eastus.deid.azure.com
.
az afd origin create --resource-group my-deid --host-name <service-url-east-us> --profile-name myfrontdoorprofile --origin-group-name myorigingroup --origin-name deid1 --origin-host-header <service-url-east-us> --priority 1 --weight 1000 --enabled-state Enabled --https-port 443
المعلمة | قيمة | الوصف |
---|---|---|
host-name |
<service-url-east-us> |
اسم مضيف خدمة إلغاء التعريف الأساسية. |
origin-name |
deid1 |
اسم الأصل. |
origin-host-header |
<service-url-east-us> |
عنوان المضيف لإرسال الطلبات إلى هذا الأصل. |
priority |
1 |
قم بتعيين هذه المعلمة إلى 1 لتوجيه كافة نسبة استخدام الشبكة إلى خدمة إلغاء التعريف الأساسية. |
weight |
1000 |
وزن الأصل في مجموعة الأصل المحددة لموازنة التحميل. يجب أن يكون بين 1 و1000. |
enabled-state |
Enabled |
ما إذا كان يجب تمكين هذا الأصل. |
https-port |
443 |
المنفذ المستخدم لطلبات HTTPS إلى الأصل. |
كرر هذه الخطوة لإضافة الأصل الثاني. بالنسبة للمعلمات --host-name
و --origin-host-header
، استبدل قيمة <service-url-west-us-2>
العنصر النائب بعنوان URL لخدمة West US 2، تاركا المخطط (https://
).
az afd origin create --resource-group my-deid --host-name <service-url-west-us-2> --profile-name myfrontdoorprofile --origin-group-name myorigingroup --origin-name deid2 --origin-host-header <service-url-west-us-2> --priority 1 --weight 1000 --enabled-state Enabled --https-port 443
انتبه إلى --priority
المعلمات في كلا الأمرين. نظرا لتعيين كلا الأصلين على الأولوية 1
، يعامل Azure Front Door كلا الأصلين على أنهما حركة مرور نشطة ومباشرة إلى كلتا المنطقتين. إذا تم تعيين الأولوية لأصل واحد إلى 2
، فإن Azure Front Door يعامل هذا الأصل على أنه ثانوي ويوجه كافة نسبة استخدام الشبكة إلى الأصل الآخر ما لم يتعطل.
إضافة مسار Azure Front Door
قم بتشغيل az afd route create
لتعيين نقطة النهاية إلى مجموعة الأصل. يقوم هذا المسار بإعادة توجيه الطلبات من نقطة النهاية إلى مجموعة الأصل الخاصة بك.
az afd route create --resource-group my-deid --profile-name myfrontdoorprofile --endpoint-name myendpoint --forwarding-protocol MatchRequest --route-name route --origin-group myorigingroup --supported-protocols Https --link-to-default-domain Enabled
المعلمة | قيمة | الوصف |
---|---|---|
endpoint-name |
myendpoint |
اسم نقطة النهاية. |
forwarding-protocol |
طلب المطابقة | البروتوكول الذي تستخدمه هذه القاعدة عند إعادة توجيه حركة المرور إلى الخلفيات. |
route-name |
route |
اسم المسار. |
supported-protocols |
Https |
قائمة البروتوكولات المدعومة لهذا المسار. |
link-to-default-domain |
Enabled |
ما إذا كان هذا المسار مرتبطا بمجال نقطة النهاية الافتراضي. |
السماح بحوالي 15 دقيقة لإكمال هذه الخطوة حيث يستغرق نشر هذا التغيير على مستوى العالم بعض الوقت. بعد هذه الفترة، يعمل Azure Front Door بكامل طاقته.
اختبر Front Door
عندما تنشئ ملف تعريف Azure Front Door Standard/Premium، فذلك يستغرق بعض الدقائق من أجل نشر الإعدادات عالميًا بمجرد الانتهاء، يمكنك الوصول إلى مضيف الواجهة الأمامية الذي أنشأته.
قم بتشغيل az afd endpoint show
للحصول على اسم مضيف نقطة نهاية Front Door. يجب أن يبدو مثل abddefg.azurefd.net
az afd endpoint show --resource-group my-deid --profile-name myfrontdoorprofile --endpoint-name myendpoint --query "hostName"
في مستعرض، انتقل إلى اسم مضيف نقطة النهاية الذي أرجعه الأمر السابق: <endpoint>.azurefd.net/health
. يجب أن يتم توجيه طلبك تلقائيا إلى خدمة إلغاء التعريف الأساسية في شرق الولايات المتحدة.
لاختبار تجاوز الفشل العمومي الفوري:
افتح مستعرضا وانتقل إلى اسم مضيف نقطة النهاية:
<endpoint>.azurefd.net/health
.اتبع الخطوات الواردة في تكوين الوصول الخاص لتعطيل الوصول إلى الشبكة العامة لخدمة إلغاء التعريف في شرق الولايات المتحدة.
قم بتحديث المستعرض. يجب أن تشاهد نفس صفحة المعلومات لأن نسبة استخدام الشبكة موجهة الآن إلى خدمة إلغاء التعريف في غرب الولايات المتحدة 2.
تلميح
قد تحتاج إلى تحديث الصفحة عدة مرات حتى يكتمل تجاوز الفشل.
الآن قم بتعطيل الوصول إلى الشبكة العامة لخدمة إلغاء التعريف في غرب الولايات المتحدة 2.
قم بتحديث المستعرض. هذه المرة، يجب أن تشاهد رسالة خطأ.
إعادة تمكين الوصول إلى الشبكة العامة لإحدى خدمات إلغاء التعريف. قم بتحديث المستعرض ويجب أن تشاهد الحالة الصحية مرة أخرى.
لقد تحققت الآن من أنه يمكنك الوصول إلى خدماتك من خلال Azure Front Door ووظائف تجاوز الفشل هذه كما هو مقصود. تمكين الوصول إلى الشبكة العامة على الخدمة الأخرى إذا انتهيت من اختبار تجاوز الفشل.
تنظيف الموارد
في الخطوات السابقة، أنشأت موارد Azure في إحدى مجموعات الموارد. إذا كنت لا تتوقع أن تحتاج إلى هذه الموارد في المستقبل، فاحذف مجموعة الموارد عن طريق تشغيل الأمر التالي:
az group delete --name my-deid
قد يستغرق هذا الأمر بضع دقائق لإكماله.
بدء الاسترداد
للتحقق من حالة استرداد الخدمة، يمكنك إرسال الطلبات إلى <service-url>/health
.