要求
基于mongo-connector同步数据,必须要求mongodb为复制集架构,原因是此插件是基于oplog操作记录进行数据同步的;而oplog可以说是Mongodb Replication的纽带。具体参见: http://www.mongoing.com/oplog
- 启动复制集: ./bin/mongod --dbpath /path/to/database --logpath /path/to/log --fork --port 27017 --replSet rs0
- 配置:rsconf={id:‘rs0‘,members:[{id:0,host:‘host:27017‘}]}
- 初始化配置:rs.initiate(rsconf)
安装相关插件
本机环境phthon2.6,如果没有pip命令,执行easy_install pip,安装pip
- pip install mongo-connector
- pip install elastic_doc_manager
开始同步
- mongo-connector -m localhost:27017 -t eshost:9200 -d elastic_doc_manager
- 在mongodb中插入数据:db.infos.insert({"message":"测试日志"})
- es中查看
问题
ReadTimeoutError(HTTPConnectionPool(host=u‘‘, port=9200): Read timed out. (read timeout=10))
- 找到/usr/lib/python2.6/site-packages/mongoconnector/docmanagers目录下:elasticdocmanager.py
- 修改self.elastic = Elasticsearch(hosts=url,**client_options)
- 修改为self.elastic = Elasticsearch(hosts=url, timeout=200,**client_options)即可
具体配置参数详见:
时间: 2024-10-09 17:03:18