Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

تثبيت ClickHouse Operator باستخدام kubectl

يغطي هذا الدليل تثبيت ClickHouse Operator باستخدام kubectl وملفات manifest.

المتطلبات الأساسية

  • مجموعة Kubernetes بالإصدار v1.28.0 أو أحدث
  • kubectl بالإصدار v1.28.0 أو أحدث
  • أذونات مسؤول المجموعة

التثبيت من ملفات manifest الخاصة بالإصدار

ثبّت الـoperator وتعريفات الموارد المخصصة (CRDs) من أحدث إصدار:

kubectl apply --server-side --force-conflicts -f https://github.com/ClickHouse/clickhouse-operator/releases/latest/download/clickhouse-operator.yaml

يلزم التطبيق من جهة الخادم لأن تعريفات الموارد المخصصة (CRDs) المجمّعة تتجاوز الحدّ الأقصى للحجم في التطبيق من جهة العميل. بالنسبة إلى البيئات التي لا تدعم إلا التطبيق من جهة العميل، استخدم إصدار تعريفات الموارد المخصصة (CRDs) المحذوفة منه الأوصاف:

kubectl apply -f https://github.com/ClickHouse/clickhouse-operator/releases/latest/download/clickhouse-operator-stripped-crds.yaml

سيؤدي هذا إلى:

  1. إنشاء مساحة الأسماء clickhouse-operator-system
  2. تثبيت CustomResourceDefinitions ‏(CRDs) لـ ClickHouseCluster وKeeperCluster
  3. إنشاء ServiceAccounts وRoles وRoleBindings اللازمة
  4. نشر مدير وحدة تحكم المشغّل
  5. تسجيل webhooks للتحقق من صحة الموارد وتعيين القيم الافتراضية
  6. تهيئة شهادات SSL باستخدام cert-manager
  7. تمكين نقطة نهاية المقاييس

التحقق من التثبيت

تحقق من أن المشغّل يعمل:

kubectl get pods -n clickhouse-operator-system

المخرجات المتوقعة:

NAME                                                 READY   STATUS    RESTARTS   AGE
clickhouse-operator-controller-manager-xxxxxxxxxx    1/1     Running   0          1m

تأكّد من تثبيت تعريفات الموارد المخصّصة (CRDs):

kubectl get crd | grep clickhouse.com

المخرجات المتوقعة:

clickhouseclusters.clickhouse.com    2025-01-06T00:00:00Z
keeperclusters.clickhouse.com        2025-01-06T00:00:00Z

تهيئة خيارات نشر مخصّصة

إذا أردت تهيئة خيارات نشر المشغّل، فاتبع الخطوات التالية.

استنسخ المستودع

git clone https://github.com/ClickHouse/clickhouse-operator.git
cd clickhouse-operator

تهيئة خيارات التثبيت

حرّر config/default/kustomization.yaml لتمكين الميزات أو تعطيلها حسب الحاجة.

  • لتعطيل webhooks، أضف تعليقًا إلى القسمين [WEBHOOK] و[CERTMANAGER].
  • لتمكين نقطة نهاية المقاييس الآمنة، أضف تعليقًا إلى أقسام [METRICS] وأزل التعليق عن القسمين [METRICS SECURE] و[CERTMANAGER].
  • لتمكين ServiceMonitor لـ Prometheus Operator، أزل التعليق عن قسم [PROMETHEUS].
  • لتمكين سياسات شبكة المشغّل، أزل التعليق عن قسم [NETWORK POLICY].

ابنِ وانشر

أنشئ ملفات البيان الخاصة بالمشغّل ثم طبّقها:

make build-installer VERSION=<required operator version> [IMG=<custom registry path>]
kubectl apply --server-side --force-conflicts -f dist/install.yaml
Navigation