إعداد AWS PrivateLink لإتاحة RDS خاص لـ ClickPipes
يستخدم هذا AWS Endpoint Service، وهو مناسب أساسًا للوصول عبر المناطق. إذا كنت تحتاج إلى وصول داخل المنطقة نفسها،
فيُوصى بدلًا من ذلك
بإنشاء مورد VPC.
إنشاء Private Link
-
حدِّد VPC الخاص بك وأنشئ NLB
- انتقل إلى VPC المستهدف وأنشئ Network Load Balancer (NLB). لاحظ أن NLB يجب أن يكون داخليًا (خاصًا) وليس مواجهًا للإنترنت (عامًا).
-
اضبط مجموعة الهدف
- يجب أن تشير مجموعة الهدف إلى endpoint IP والمنفذ الخاص بمثيل RDS (عادةً 5432 لـ PostgreSQL أو 3306 لـ MySQL).
إذا كنت تريد أتمتة عملية تحديث مجموعة الهدف بعنوان IP الجديد لنقطة نهاية RDS، فيمكنك استخدام AWS Lambda functions أو أدوات أتمتة أخرى.
إحدى وحدات Terraform التي يمكن استخدامها لهذا الغرض هي هذه.
- مهم: تأكد من أن endpoint مثيل RDS المستخدم في حالة DB Cluster/Aurora هو WRITER Endpoint فقط، وليس endpoint العام.
- تأكد من استخدام بروتوكول TCP لتجنّب إنهاء TLS بواسطة NLB.
-
عيّن منفذ listener
- يجب أن يطابق منفذ listener الخاص بـ load balancer المنفذ الذي تستخدمه مجموعة الهدف (عادةً 5432 لـ PostgreSQL أو 3306 لـ MySQL).
-
أنشئ VPC Endpoint Service
- في VPC، أنشئ endpoint service يشير إلى NLB.
- فعّل قبول طلبات connection من حسابات محددة.
-
امنح ClickPipes إذن استخدام Endpoint Service
- امنح permission لحساب ClickPipes لطلب endpoint service هذا.
- اضبط Principals المسموح بها بإضافة معرّف principal التالي:
- اضبط Principals المسموح بها بإضافة معرّف principal التالي:
- امنح permission لحساب ClickPipes لطلب endpoint service هذا.
-
عطّل “Enforce Security Group Inbound Rules on Private Link Traffic” على NLB (إذا كانت Security Group مرفقة بـ NLB)
- انتقل إلى إعدادات NLB وعطّل خيار “Enforce Security Group Inbound Rules on Private Link Traffic” إذا كانت Security Group مرفقة بـ NLB.
- إذا كنت تستخدم Terraform، فاضبط الخاصية
enforce_security_group_inbound_rules_on_private_link_trafficعلىoffلـ NLB - هذا الإعداد مطلوب للسماح بمرور الزيارات من ClickPipes VPC إلى NLB.
-
اختياري: فعّل دعم cross-region إذا كانت Region قاعدة البيانات مختلفة عن Region الخاصة بـ ClickPipes
- ضمن
Endpoint Servicesفي VPC Console، حدِّد endpoint service الخاص بك. - انقر على زر
ActionsواخترModify supported Regions. - أضف المناطق التي تريد السماح لها بالوصول إلى endpoint service، راجع هنا للاطلاع على قائمة مناطق ClickPipes.
- ضمن
-
موصى به لـ MySQL
- إذا كنت تستخدم MySQL، فمن المستحسن تعيين
skip_name_resolve=1كمعلمة في source database. بسبب فحوصات السلامة المتكررة من NLB، سيحظر MySQL مضيفي NLB. ويؤدي تعيين هذه المعلمة إلى تعطيل lookup لاسم مضيف DNS بالكامل، وبالتالي لن يحظر مضيفي NLB مطلقًا. وإذا كنت تستخدم RDS، فسيتطلب ذلك إعادة تشغيل المثيل.
- إذا كنت تستخدم MySQL، فمن المستحسن تعيين
بدء الاتصال
Ready في Console، يمكنك الانتقال إلى القسم التالي لإنشاء ClickPipe.