近来,收到社区反馈出现集群部署失败的问题,一部分原因是由官网文档有误导致,另一部分原因是大家对openGemini集群交互缺乏整体的了解,使得配置项出现错误,为帮助大家正确使用openGemini,特整理了非常详尽的安装部署教程《openGemini安装部署指南(中文版)》,简称《部署指南》,包含单机部署、集群部署、集群扩容等内容,已在社区发布,见https://github.com/openGemini/community
关于openGemini的任何问题,可以在社区openGemini Q&A Issue中和我们交流!我们也会将收集的Q&A在这里面进行发布。
本文就openGemini端口、集群灵活部署方式等常见问题进行说明。
openGemini的端口有哪些,什么作用?
openGemini的端口如下图所示
端口说明如下表所示:
组件 | 端口 | 说明 |
ts-sql |
8086 | 端口可变更,openGemini对外提供服务的统一入口 |
6061 | 不可变更,若被其他程序占用,则pprof功能不可用 | |
ts-meta | 8092 | 端口可变更,ts-meta与ts-sql、ts-store之间正常业务交互使用的端口 |
8091 | 端口可变更,ts-meta的运维接口 | |
8088 | 端口可变更,选举通信使用,三个ts-meta组成一个复制集,复制集之间通过raft协议进行选举 | |
8010 | 端口可变更,ts-store(新)加入集群时使用 | |
ts-store | 8400 | 端口可变更,ts-sql通过该端口将数据写入ts-store |
8401 | 端口可变更,ts-sql通过该端口查询ts-store的数据 | |
8011 | 端口可变更,ts-meta监测ts-store心跳使用 | |
6060 | 不可变更,若被其他程序占用,则pprof功能不可用 |
openGemini部署方式有哪几种?
openGemini可单机部署,也可集群部署。
由于openGemini集群由ts-sql,ts-meta和ts-store组成,部署上灵活度很大,可以分散在多个节点部署,也可以全部部署在同一个节点上。
openGemini部署时需要注意什么?
-
最先启动所有ts-meta,然后启动ts-store和ts-sql
-
配置文件的日志、数据、元数据等存放目录默认是/tmp/openGemini,为避免出现存储空间不足,建议修改存储目录
-
openGemini集群的配置文件openGemini.conf包含ts-meta、ts-sql、ts-store的配置项,如果同一个节点上不存在相同组件的情况下,可以共同使用同一个配置文件。
-
openGemini提供的单机启动脚本和集群启动脚本,分别是install.sh 和install_cluster.sh,二者使用的IP地址为127.0.0.1,可用于功能测试和学习。
-
不建议在同一个节点上部署可供外部访问的集群,这种部署方式需要重新规划端口,如下图所示,虽然可行,但容易出错。可以参考《部署指南》中伪集群的部署。
openGemini部署集群至少需要多少组件?
ts-meta 需要3个,ts-sql至少需要1个,ts-store至少需要1个
openGemini集群如何扩容?
以扩ts-store组件为例,按部署方式可分为三种情况:
-
新增组件ts-store部署在已有节点上,该节点已存在ts-store组件,这种情况下,新增ts-store的各端口需要重新规划,还需单独的配置文件
-
新增ts-store部署在已有节点上,该节点无ts-store组件,这种情况可以同其他组件共用配置文件
-
新增组件ts-store部署在新节点上
上述三种情况下,详细的配置文件配置见《部署指南》
结束
官网文档需要翻译后再更新,需要晚一些,相信在看过社区的《部署指南》后,可以帮助解决大家在实际部署openGemini碰到的问题。后续我们会推出openGemini配置调优的相关文章,可以持续关注!
openGemini 官网:http://www.openGemini.org
openGemini 开源地址:https://github.com/openGemini
openGemini 公众号:
欢迎关注~ 诚邀你加入 openGemini 社区,共建、共治、共享未来!