英文版 | 中文版
OBShell (OceanBase Shell) 是 OceanBase 社区 为运维人员 & 开发人员提供的免安装、开箱即用的本地集群命令行工具。OBShell 支持集群运维,同时基于 OBServer 对外提供运维管理 API,实现了不同生态产品对同一集群统一管理,从而方便第三方产品工具对接 OceanBase,同时降低了 OceanBase 集群管理难度和成本。
-
免安装
OBShell 不需要额外安装。您通过任何方式安装 OceanBase-CE 数据库后都可以在任何一个节点的工作目录的 bin 目录下看到 OBShell 可执行文件。
-
运维能力
OBShell 作为开箱即用的本地集群命令行工具,支持 OceanBase 集群运维,包括集群部署、集群启动、集群停止、集群状态查询、集群节点扩容、集群升级等功能。更多功能正在开发中。
-
开放 AIP
OBShell 基于 OBServer 对外提供运维管理 API,实现了不同生态产品对同一集群统一管理,从而方便第三方产品工具对接 OceanBase,降低了 OceanBase 集群管理难度和成本。
-
应急运维
OBShell 支持集群应急运维。即使 OceanBase 集群全部宕机,也可一键拉起并自动接管(如果需要)集群。
更多信息请参考 OBShell。
可以执行下面的命令快速 部署一个 3 副本 OceanBase 数据库实例。
-
在每个节点 启动 OBShell。
# obshell 位于 oceanbase-ce 包中 /home/admin/oceanbase/bin/obshell # 在 xxx.xxx.xxx.1 上执行 /home/admin/oceanbase/bin/obshell agent start --ip xxx.xxx.xxx.1 # 在 xxx.xxx.xxx.2 上执行 /home/admin/oceanbase/bin/obshell agent start --ip xxx.xxx.xxx.2 # 在 xxx.xxx.xxx.3 上执行 /home/admin/oceanbase/bin/obshell agent start --ip xxx.xxx.xxx.3
-
Single Agent 成为 Master Agent,并设置 Server 级配置
# Master Agent 领导集群执行初始化任务 /home/admin/oceanbase/bin/obshell cluster join -s "xxx.xxx.xxx.1:2886" -z zone1 -p 2881 -P 2882 -o 'memory_limit=16G,system_memory=8G,log_disk_size=24G,datafile_size=24G'
-
其他 Single Agent 成为 Follower Agent
# Follower Agent 加入 Master Agent, 跟随 Master Agent完成初始化任务 # 在 xxx.xxx.xxx.2 上执行 /home/admin/oceanbase/bin/obshell cluster join -s "xxx.xxx.xxx.1:2886" -z zone2 -p 2881 -P 2882 -o 'memory_limit=16G,system_memory=8G,log_disk_size=24G,datafile_size=24G' # 在 xxx.xxx.xxx.3 上执行 /home/admin/oceanbase/bin/obshell cluster join -s "xxx.xxx.xxx.1:2886" -z zone3 -p 2881 -P 2882 -o 'memory_limit=16G,system_memory=8G,log_disk_size=24G,datafile_size=24G'
-
设置集群级配置并初始化集群
# 在任一节点上执行 /home/admin/oceanbase/bin/obshell cluster init -n ob-test --rp ***
-
连接 OceanBase 集群
obclient -hxxx.xxx.xxx.1 -uroot@sys -P2881 -A -p ***
更多信息参考 OBShell 集群命令组。
参考 OBShell 编译手册 了解如何编译 OBShell。
每个 OBShell Agent 管理一个 observer。整个集群的运维操作由一个 OBShell Agent 发起,多个 OBShell Agent 共同协调推进。
OBShell 根据 Apache 公共许可证版本 2 获得许可。有关详细信息,请参阅 LICENSE 文件。
有以下加入社区的方法:
- 中文论坛
- Slack Workspace
- Ask on Stack Overflow
- 钉钉群: 33254054 (二维码)
- 微信群 (添加微信小助手: OBCE666)