命令行模式部署
命令行模式通过文本菜单逐步引导完成安装,支持数字输入进行选择操作,无需额外依赖,适用于无图形化环境。
安装过程中内置参数实时校验,配置有误时自动提示重新输入,支持安全模式与非安全模式,部署完成后可选择立即启动数据库。
WARNING
命令行模式不支持在一台机器上部署多个节点。
前提条件
系统要求:
- 所有待部署节点的硬件、操作系统和软件依赖满足部署准备要求。
- 网络设置:
- 各节点间网络联通。
- 节点所在机器位于同一机房内。
- 物理机器间网络延迟不高于 50 ms。
- 各节点时钟相差不大于 500 ms。
- 各节点已预留 KaiwuDB 服务所需端口。
- 已获取 KaiwuDB 安装程序(
.run文件)。
用户权限要求:
安装用户为
root用户或已配置sudo免密的普通用户。使用容器安装程序部署时,如果安装用户为非
root用户,需要通过以下命令将用户添加到docker组:sudo usermod -aG docker $USER
步骤
登录待部署节点,将
.run安装程序复制到安装目录,并赋予执行权限:chmod +x KaiwuDB-*.run执行以下命令,以命令行模式启动安装程序:
./KaiwuDB-*.run -c # 或者 ./KaiwuDB-*.run --cli安装程序启动后,进入主功能菜单,输入
1选择安装 KaiwuDB:1. 安装 KaiwuDB 2. 卸载 KaiwuDB 3. 安装 KaiwuDB 并加入集群 4. 升级节点 5. 退出 请输入操作 [1-5]:根据实际业务需求,输入对应数字选择单副本或三副本集群:
1. 单机安装 2. 单副本集群 3. 三副本集群 4. 返回主菜单 请选择 [1-4]:输入待安装的节点数量,例如输入
3表示安装三个节点。安装程序自动生成配置文件模板并打开编辑器。根据实际环境修改各参数,保存并退出后,安装程序将自动开始安装。
配置文件示例(以三节点为例):
[global] # 是否开启安全模式 secure_mode=tls # adminui 端口 rest_port=8080 # 数据库服务端口 kaiwudb_port=26257 # 数据传输端口 brpc_port=27257 # 数据目录 data_root=/var/lib/kaiwudb [node1] host=192.168.122.237 # ssh 连接端口 port=22 # ssh 连接用户 user=admin # ssh 连接密码 passwd=****** [node2] host=192.168.122.79 # ssh 连接端口 port=22 # ssh 连接用户 user=admin # ssh 连接密码 passwd=****** [node3] host=192.168.122.169 # ssh 连接端口 port=22 # ssh 连接用户 user=admin # ssh 连接密码 passwd=******参数说明:
参数 说明 secure_mode安全模式,支持以下取值:
-insecure:非安全模式。
-tls:(默认)TLS 安全模式。
-tlcp:TLCP 安全模式。
开启安全模式后,KaiwuDB 自动生成相应证书,存放于/etc/kaiwudb/certs目录。rest_portKaiwuDB Web 服务端口,默认为 8080。kaiwudb_portKaiwuDB 服务端口,默认为 26257。brpc_port时序引擎间的数据传输端口,用于节点间通信,默认为 27257。data_root数据目录,默认为 /var/lib/kaiwudb。host节点 IP 地址,需确保各节点间网络可达。 port远程节点的 SSH 服务端口。各节点的 SSH 服务端口必须相同。 user远程节点的 SSH 登录用户。各节点的 SSH 登录用户必须相同。 passwd远程节点的 SSH 登录密码。各节点的 SSH 登录密码必须相同。 选择是否为所有用户安装 KaiwuDB:
是否为所有用户安装:(y/N)安装过程中终端会实时显示安装进度。出现错误时,可以通过查看安装目录
log目录下的日志文件获取详细信息。所有节点部署完成后,根据提示选择是否初始化集群:
是否初始化集群:(y/N)输入
y:系统自动初始化 KaiwuDB 集群,初始化完成后提示 14 天试用期, 建议及时完成激活,具体激活步骤,参见许可证管理。输入
N:跳过初始化,后续需手动初始化集群:systemctl start kaiwudb提示
多副本集群初始化和启动大约需要 10 秒左右时间。在此期间,如果有节点死亡,可能会导致集群无法触发高可用机制。
在主功能菜单,输入
5退出部署流程。使用以下任一方式查看服务或集群状态:
# 查看服务状态 systemctl status kaiwudb # 查看集群状态 kw-status集群状态返回字段说明:
字段 描述 id节点 ID。 address节点地址。 sql_addressSQL 地址。 build节点运行的 KaiwuDB 版本。 started_at节点启动的日期和时间。 updated_at节点状态更新的日期和时间。节点正常时,每 10 秒左右记录一次新状态;节点异常时,更新信息可能会有所滞后。 locality节点 ID。 start_mode节点启动模式。 is_available/is_live均为 true表示节点处于正常状态;均为false表示节点处于异常状态。(可选)配置 KaiwuDB 开机自启动。
systemctl enable kaiwudb说明
系统重启后,如果当前节点与其他节点时钟相差大于 500 ms,可能导致 KaiwuDB 自启动失败。需先完成时钟同步,再手动启动 KaiwuDB。
执行
kw-sql使用数据库部署用户登录数据库或者通过以下任一方式连接和管理 KaiwuDB: