elasticsearch迁移--利用腾讯云cos和nfs
一、在公有云服务器上备份ES
1、创建备份repo
curl -uelastic:'ES&ceshi720' -XPUT "http://172.30.0.17:9200/_snapshot/my_cos_backup" -d '{"type": "cos","setti,"access_key_secret": "Secret","bucket": "estest","region": "ap-guangzhou","compress": true,"chunk_size": "500mb","base_path": "/"}}' -H'Content-Type: application/json'
2、执行snapshot备份
curl -uelastic:'123' -XPUT "http://172.30.0.17:9200/_snapshot/my_cos_backup/snapshot_1?wait_for_completion=true"
=================================
二、在腾讯云服务器上做快照
3、在ES节点1上,到COS上下载所有备份
安装coscmd
yum install python-pip -y
pip install coscmd
配置coscmd初始参数
coscmd config -a accesskeyid -s Secret -b estest -r ap-guangzhou
配置coscmd优化参数
vim /root/.cos.conf
[common]
secret_id = accesskeyid
secret_key = Secret
bucket = estest-1300672061
region = ap-guangzhou
max_thread = 20
part_size = 1
schema = http
verify = md5
anonymous = False
用coscmd将整个存储桶拖回本地,临时存放在一个目录
coscmd download -r / /data/esback
4、修改所有本地ES配置
mkdir -p /data/essnapshot
chown -R elasticsearch:elasticsearch /data/essnapshot
vim config/elasticsearch.yml
增加一行
path.repo: ["/data/essnapshot"]
重启ES服务
5、在ES节点1上安装NFS服务
yum install nfs* rpcbind -y
vim /etc/exports
添加一行:
/data/essnapshot *(rw,no_root_squash,no_all_squash,sync)
重启服务
exportfs -r
service rpcbind restart
service nfs restart
6、在ES节点2、3及其他节点上挂载NFS
showmount -e x.x.x.x查看是否正常释放挂载点
接下来开始挂载
mkdir -p /data/essnapshot
chown -R elasticsearch:elasticsearch /data/essnapshot
mount -t nfs 10.0.1.111:/data/essnapshot /data/essnapshot1 -o proto=tcp -o nolock
确保所有节点都能看到/data/essnapshot里的文件
7、在其中一台ES上执行命令,创建备份repo
curl -XPUT 'http://10.0.0.7:9200/_snapshot/my_backup' -d '{"type":"fs","settings":{"location":"/data/essnapshot","compress":"true"}}' -H'Content-Type: application/json'
8、将文件移动到snapshot目录
mv /data/esback/* /data/essnapshot
9、restore
curl -XPOST 'http://10.0.0.7:9200/_snapshot/my_backup/snapshot_1/_restore?wait_for_completion=true'
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App
2019-03-12 如何控制docker的CPU和内存份额
2019-03-12 mysql 修改字段 + 开启ssl
2019-03-12 监控网卡流量(转)
2018-03-12 Beautifulsoap - request 网络爬虫 (转)