하나의 인스턴스에서 백업 및 복원
이 주제에서는 컬렉션을 백업하고 동일한 Milvus 인스턴스 내의 백업에서 복원하는 프로세스에 대해 자세히 설명합니다.
개요
아래 다이어그램은 단일 Milvus 인스턴스 내의 백업 및 복원 프로세스를 보여줍니다.
단일 인스턴스 백업 및 복원.png
bucket_A
이라는 버킷을 데이터 저장소로 사용하는 Milvus 인스턴스( milvus_A
)가 있다고 가정합니다. 이 예제에서는 다음 작업을 완료하는 것이 목표입니다:
bucket_A
에서 컬렉션 coll에 대한 백업(my_backup
)을 만듭니다.백업에서 복원하고 복원된 컬렉션의 이름을
coll_bak
으로 지정합니다.
전제 조건
밀버스 백업 도구가 설치되어 있는지 확인합니다.
Milvus 개체 스토리지 설정 구성에 익숙해집니다. 자세한 내용은 개체 스토리지를 참조하세요.
컬렉션 백업하기
1단계: 구성 준비
밀버스 백업 프로젝트의 디렉터리로 이동하여 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단계: 구성 파일 편집
milvus_A
에 적절한 구성을 설정하도록 backup.yaml 파일을 수정합니다. 아래는 샘플 스토리지 구성입니다:
# 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
이 명령은 milvus_A
의 오브젝트 스토리지에 bucket_A/backup/my_backup
백업을 생성합니다.
milvus_A 내의 백업에서 복원합니다.
백업이 생성되면 아래 명령을 사용하여 백업에서 복원할 수 있습니다:
./milvus-backup restore -c coll -n my_backup -s _bak
이 명령은 백업에서 복원하고 milvus_A
에 coll_bak 이라는 이름의 새 컬렉션을 만들고 bucket_A/files/insert_log/[ID of new collection]
에 데이터를 저장합니다.