VPC مُدار من قِبل العميل (BYO-VPC) لـ AWS
1
قم بتهيئة شبكة VPC الحالية لديك
- أضِف الوسم
clickhouse-byoc="true"إلى VPC. - خصّص 3 شبكات فرعية خاصة بالضبط موزعة على 3 مناطق توافر مختلفة لتستخدمها ClickHouse Cloud.
- تأكد من أن كل شبكة فرعية تحتوي على نطاق CIDR لا يقل عن
/25(على سبيل المثال، 10.0.0.0/25). يدعم النطاق/25نحو 10 عُقد خوادم ClickHouse لكل منطقة توافر؛ ويُوصى باستخدام/24لمعظم عمليات النشر، وشبكات فرعية أكبر لعمليات النشر التي تتوقع نموها. تُخصَّص عناوين IP الخاصة بالـ pod من الشبكة الفرعية نفسها، لذا تستهلك كل نسخة متماثلة عناوين من الشبكة الفرعية. - أضِف الوسمين
kubernetes.io/role/internal-elb=1وclickhouse-byoc="true"إلى كل شبكة فرعية لتمكين التهيئة الصحيحة لموازن التحميل.
2
قم بتهيئة S3 Gateway Endpoint
إذا لم تكن VPC لديك تحتوي بالفعل على S3 Gateway Endpoint مُهيأة، فستحتاج إلى إنشاء واحدة لتمكين اتصال آمن وخاص بين VPC وAmazon S3. تتيح نقطة النهاية هذه لخدمات ClickHouse الوصول إلى S3 من دون المرور عبر الإنترنت العام. يُرجى الرجوع إلى لقطة الشاشة أدناه للاطلاع على مثال على التهيئة.
3
تأكد من توفر اتصال الشبكة
وصول الإنترنت الصادر
يجب أن تسمح VPC لديك، كحد أدنى، بوصول الإنترنت الصادر حتى تتمكن مكونات ClickHouse BYOC من التواصل مع طبقة التحكم الخاصة بـ Tailscale. يُستخدم Tailscale لتوفير شبكة آمنة قائمة على مبدأ انعدام الثقة لعمليات الإدارة الخاصة. يتطلب التسجيل والإعداد الأوليان باستخدام Tailscale اتصالاً بالإنترنت العام، ويمكن تحقيق ذلك إما مباشرة أو عبر NAT gateway. هذا الاتصال ضروري للحفاظ على خصوصية نشر BYOC لديك وأمانه.حلّ أسماء DNS
تأكد من أن VPC لديك توفّر حلّ أسماء DNS بشكل سليم، وألا تحظر أسماء DNS القياسية أو تتداخل معها أو تستبدلها. يعتمد ClickHouse BYOC على DNS لحلّ أسماء خوادم التحكم الخاصة بـ Tailscale ونقاط نهاية الخدمة الخاصة بـ ClickHouse. إذا لم يكن DNS متاحًا أو كان مُهيأً بشكل غير صحيح، فقد تفشل خدمات BYOC في الاتصال أو العمل بشكل صحيح.
4
قم بتهيئة حساب AWS الخاص بك
ينشئ إعداد BYOC الأولي دور IAM ذا امتيازات (استبدل
ClickHouseManagementRole) يتيح لوحدات التحكم الخاصة بـ BYOC من ClickHouse Cloud إدارة بنيتك التحتية. ويمكن تنفيذ ذلك باستخدام قالب CloudFormation أو وحدة Terraform (انظر أدناه).عند النشر لإعداد BYO-VPC، اضبط المعلمة IncludeVPCWritePermissions على false لضمان عدم منح ClickHouse Cloud أذونات لتعديل VPC التي يديرها العميل.حاويات التخزين وعنقود Kubernetes وموارد الحوسبة المطلوبة لتشغيل ClickHouse ليست مضمنة في هذا الإعداد الأولي. سيتم توفيرها في خطوة لاحقة. وعلى الرغم من أنك تتحكم في VPC الخاصة بك، لا تزال ClickHouse Cloud بحاجة إلى أذونات IAM لإنشاء عنقود Kubernetes وإدارته، وأدوار IAM لحسابات الخدمة، وS3 buckets، وغيرها من الموارد الأساسية في حساب AWS الخاص بك.
وحدة Terraform
إذا كنت تفضل استخدام Terraform بدلاً من CloudFormation، فاستخدم وحدة terraform-byoc-onboarding:<version> بأحدث وسم من صفحة الإصدارات الخاصة بالوحدة — استخدم دائمًا أحدث إصدار.تُنتج الوحدة clickhouse_management_role_arn. في المسار القياسي، لا يلزم اتخاذ أي إجراء بشأنه — يستمر الإعداد في ClickHouse Cloud console — ولكن احتفظ به في متناول اليد: سيطلبه ClickHouse إذا كان إعدادك يختلف عن الإعدادات الافتراضية (على سبيل المثال، اسم دور مخصص ومنسّق).تُنشأ قيمة external_id بواسطة ClickHouse Cloud console وتكون مشتركة بين جميع البنى التحتية لـ BYOC ضمن حساب AWS نفسه. راجع AWS external ID للحصول على التفاصيل، بما في ذلك العنصر النائب القديم emptyid.كانت الوحدة تُوزَّع سابقًا كملف tarball على
https://s3.us-east-2.amazonaws.com/clickhouse-public-resources.clickhouse.cloud/tf/byoc.tar.gz. يظل عنوان URL هذا متاحًا، لكنه Deprecated — استخدم وحدة GitHub أعلاه.5
إعداد البنية التحتية لـ BYOC
في ClickHouse Cloud console، قم بتهيئة ما يلي عند إعداد بنية تحتية جديدة:
- ضمن تهيئة VPC، اختر استخدام شبكة VPC الحالية.
- أدخل VPC ID الخاص بك (على سبيل المثال،
vpc-0bb751a5b888ad123). - أدخل معرّفات الشبكات الفرعية الخاصة للشبكات الفرعية الثلاث التي قمت بتهيئتها سابقًا.
- اختياريًا، أدخل معرّفات الشبكات الفرعية العامة إذا كان إعدادك يتطلب موازنات تحميل متاحة للعامة.
- انقر فوق إعداد البنية التحتية لبدء التوفير.
قد يستغرق إعداد منطقة جديدة ما يصل إلى 40 دقيقة.
أدوار IAM المُدارة من قِبل العميل
أدوار IAM المُدارة من قِبل العميل متاحة حاليًا في معاينة خاصة. تواصل مع ClickHouse Support لتمكين هذه الإمكانية لمؤسستك قبل اتباع الخطوات أدناه.
- إنشاء أدوار IAM الخاصة بكل بنية تحتية مسبقًا، وهي الأدوار التي كان ClickHouse Cloud سينشئها لولا ذلك
- إزالة أذونات الكتابة على IAM من
ClickHouseManagementRoleالمستخدم للوصول عبر الحسابات - الحفاظ على تحكم كامل في أذونات الأدوار وعلاقات الثقة
external_id الذي تم إنشاؤه بواسطة ClickHouse Cloud console؛ تشترك جميع البنى التحتية لـ BYOC ضمن حساب AWS نفسه في المعرّف الخارجي نفسه. راجع معرّف AWS الخارجي للحصول على التفاصيل، بما في ذلك العنصر النائب القديم emptyid.
1
تهيئة دور الإدارة بدون أذونات الكتابة على IAM
عند تنفيذ إعداد BYOC الأولي، عطّل أذونات الكتابة على IAM في دور الإدارة. عند استخدام قالب CloudFormation، اضبط المعلَمة استبدل
IncludeIAMWritePermissions على false. وعند استخدام وحدة Terraform:<version> بأحدث وسم من صفحة الإصدارات الخاصة بالوحدة — واستخدم دائمًا أحدث إصدار.2
أنشئ أدوار IAM الخاصة بكل بنية تحتية
قبل تجهيز كل بنية تحتية من BYOC، أنشئ أدوار IAM المطلوبة لها (أدوار هوية كبسولات EKS، ودور وصول ClickHouse إلى S3، ودور إدارة مستوى البيانات) باستخدام وحدة البنية التحتية الفردية من terraform-byoc-onboarding:استبدل
<version> بأحدث وسم من صفحة الإصدارات الخاصة بالوحدة — واستخدم دائمًا أحدث إصدار.3
حافظ على تحديث الأدوار الخاصة بكل بنية تحتية