النسخ الاحتياطي والاستعادة في مثيل واحد
يوضح هذا الموضوع بالتفصيل عملية النسخ الاحتياطي لمجموعة واستعادتها من النسخة الاحتياطية داخل نفس مثيل Milvus.
نظرة عامة
يوضح الرسم البياني أدناه عملية النسخ الاحتياطي والاستعادة ضمن مثيل Milvus واحد.
النسخ الاحتياطي والاستعادة من مثيل واحد. png
لنفترض أن لدينا مثيل Milvus، milvus_A
، باستخدام دلو باسمbucket_A
لتخزين البيانات. في هذا المثال، هدفنا هو إكمال المهام التالية:
إنشاء نسخة احتياطية (
my_backup
) للمجموعة coll فيbucket_A
.الاستعادة من النسخة الاحتياطية وتسمية المجموعة المستعادة
coll_bak
.
المتطلبات الأساسية
تأكد من تثبيت أداة النسخ الاحتياطي Milvus-backup.
تعرف على تكوين إعدادات تخزين كائنات Milvus. للحصول على التفاصيل، راجع تخزين الكائنات.
النسخ الاحتياطي للمجموعة
الخطوة 1: إعداد التكوين
انتقل إلى دليل مشروع milvus-backup وأنشئ دليلاً باسم configs
:
mkdir configs
cd configs
قم بتنزيل ملف تكوين النسخ الاحتياطي backup.yaml:
wget https://raw.githubusercontent.com/zilliztech/milvus-backup/main/configs/backup.yaml
تبدو بنية الملف هكذا:
├── configs
│ └── backup.yaml
├── milvus-backup
└── README.md
الخطوة 2: تحرير ملف التكوين
قم بتعديل ملف backup.yaml لتعيين التكوينات المناسبة لـmilvus_A
. فيما يلي نموذج تكوين التخزين:
# Related configuration of minio, which is responsible for data persistence for Milvus.
minio:
# cloudProvider: "minio" # deprecated use storageType instead
storageType: "minio" # support storage type: local, minio, s3, aws, gcp, ali(aliyun), azure, tc(tencent)
address: localhost # Address of MinIO/S3
port: 9000 # Port of MinIO/S3
accessKeyID: minioadmin # accessKeyID of MinIO/S3
secretAccessKey: minioadmin # MinIO/S3 encryption string
useSSL: false # Access to MinIO/S3 with SSL
useIAM: false
iamEndpoint: ""
bucketName: "bucket_A" # Milvus Bucket name in MinIO/S3, make it the same as your milvus instance
rootPath: "files" # Milvus storage root path in MinIO/S3, make it the same as your milvus instance
# only for azure
backupAccessKeyID: minioadmin # accessKeyID of MinIO/S3
backupSecretAccessKey: minioadmin # MinIO/S3 encryption string
backupBucketName: "bucket_A" # Bucket name to store backup data. Backup data will store to backupBucketName/backupRootPath
backupRootPath: "backup" # Rootpath to store backup data. Backup data will store to backupBucketName/backupRootPath
الخطوة 3: إنشاء نسخة احتياطية
بمجرد حفظ backup.yaml، قم بإنشاء نسخة احتياطية باسم my_backup
:
./milvus-backup create -c coll -n my_backup
يقوم هذا الأمر بإنشاء نسخة احتياطية bucket_A/backup/my_backup
في مخزن الكائنات milvus_A
.
الاستعادة من النسخة الاحتياطية داخل milvus_A
بمجرد إنشاء النسخة الاحتياطية، يمكنك الاستعادة منها باستخدام الأمر أدناه:
./milvus-backup restore -c coll -n my_backup -s _bak
يستعيد هذا الأمر من النسخة الاحتياطية وينشئ مجموعة جديدة باسم coll_bak في milvus_A
، مع البيانات المخزنة في bucket_A/files/insert_log/[ID of new collection]
.