يغطي هذا الدليل تثبيت 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سيؤدي هذا إلى:
- إنشاء مساحة الأسماء
clickhouse-operator-system - تثبيت CustomResourceDefinitions (CRDs) لـ ClickHouseCluster وKeeperCluster
- إنشاء ServiceAccounts وRoles وRoleBindings اللازمة
- نشر مدير وحدة تحكم المشغّل
- تسجيل webhooks للتحقق من صحة الموارد وتعيين القيم الافتراضية
- تهيئة شهادات SSL باستخدام cert-manager
- تمكين نقطة نهاية المقاييس
التحقق من التثبيت
تحقق من أن المشغّل يعمل:
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