Skip to main content
يمكن إنشاء خدمات ClickHouse Managed Postgres وإدارتها باستخدام المورد clickhouse_postgres_service في موفّر Terraform لـ ClickHouse. تتناول هذه الصفحة إعداد الموفّر وأمثلة على تهيئة هذا المورد ومصادر البيانات المرتبطة به.
هذا المورد في مرحلة alpha، وقد يتغير سلوكه في الإصدارات المستقبلية من الموفّر. وهو متضمن في الإصدار الاعتيادي للموفّر. توثّق هذه الصفحة إصدار الموفّر v3.21.0 والإصدارات الأحدث، التي غيّرت كيفية إدارة بيانات الاعتماد؛ أما الإصدارات الأقدم فتعمل بشكل مختلف، واعتبارًا من 31 يوليو 2026 لم تعد تعمل على نحو صحيح. راجع إصدارات الموفّر للاطلاع على التفاصيل.
قم بالترقية إلى الموفّر v3.21.0 قبل 31 يوليو 2026اعتبارًا من 31 يوليو 2026، توقفت واجهة برمجة تطبيقات Managed Postgres عن إرجاع كلمة مرور مستخدم فائق الصلاحيات وسلسلة الاتصال في استجاباتها؛ ولم تعد بيانات الاعتماد تُرجع إلا عند إنشاء خدمة أو إعادة تعيين كلمة مرورها. تعمل إصدارات الموفّر v3.21.0 والإصدارات الأحدث بالطريقة نفسها قبل هذا التغيير وبعده. تعتمد إصدارات الموفّر الأقدم على أن تعيد واجهة برمجة تطبيقات بيانات الاعتماد في الاستجابة: واعتبارًا من 31 يوليو 2026، لم تعد تملأ connection_string، كما أن الخدمة التي تُنشأ من دون تعريف password تنجح بينما لا يتم التقاط كلمة المرور المُولَّدة في أي مكان.قم بالترقية قبل 31 يوليو 2026. تُرحَّل حالتك تلقائيًا عند أول plan أو apply باستخدام v3.21.0. إذا كانت أي من خدماتك تعتمد على كلمة مرور يُنشئها الخادم (من دون password في التهيئة)، فاستعدها أولًا باستخدام terraform state pull وصرّح بها، لأن v3.21.0 يتطلب password أو password_wo لخدمة قياسية.

إعداد الموفّر

أضِف موفّر ClickHouse إلى إعدادات Terraform الخاصة بك:
راجع إدارة مفاتيح API للاطّلاع على إرشادات إنشاء مفتاح API لاستخدامه مع الموفّر.

نظرة عامة على المورد

يحتوي المورد clickhouse_postgres_service على الوسيطات التالية: السمات التالية للقراءة فقط، ويقوم ClickHouse Cloud بتعبئتها بعد الإنشاء: id وstate وcreated_at وis_primary وhostname وport وusername. ولا توجد سمة connection_string (أُزيلت في v3.21.0): أنشئ عناوين URI للاتصال من hostname وport وusername وكلمة المرور التي تُصرّح بها، على سبيل المثال postgres://${username}:${password}@${hostname}:${port}/postgres?sslmode=require.
تُخزَّن قيمة password كنص عادي في حالة Terraform لديك. لذلك احمِ ملف الحالة بالشكل المناسب، على سبيل المثال باستخدام backend بعيد مع التشفير أثناء التخزين، أو استخدم password_wo لإبقاء كلمة المرور خارج الحالة بالكامل.

إنشاء خدمة

يجب أن تُصرِّح الخدمة القياسية بـ password أو password_wo. يجب ألا يقل طول القيمة عن 12 حرفًا، وأن تتضمن حرفًا صغيرًا واحدًا على الأقل، وحرفًا كبيرًا واحدًا على الأقل، ورقمًا واحدًا. يطبّق password_wo (مع password_wo_version) قواعد كلمة المرور نفسها، لكنه لا يُخزَّن أبدًا في الحالة؛ غيّر password_wo_version لإجراء التدوير. ونظرًا لأن واجهة برمجة تطبيقات لا تُرجع بيانات الاعتماد، يجب أن تظل Terraform الجهة الوحيدة التي تعيّن كلمة المرور: لا يُكتشَف تدوير كلمة المرور خارج Terraform (وحدة التحكم أو واجهة برمجة تطبيقات)، وتعيد عملية التدوير التالية التي تُدار بواسطة Terraform تعيين القيمة المُصرَّح بها.

التوافر العالي

تتحكم الوسيطة ha_type في عدد النسخ الاحتياطية الجاهزة: يمكن تغيير ha_type بعد الإنشاء؛ ويؤدي تغييرها إلى انتقال في التوافر العالي. راجع التوافر العالي للتفاصيل.

النسخ المتماثلة للقراءة

عيّن read_replica_of إلى قيمة id الخاصة بخدمة أساسية لإنشاء نسخة متماثلة للقراءة بتدفّق مستمر. ترث النسخة المتماثلة cloud_provider وregion وpostgres_version ومستخدم فائق الصلاحيات من الخدمة الأساسية، لذا اترك هذه القيم (وpassword) فارغة:
راجع النسخ المتماثلة للقراءة لمزيد من التفاصيل.

الاستعادة إلى نقطة زمنية

عيّن restore_to_point_in_time لإنشاء خدمة من خلال استعادة نسخة احتياطية لخدمة أخرى إلى نقطة زمنية محددة. تكون cloud_provider وregion وpostgres_version موروثة من المصدر (لذا احذفها)، كما يجب حذف size وha_type:
هذه الكتلة بأكملها مخصّصة لوقت الإنشاء فقط: إن تغيير source_id أو restore_target، أو إزالة الكتلة، يؤدي إلى حذف الخدمة وإعادة إنشائها. راجع النسخ الاحتياطي والاستعادة للاطلاع على التفاصيل.

مصادر البيانات

تتيح لك ثلاثة مصادر بيانات مرافقة العثور على الخدمات الحالية:

استيراد الخدمات الحالية

يمكن استيراد خدمات Managed Postgres الحالية إلى حالة Terraform باستخدام معرّف الخدمة:
لا تُستعاد كلمة المرور عند الاستيراد (إذ لا تُرجعها واجهة برمجة تطبيقات). بعد الاستيراد، تؤدي أول عملية apply إلى تبديل الخدمة إلى password أو password_wo المعرَّفين في الإعدادات الخاصة بك.

العمليات غير المدعومة

العناصر التالية غير موجودة عمدًا في مخطط المورد:
  • الأوامر التشغيلية (إعادة التشغيل، ترقية العقدة، تبديل الأدوار).
  • قوائم السماح لعناوين IP، ونقاط النهاية الخاصة، وإعدادات النسخ الاحتياطي، ونوافذ الصيانة، ومفاتيح التشفير التي يديرها العميل، وBYOC.
  • مهل دورة الحياة القابلة للتهيئة — لا توجد كتلة timeouts {}.
آخر تعديل في ٢٤ يوليو ٢٠٢٦