نشر خادم CDC
يوفر هذا الدليل عملية خطوة بخطوة لنشر خادم Milvus-CDC.
المتطلبات الأساسية
تأكد من استيفاء الشروط التالية قبل نشر خادم Milvus-CDC:
مثيلات ميلفوس: يجب نشر وتشغيل كل من الميلفوس المصدر وميلفوس مستهدف واحد على الأقل.
يجب أن يكون كلا الإصدارين المصدر والهدف Milvus 2.3.2 أو أعلى، ويفضل أن يكون 2.4.x. نوصي باستخدام نفس الإصدار للمصدر والهدف Milvus لضمان التوافق.
قم بتعيين التكوين
common.ttMsgEnabled
للهدف Milvus علىfalse
.تكوين المصدر والهدف ميلفوس المصدر والهدف مع إعدادات تخزين التعريف والرسائل المختلفة لمنع التعارضات. على سبيل المثال، تجنب استخدام نفس تكوينات etcd و rootPath، بالإضافة إلى خدمات Pulsar و
chanNamePrefix
المتطابقة في مثيلات Milvus المتعددة.
المخزن الوصفية: قم بتجهيز قاعدة بيانات إلخd أو قاعدة بيانات MySQL لقاعدة بيانات Milvus-CDC الوصفية.
الخطوات
الحصول على ملف تكوين Milvus-CDC
استنسخ الريبو Mil vus-CDC وانتقل إلى الدليل milvus-cdc/server/configs
للوصول إلى ملف التكوين cdc.yaml
.
git clone https://github.com/zilliztech/milvus-cdc.git
cd milvus-cdc/server/configs
قم بتحرير ملف التكوين
في الدليل milvus-cdc/server/configs
، قم بتعديل الملف cdc.yaml
لتخصيص التكوينات المتعلقة بمخزن ميتاستور Milvus-CDC وتفاصيل الاتصال بمصدر Milvus.
تكوين المستودع الوصفية:
metaStoreConfig.storeType
: نوع المخزن الوصفية لـ Milvus-CDC. القيم الممكنة هيetcd
أوmysql
.metaStoreConfig.etcdEndpoints
: :: عنوان الاتصال بـ إلخd لـ Milvus-CDC. مطلوب إذا تم تعيينstoreType
علىetcd
.metaStoreConfig.mysqlSourceUrl
: عنوان الاتصال لقاعدة بيانات MySQL لخادم Milvus-CDC. مطلوب إذا تم تعيينstoreType
علىmysql
.metaStoreConfig.rootPath
: المسار الجذر لخادم Milvus-CDC metastore. يتيح هذا التكوين إمكانية تعدد الاستئجار، مما يسمح لخدمات CDC المتعددة باستخدام نفس مثيل إلخd أو MySQL مع تحقيق العزل من خلال مسارات جذر مختلفة.
مثال على التكوين:
# cdc meta data config metaStoreConfig: # the metastore type, available value: etcd, mysql storeType: etcd # etcd address etcdEndpoints: - localhost:2379 # mysql connection address # mysqlSourceUrl: root:root@tcp(127.0.0.1:3306)/milvus-cdc?charset=utf8 # meta data prefix, if multiple cdc services use the same store service, you can set different rootPaths to achieve multi-tenancy rootPath: cdc
تكوين المصدر Milvus المصدر:
تحديد تفاصيل الاتصال الخاصة بمصدر Milvus، بما في ذلك مصدر Milvus، بما في ذلك إلخd وتخزين الرسائل، لإنشاء اتصال بين خادم Milvus-CDC ومصدر Milvus.
sourceConfig.etcdAddress
: عنوان الاتصال بـ إلخd الخاص بالمصدر Milvus. للمزيد من المعلومات، راجع التكوينات المتعلقة بـ إلخd.sourceConfig.etcdRootPath
: البادئة الجذرية للمفتاح الذي يخزن فيه المصدر Milvus البيانات في إلخd. قد تختلف القيمة بناءً على طريقة نشر مثيل Milvus:Helm أو Docker Compose: الإعداد الافتراضي إلى
by-dev
.المشغل: افتراضي إلى
<release_name>
.
replicateChan
:: اسم قناة النسخ المتماثل لـ milvus، وهو{msgChannel.chanNamePrefix.cluster}/{msgChannel.chanNamePrefix.replicateMsg}
في ملف milvus.yamlsourceConfig.pulsar
: تكوينات النابض لمصدر Milvus Milvus. إذا كان المصدر Milvus المصدر يستخدم Kafka لتخزين الرسائل، فقم بإزالة جميع التكوينات المتعلقة بـ Pulsar. لمزيد من المعلومات، راجع التكوينات المتعلقة بـ Pulsar.sourceConfig.kafka.address
: عنوان كافكا للمصدر Milvus. قم بإلغاء هذا التكوين إذا كان المصدر Milvus يستخدم Kafka لتخزين الرسائل.
مثال على التكوين:
# milvus-source config, these settings are basically the same as the corresponding configuration of milvus.yaml in milvus source.
sourceConfig:
# etcd config
etcdAddress:
- localhost:2379
etcdRootPath: by-dev
etcdMetaSubPath: meta
# default partition name
defaultPartitionName: _default
# read buffer length, mainly used for buffering if writing data to milvus-target is slow.
readChanLen: 10
replicateChan: by-dev-replicate-msg
# milvus-source mq config, which is pulsar or kafka
pulsar:
address: pulsar://localhost:6650
webAddress: localhost:80
maxMessageSize: 5242880
tenant: public
namespace: default
# authPlugin: org.apache.pulsar.client.impl.auth.AuthenticationToken
# authParams: token:xxx
# kafka:
# address: 127.0.0.1:9092
تجميع خادم Milvus-CDC
بعد حفظ الملف cdc.yaml
، انتقل إلى الدليل milvus-cdc
وقم بتشغيل أحد الأوامر التالية لتجميع الخادم:
لملف ثنائي:
make build
لصورة Docker:
bash build_image.sh
بالنسبة لصورة Docker، قم بتحميل الملف المجمّع إلى
/app/server/configs/cdc.yaml
داخل الحاوية.
ابدأ تشغيل الخادم
باستخدام الملف الثنائي
انتقل إلى الدليل الذي يحتوي على الملف الثنائي
milvus-cdc
والدليلconfigs
مع الملفcdc.yaml
، ثم ابدأ تشغيل الخادم:# dir tree . ├── milvus-cdc # build from source code or download from release page ├── configs │ └── cdc.yaml # config for cdc and source milvus # start milvus cdc ./milvus-cdc server
باستخدام Docker Compose:
docker compose up -d