OceanBase 官网近期更新了 企业版的产品下载,相关的文档也有发布。大家有兴趣可以下载看看。本文主要是提供一些使用指引,减少大家试用过程中不必要的试错。

有关 OceanBase 社区版的各种消息猜测,请大家在6月1日观察看 OceanBase 3.0 数据库峰会 ( https://www.oceanbase.com/bignews/index )。

产品下载说明

OceanBase 官网产品下载地址:https://www.oceanbase.com/softwareCenter/enterprise
 。

  • OceanBase Database

OceanBase 数据库本质上是一个单进程软件,是 OceanBase 产品的核心。可以提供 RPM 包,支持 x86_64
 和 aarch64
 两种平台版本。OceanBase 软件运行操作系统支持 Redhat
 \ CentOS
 7序列,国产系统 UOS
、中标麒麟V7 等。可以部署在物理机、虚拟机、各个云厂商服务器上。

  • OBProxy

OBProxy 也是一个单进程软件,也是 OceanBase 产品的核心,本质是 OceanBase 访问的反向代理。注意,这个跟分库分表数据库中间件产品里的代理节点是不一样的,OBProxy只做 SQL 路由转发,不做运算。

  • OCP
    ,又名 OceanBase Cloud Platform

OCP 本质上是 OceanBase 自动化运维平台,是一个 Java 开发的 Web 程序。支持 Docker 部署。官网提供的是 OCP 的 Docker 镜像。但是光有这个镜像并不能部署 OCP。因为 OCP 作为一个 PaaS 产品,还需要一个元数据库,那是另外一个 OB 集群。这里有个 “先有鸡还是先有蛋” 问题,所以 OCP 的元数据库 OB 使用 Docker 部署。详情可以参见《自动化运维产品的命门——元数据库》。

  • OMS
    ,又名 OceanBase Migration Service

OMS 是 OceanBase 迁移平台(用于 ORACLE/MYSQL/DB2 跟 OB,以及OB 跟 Kafka/DataHub等之间数据同步),也是一个 Java 开发的 Web 程序。支持 Docker 部署。官网提供的是 OMS 的 Docker 镜像。跟 OCP 同理,OMS 也需要一个元数据库。通常我们用 OCP 的元数据库集群(obcluster
)里创建一个 MySQL 租户(实例)给 OMS 用,也可以单独用一个 MySQL 数据库实例。不过 OMS 只支持跟 OB 有关的数据迁移和同步,所以还依赖 OCP 的 API 。

  • ODC
    ,又名 OceanBase Developer Center

ODC 是 OceanBase 的官方客户端,有两种形态:Web 程序 和 客户端图形化程序。分别支持 Docker 部署和 安装包安装。

OceanBase 租户兼容性支持 MySQL 和 ORACLE 两种,OceanBase 支持 JDBC 驱动连接。如果是连接 OB 的 MySQL 租户,可以用传统的 MySQL 客户端工具,使用 MySQL 的驱动(推荐 5.1.46
),或者使用 OB 的驱动(下载地址在阿里云:https://help.aliyun.com/document_detail/212815.html
)。

官网提供的是 ODC 的 Docker 镜像下载地址, ODC 的图形化客户端下载地址在阿里云:https://help.aliyun.com/document_detail/212816.html
。企业环境里推荐部署 ODC Web 版本,便于所有开发访问,集中管控权限。ODC Web 版本的元数据库可以放在 OCP 元数据库集群里(新建MySQL租户)。

  • OAT
    ,又名 OceanBase Admin Toolkit

OAT 主要是进一步方便 OCP、OMS、ODC 的自动化部署,是 Java 开发的 Web 程序。官网提供的是 OAT 的 Docker 镜像下载。

产品部署计划

部署计划取决于您有多少机器资源。官网各个产品文档对机器的条件要求都比较高方便自动化部署。但这些条件不是必要条件。

所有的机器都需要做初始化。 OAT
 可以对 OCP
OMS
OB
 机器做初始化,这个对机器的CPU、内存和磁盘要求比较高且具体。如果机器条件不满足,就不要尝试使用 OAT
 了。

此时可以手动初始化各个机器环境,OB 也提供了一个软件包 t-antman-oceanbase
 用于部分自动初始化机器配置。初始化问题常出在磁盘分区划分、时间同步、admin 用户、机器ssh 访问方法等。

 

如果您想部署在个人笔记本上(4C16G)以上,Linux操作系统,可以只下载 OceanBase 和 OBProxy 两个软件 ,加上 obclient
(官网没提供,可以到 OB 的钉钉群里索取。本公众号回复消息:加钉钉 。)。部署方法就是启动 observer
 软件,指定一些参数即可。部署方法参考:《OceanBase 独立部署高级玩法二 :2C8G版
》。单机模拟多少个节点取决于笔记本或电脑的内存大小。不要尝试安装 OCP
OMS
OAT
 之类,因为资源不够。

如果您只有一台 16C64G
 的虚拟机,可以手动部署 OceanBase 单副本或者三副本(单机模拟多节点),方法同上。16C64G
 的虚拟机勉强也可以部署 OCP
,看看 OCP
界面还行,但是没有额外的机器部署 OB 集群可以管理。可能会因为资源太少出现一些问题。所以不推荐。

如果您有两台 16C64G
 以上 的服务器,可以部署一个 OCP 和一个单副本 OB 集群。如果有三台服务器,可以部署一个 OCP 和 一个单副本 OB 集群(该 Zone 有 2 个节点)。

OB的所有版本软件并不区分单副本和多副本,那是使用方法的问题。3台机器,可以部署一个三副本集群(1-1-1
),也可以部署一个单副本集群( Zone 内有3节点,在线加机器)。

如果要部署 OMS,并且 OCP 物理机 CPU 和 内存资源足够的话,可以把 OMS 跟 OCP 部署在一起。或者独立服务器部署。

如果要部署 ODC Web版本,可以部署在 OCP 服务器上,或者其他服务器上。

如果所有机器资源都很充足,那就先部署 OAT,然后通过 OAT 部署 OCP、OMS、ODC。

产品部署问题

OB 集群可以独立部署,这个过程并不复杂。OCP 对 OB 的部署做了自动化处理, OAT 又对 OCP 的部署做了自动化。自动化运维的特点就是依赖标准化。当机器、网络环境都很标准的时候,自动化部署会很顺利,久而久之,运维人员对于部署的细节原理就不怎么关注。当机器、网络环境不标准的时候,自动化部署可能会报错。

尽管如此,自动化部署的每一个任务都有自己的日志,Docker的运行也有日志,这些日志不一定很好懂。此时需要从里面找有用的线索(看得懂的日志,比如说磁盘空间满、表不存在、数据库不可访问等)。这些线索会对问题排查有很大帮助。

欢迎在 OB 钉钉群反馈问题。反馈部署问题的时候,请提供过程说明,报错截图和详细日志。

最后,GOOD LUCK AND HAVE FUN ! 

其他参考

  • OceanBase 2.2 安装部署问题解答

  • OceanBase 运维平台(OCP)使用基础:Docker技术

  • OceanBase 独立部署高级玩法一

  • OceanBase 独立部署高级玩法二 :2C8G版

  • OceanBase 2.x体验:手动搭建OceanBase集群

  • OceanBase 在 AWS 上部署最佳实践

Logo

了解最新的技术洞察和前沿趋势,参与 OceanBase 定期举办的线下活动,与行业开发者互动交流

更多推荐