Copia de seguridad y restauración en una instancia
Este tema detalla el proceso de hacer una copia de seguridad de una colección y restaurarla desde la copia de seguridad dentro de la misma instancia de Milvus.
Visión general
El siguiente diagrama ilustra el proceso de copia de seguridad y restauración dentro de una única instancia de Milvus.
single-instance-backup-and-restore.png
Supongamos que tenemos una instancia de Milvus, milvus_A
, que utiliza un bucket llamadobucket_A
para el almacenamiento de datos. En este ejemplo, nuestro objetivo es completar las siguientes tareas:
Crear una copia de seguridad (
my_backup
) de la colección coll enbucket_A
.Restaurar desde la copia de seguridad y nombrar la colección restaurada
coll_bak
.
Requisitos previos
Asegúrese de que la herramienta milvus-backup está instalada.
Familiarícese con la configuración del almacenamiento de objetos Milvus. Para más detalles, consulte Almacenamiento de objetos.
Copia de seguridad de la colección
Paso 1: Preparar la configuración
Vaya al directorio del proyecto milvus-backup y cree un directorio llamado configs
:
mkdir configs
cd configs
Descargue el archivo de configuración de copia de seguridad backup.yaml:
wget https://raw.githubusercontent.com/zilliztech/milvus-backup/main/configs/backup.yaml
La estructura del archivo es la siguiente
├── configs
│ └── backup.yaml
├── milvus-backup
└── README.md
Paso 2: Editar el archivo de configuración
Modifique el archivo backup.yaml para establecer las configuraciones adecuadas paramilvus_A
. A continuación se muestra la configuración de almacenamiento de muestra:
# 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
Paso 3: Crear copia de seguridad
Una vez guardado backup.yaml, cree una copia de seguridad denominada my_backup
:
./milvus-backup create -c coll -n my_backup
Este comando crea la copia de seguridad bucket_A/backup/my_backup
en el almacenamiento de objetos de milvus_A
.
Restaurar desde la copia de seguridad en milvus_A
Una vez creada la copia de seguridad, puede restaurar a partir de ella utilizando el siguiente comando:
./milvus-backup restore -c coll -n my_backup -s _bak
Este comando restaura desde la copia de seguridad y crea una nueva colección llamada coll_bak en milvus_A
, con los datos almacenados en bucket_A/files/insert_log/[ID of new collection]
.