使用备份和恢复实现云搜索实例的跨区域迁移 源端西南1资源池云搜索服务实例操作 1. Elasticsearch实例绑定公网访问:购买弹性IP,在“安全设置”中绑定Elasticsearch集群,安全组开放9200端口访问,具体操作参见“实例公网访问” 2. 创建索引和数据:通过公网ip+端口,在Elasticsearch中插入数据。 创建索引 cpp curl u admin: X PUT " H 'ContentType: application/json' d' { "mappings": { "properties": { "name": { "type": "text" }, "price": { "type": "float" } } } } ' 插入第一个产品 cpp curl u admin: X POST " H 'ContentType: application/json' d' { "name": "Laptop", "price": 899.99 } ' 插入第二个产品 cpp curl u admin: X POST " H 'ContentType: application/json' d' { "name": "Smartphone", "price": 499.99 } ' 3. 打开备份管理功能 开通ZOS服务,创建存储桶,在云搜索控制台开启备份能力,填写AK/SK。具体开通操作可参考“创建快照备份”。 4. 手动备份索引 点击手动备份,填写备份名称“backuptest”,选择存储桶,备份对象我们选择“索引”,填写索引名称“products”,确认。等待备份完成。 目的端华东1资源池云搜索实例操作 1. 开通云主机:在华东1资源池与云搜索实例同一个VPC下,开通一台云主机。 2. 下载安装ZOS数据迁移工具,根据系统下载如下工具包: unzip ZOSMigrationToollinuxamd64.zip chmod +x zsync 3. 打开备份管理功能 开通ZOS服务,创建存储桶,在云搜索控制台开启备份能力,填写AK/SK。具体操作可参考“创建快照备份”。 4. 配置ZOS数据迁移工具 根据实际情况配置migaration.conf文件。 注意 因为云主机在华东1,西南1需要配置外网地址,而华东1只需要配置内网地址。 如果是跨云迁移,例如友商云迁移到天翼云,需要填写不同的srcType。具体可参考ZOS数据迁移工具页面上的《ZOS数据迁移工具使用手册》.pdf文件。 迁移工具里的AKSK需要填ZOS对象存储的。其值可以从对应的对象存储页面获取。 srcUrl/destUrl的值可以从桶页面的概览页获取。 不同版本的迁移工具,配置项可能略有区别,根据实际情况调整即可。 示例配置如下: cpp { "srcType":"S3", "srcUrl":" "srcAccessKey":"", "srcSecretKey":"", "srcBucket":"bucket3cab", "srcMigrationType": "Bucket", "srcMigrateFolder": [], "srcMigrateFiles": [], "srcMigratePrefix": [], "destUrl":" "destAccessKey":"", "destSecretKey":"", "destBucket":"bucket5daa", "destPrefix":"", "multipartSize(megabytes)": 5, "enableConsistencyCheck":"False", "objectStorageClass":"", "objectAcl":"", "recordFailedObject": "True", "migrationAfterModified": "", "migrationBeforeModified": "", "conflictMode": "IGNORE", "logLevel":"DEBUG", "processNums":12, "threadNums":16, "failRetryMode": "False", "retryFailFiles": [] } 5. 启动迁移 迁移完成后,在华东1的对应的桶中,应该可以看到所有的快照信息。备份数据路径参考esearch/snapshots/manual/Elasticsearch。 6. 恢复索引 创建快照仓库: cpp curl u admin: X PUT "ip:9200/snapshot/remoterestoreonly?pretty" H 'ContentType: application/json' d' { "type": "s3", "settings": { "bucket": "bucket5daa", "basepath": "esearch/snapshots/manual/Elasticsearch", "protocol": "http", "endpoint": " } }' 恢复索引: cpp curl u admin: X POST "ip:9200/snapshot/remoterestoreonly/backuptest/restore?pretty" H 'ContentType: application/json' d' { "indices": "products" }' 注意,这里填写的快照名称要和创建时一致。 返回成功: cpp { "accepted" : true } restore完成后查看恢复情况: cpp curl u admin: X GET "192.168.0.24:9200/products/recovery?pretty" 等待索引恢复成功。 7. 迁移完成后清理 删除迁移用的快照: cpp curl u admin: X DELETE "ip:9200/snapshot/remoterestoreonly/backuptest" 删除迁移用的快照仓库: cpp curl u admin: X DELETE "ip:9200/snapshot/remoterestoreonly" 删除ZOS桶中的数据:路径参考:esearch/snapshots/manual/Elasticsearch。