kwbase CLI 部署
前提条件
说明
本节介绍的 kwbase CLI 部署方式仅适用于裸机部署。
步骤
登录待部署节点,进入安装包目录下的
packages目录。安装依赖包和服务器组件。
DEB 包系统(Debian/Ubuntu):
dpkg -i ./kaiwudb-libcommon-<版本号>.deb ./kaiwudb-server-<版本号>.debRPM 包系统(CentOS/RHEL):
rpm -ivh ./kaiwudb-libcommon-<版本号>.rpm ./kaiwudb-server-<版本号>.rpm
切换至程序目录:
cd /usr/local/kaiwudb/bin(可选)如需采用安全部署模式,执行以下步骤创建证书:
创建证书存放目录:
mkdir -p /usr/local/kaiwudb/certs生成证书和密钥。
TLS 安全模式:
# 创建数据库证书颁发机构及密钥 ./kwbase cert create-ca --certs-dir=/usr/local/kaiwudb/certs --ca-key=/usr/local/kaiwudb/certs/ca.key && \ # 创建安装数据库用户的客户端证书及密钥(USERNAME 替换为实际用户名) ./kwbase cert create-client $USERNAME --certs-dir=/usr/local/kaiwudb/certs --ca-key=/usr/local/kaiwudb/certs/ca.key && \ # 创建节点服务器证书及密钥 ./kwbase cert create-node 127.0.0.1 localhost 0.0.0.0 --certs-dir=/usr/local/kaiwudb/certs --ca-key=/usr/local/kaiwudb/certs/ca.keyTLCP 安全模式:
# 创建数据库证书颁发机构及密钥 ./kwbase cert create-ca --certs-dir=/usr/local/kaiwudb/certs --ca-key=/usr/local/kaiwudb/certs/ca.key --tlcp && \ # 创建安装数据库用户的客户端证书及密钥(USERNAME 替换为实际用户名) ./kwbase cert create-client $USERNAME --certs-dir=/usr/local/kaiwudb/certs --ca-key=/usr/local/kaiwudb/certs/ca.key --tlcp && \ # 创建节点服务器证书及密钥 ./kwbase cert create-node 127.0.0.1 localhost 0.0.0.0 --certs-dir=/usr/local/kaiwudb/certs --ca-key=/usr/local/kaiwudb/certs/ca.key --tlcp
启动数据库。
非安全模式:
./kwbase start-single-node --insecure \ --listen-addr=0.0.0.0:26257 \ --http-addr=0.0.0.0:8080 \ --store=/var/lib/kaiwudbTLS 安全模式:
./kwbase start-single-node \ --certs-dir=/usr/local/kaiwudb/certs \ --listen-addr=0.0.0.0:26257 \ --http-addr=0.0.0.0:8080 \ --store=/var/lib/kaiwudbTLCP 安全模式:
./kwbase start-single-node \ --certs-dir=/usr/local/kaiwudb/certs \ --listen-addr=0.0.0.0:26257 \ --http-addr=0.0.0.0:8080 \ --store=/var/lib/kaiwudb \ --tlcp
查看数据库状态。
非安全模式:
./kwbase node status --insecure --host=<address_of_any_alive_node>TLS 安全模式:
./kwbase node status --certs-dir=/usr/local/kaiwudb/certs --host=<address_of_any_alive_node>TLCP 安全模式:
./kwbase node status --certs-dir=/usr/local/kaiwudb/certs --host=<address_of_any_alive_node> --tlcp
(可选)创建数据库用户并授予用户管理员权限。如果跳过该步骤,系统将默认使用部署数据库时的用户,且无需密码访问数据库。
非安全模式(不带密码):
./kwbase sql --host=127.0.0.1:$local_port --insecure \ -e "create user $username; \ grant admin to $username with admin option;"TLS 安全模式(带密码):
./kwbase sql --certs-dir=/usr/local/kaiwudb/certs --host=127.0.0.1:$local_port \ -e "create user $username with password \"$user_password\"; \ grant admin to $username with admin option;"TLCP 安全模式(带密码):
./kwbase sql --certs-dir=/usr/local/kaiwudb/certs --tlcp --host=127.0.0.1:$local_port \ -e "create user $username with password \"$user_password\"; \ grant admin to $username with admin option;"
使用数据库部署用户登录数据库并配置许可证。
登录数据库。
- 非安全模式(不带密码):
./kwbase sql --host=127.0.0.1:$local_port --insecure- TLS 安全模式(带密码):
./kwbase sql --certs-dir=/usr/local/kaiwudb/certs --host=127.0.0.1:$local_port- TLCP 安全模式(带密码):
./kwbase sql --certs-dir=/usr/local/kaiwudb/certs --tlcp --host=127.0.0.1:$local_port复制许可证文件中的许可证码,通过以下命令将许可证码添加到已启动的数据库中。
SET CLUSTER SETTING cluster.license = '<your-license-code>';其中,
your-license-code应替换为从.lic文件中提取的许可证码。有关cluster.license参数的详细信息,参见集群实时参数。(可选)查看许可证信息。
SHOW LICENSE;
部署完成后,可通过 kwbase CLI 、KaiwuDB JDBC或 KaiwuDB 开发者中心连接并管理 KaiwuDB。