الانتقال إلى المحتوى الرئيسي
مهمل — مخطط Helm ‏v1.xتوضح هذه الصفحة إعدادات التهيئة الخاصة بمخطط Helm v1.x ذي القالب المضمّن، وهو الآن في وضع الصيانة. للاطلاع على مخطط v2.x، انظر تهيئة Helm. وللترحيل، راجع دليل الترقية.
يستعرض هذا الدليل خيارات التهيئة لعمليات نشر ClickStack عبر Helm. وللتثبيت الأساسي، راجع دليل النشر الرئيسي باستخدام Helm.

إعداد مفتاح API

بعد نشر ClickStack بنجاح، قم بتهيئة مفتاح API لتمكين جمع بيانات القياس عن بُعد:
  1. الوصول إلى مثيل HyperDX الخاص بك عبر مورد الدخول المُعَدّ أو نقطة نهاية الخدمة
  2. سجّل الدخول إلى لوحة معلومات HyperDX وانتقل إلى إعدادات الفريق لإنشاء مفتاح API أو استعادته
  3. حدّث الـ Deployment الخاص بك باستخدام مفتاح API بإحدى الطرق التالية:

الطريقة 1: التحديث باستخدام Helm upgrade مع ملف values

أضف مفتاح API إلى ملف values.yaml:
ثم قم بترقية عملية النشر الخاصة بك:

الطريقة 2: التحديث باستخدام Helm upgrade مع الخيار —set

أعد تشغيل الكبسولات لتطبيق التغييرات

بعد تحديث مفتاح الـAPI، أعد تشغيل الكبسولات لتحميل التهيئة الجديدة:
ينشئ المخطط تلقائيًا Kubernetes secret (<release-name>-app-secrets) يتضمّن مفتاح API الخاص بك. ولا يلزم أي إعداد إضافي لهذا الـ secret إلا إذا كنت تريد استخدام secret خارجي.

إدارة الأسرار

للتعامل مع بيانات حساسة مثل مفاتيح API أو بيانات اعتماد قاعدة البيانات، استخدم كائنات secrets في Kubernetes.

استخدام الأسرار المُهيّأة مسبقًا

يتضمّن مخطط Helm قالب Secret افتراضيًا موجودًا في charts/clickstack/templates/secrets.yaml. يوفّر هذا الملف بنية أساسية لإدارة الأسرار. إذا كنت بحاجة إلى تطبيق كائن Secret يدويًا، فعدّل قالب secrets.yaml المتوفّر ثم طبّقه:
طبّق كائن Secret على العنقود:

إنشاء سرّ Kubernetes مخصّص

أنشئ سرّ Kubernetes مخصّصًا يدويًا:

الإشارة إلى secret في ملف values.yaml

إعداد الدخول الوارد

لإتاحة واجهة HyperDX وواجهة برمجة التطبيقات عبر اسم نطاق، فعِّل الدخول الوارد في ملف values.yaml.

التهيئة العامة للوصول

ملاحظة مهمة حول الإعداديجب أن يتطابق hyperdx.frontendUrl مع مضيف مورد الدخول وأن يتضمن البروتوكول (على سبيل المثال: https://hyperdx.yourdomain.com). وهذا يضمن عمل جميع الروابط وملفات تعريف الارتباط وعمليات إعادة التوجيه المُنشأة بشكل صحيح.

تمكين TLS (HTTPS)

لتأمين عملية النشر باستخدام HTTPS: 1. أنشئ سر TLS باستخدام شهادتك ومفتاحك الخاص:
2. فعّل TLS في تكوين الـIngress لديك:

مثال على تهيئة مورد الإدخال

للمرجع، إليك كيف يبدو مورد الإدخال الذي تم إنشاؤه:

المشكلات الشائعة في مورد الدخول

إعدادات المسار وإعادة الكتابة:
  • بالنسبة إلى Next.js وغيرها من التطبيقات أحادية الصفحة، استخدم دائمًا مسار regex وتعليمة إعادة الكتابة كما هو موضّح أعلاه
  • لا تستخدم فقط path: / من دون إعادة كتابة، لأن ذلك سيؤدي إلى تعطّل تقديم الملفات الثابتة
عدم تطابق frontendUrl وingress.host:
  • إذا لم يتطابقا، فقد تواجه مشكلات في ملفات تعريف الارتباط وعمليات إعادة التوجيه وتحميل الملفات الثابتة
سوء إعداد TLS:
  • تأكّد من أن كائن Secret الخاص بـ TLS صالح ويُشار إليه بشكل صحيح في مورد الدخول
  • قد تحظر المتصفحات المحتوى غير الآمن إذا وصلت إلى التطبيق عبر HTTP عندما يكون TLS مفعّلًا
إصدار متحكّم Ingress:
  • تتطلّب بعض الميزات (مثل مسارات regex وعمليات إعادة الكتابة) إصدارات حديثة من متحكّم nginx Ingress
  • تحقّق من إصدارك باستخدام:

ولوج OTEL collector

إذا كنت بحاجة إلى إتاحة endpoints الخاصة بـ OTEL collector (للـ traces والـ metrics والـ logs) عبر الولوج، فاستخدم إعداد additionalIngresses. ويكون ذلك مفيدًا لإرسال telemetry data من خارج الـ cluster أو لاستخدام domain مخصص لـ collector.
  • يؤدي ذلك إلى إنشاء مورد إدخال منفصل لنقاط نهاية OTel collector
  • يمكنك استخدام نطاق مختلف، وتهيئة إعدادات TLS محددة، وتطبيق تعليقات توضيحية مخصصة
  • تتيح لك قاعدة مسار Regex توجيه جميع إشارات OTLP (التتبعات والمقاييس والسجلات) عبر قاعدة واحدة
إذا لم تكن بحاجة إلى إتاحة OTel collector خارجيًا، فيمكنك تخطي هذا الإعداد. وبالنسبة إلى معظم المستخدمين، يكون إعداد الإدخال العام كافيًا.

استكشاف أخطاء الإدخال وإصلاحها

تحقق من مورد الإدخال:
تحقق من سجلات متحكّم الدخول:
اختبار عناوين URL للملفات: استخدم curl للتحقّق من أن الملفات الثابتة تُعرَض بصيغة JS لا HTML:
أدوات المطوّر في المتصفح:
  • تحقّق من علامة التبويب Network بحثًا عن حالات 404 أو الأصول التي تُرجِع HTML بدلًا من JS
  • ابحث عن أخطاء مثل Unexpected token < في وحدة التحكّم (وهذا يشير إلى أنّ HTML يُرجَع بدلًا من JS)
تحقّق من إعادة كتابة المسارات:
  • تأكّد من أنّ مورد الإدخال لا يزيل مسارات الأصول أو يعيد كتابتها على نحو غير صحيح
امسح ذاكرة التخزين المؤقت للمتصفح وCDN:
  • بعد إجراء التغييرات، امسح ذاكرة التخزين المؤقت للمتصفح وأي ذاكرة تخزين مؤقت لـ CDN/الوكيل لتجنّب استخدام أصول قديمة

تخصيص القيم

يمكنك تخصيص الإعدادات باستخدام وسيطات --set:
بدلًا من ذلك، أنشئ ملف values.yaml مخصصًا. لاسترجاع القيم الافتراضية:
مثال على التهيئة:
طبّق قيمك المخصّصة:

الخطوات التالية

آخر تعديل في ٢ يوليو ٢٠٢٦