尽管OceanBase最新已经发布到2.2.30版本,从2.x开始兼容oracle语法,但本着学习态度,本系列计划从1.4版本开始摸索OceanBase,一步一步学习OceanBase。
当然网络上也有很多官方资料,特别是蚂蚁金服OceanBase解决方案架构师–庆涛,网上有他很多直播视频或者个人公众号可以学习。
本文是作者自己实操体验,供大家参考。
一、安装规划
1.1、服务器规划:
一般需要 4 台服务器,其中:
1台部署 OCP 平台
3台部署最小规模的 OceanBase 1-1-1 集群,每个 zone 一台机器。
这里采用手动安装OB集群,不通过OCP来安装配置,因此只需要3台服务器,且按最小资源规模来安装
1.4版本: 16cpu、32G内存以上 --如果绕开OCP,最小安装8cpu+16G内存 作者在4cpu+16g内存也搭建成功了,超cpu使用了(-0.5)
2.2版本: 32cpu、128G内存以上 --如果绕开OCP,内存至少64G --暂时还未尝试,后面慢慢折腾
IP:
4cpu+16g内存
ob01: 192.168.0.151
ob02: 192.168.0.43
ob03: 192.168.0.41
端口
ob集群内RPC服务端口 2882
observer客户端端口 2881
obproxy客户端端口 2883
安装用户 admin
软件安装目录 /home/admin/oceanbase
集群名称 obdemo
1.2、磁盘规划:
建议采用LVM管理,划分不同lv。
(1)、数据盘 /data/1
数据盘承载了基线数据,物理上只有一个基线数据文件block_file,在安装目录 store/sstable 下。
通过 OBServer 进程启动时一次性创建,大小根据启动参数 datafile_disk_percentage 采用磁盘预分配策略,默认值为 95%,创建后无法调整大小。
(2)、事务日志盘 /data/log1
事务日志盘包含多个固定大小的小文件,位于安装目录 store/{clog,ilog,slog},按需自动创建和清除,磁盘写到 80% 会触发自清除逻辑。
大小要求:内存大小3-4倍
(3)、OceanBase软件安装盘: /home
大小建议100G+
OceanBase 的 rpm 包安装目录在/home/admin/oceanbase 下,其中基线数据文件和事务日志文件会通过软连接指向上述的两个独立磁盘,
还有另外一个不断增长的文件是 OB 运行日志,在安装目录 log下。
OB 进程本身无法自删除运行日志,需要定时任务或运维脚本完成删除逻辑。
如:
/dev/vdb1 99G 61M 94G 1% /data/1
/dev/vdc1 99G 61M 94G 1% /data/log1
/dev/vdd1 99G 61M 94G 1% /home
注意 :
确保 /data/1 和 /data/log1 目录为空
/data/1 目录的磁盘已使用必须率低于 4%
1.3、操作系统要求:
Red Hat Enterprise Linux Server release 7.2 (内核 Linux version 3.10.0)
CentOS Linux release 7.2 (内核 Linux version 3.10.0)
二、准备安装环境
在所有observer机器上操作。
2.1、操作系统检查
(1)、操作系统版本\CPU\内存\磁盘等检查
(2)、配置YUM源
(3).操作系统软件环境
Java环境: JDK 1.8+
Python环境: Python 2.7+
mysql客户端: mariadb
# rpm --query --queryformat "%{NAME}-%{VERSION}.%{RELEASE} (%{ARCH})\n" tree lvm2 lsof net-tools ntp ntpdate python mariadb
2.2、安装ob软件依赖包
# rpm --query --queryformat "%{NAME}-%{VERSION}.%{RELEASE} (%{ARCH})\n" expat expect gcc gcc-c++ glibc libgcc libaio libcurl openssl openldap
2.3、内核参数配置,修改/etc/sysctl.conf文件
# vi /etc/sysctl.conf
# for oceanbase
fs.aio-max-nr = 65536
net.core.somaxconn = 2048
net.core.netdev_max_backlog = 10000
net.core.rmem_default = 16777216
net.core.wmem_default = 16777216
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.ip_local_port_range = 3500 65535
net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
net.ipv4.tcp_syncookies = 0
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216
net.ipv4.tcp_max_syn_backlog = 16384
net.ipv4.tcp_fin_timeout = 15
net.ipv4.tcp_max_syn_backlog = 16384
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_slow_start_after_idle=0
vm.swappiness = 0
kernel.core_pattern = /data/1/core-%e-%p-%t
vm.min_free_kbytes = 2097152
2.4、用户会话设置,修改/etc/security/limits.conf文件
# vi /etc/security/limits.conf
* soft nofile 655350
* hard nofile 655350
* soft stack 20480
* hard stack 20480
* soft nproc 655360
* hard nproc 655360
* soft core unlimited
* hard core unlimited
2.5、关闭防火墙和SELinux
# systemctl disable firewalld
# systemctl stop firewalld
# systemctl status firewalld
# vi /etc/selinux/config 文件 , 修改 SELINUX=disabled
2.6、配置ntp时钟同步
OceanBase是个分布式数据库,要求各个observer节点的时间保持同步,时间误差控制在50ms以内。
节点时间误差偏大时,后面初始化OceanBase集群会失败,或者现有的OceanBase集群会出现异常。
节点间的时间同步要靠Linux的NTP同步来保证。
检查时间误差使用clockdiff命令。
clockdiff 192.168.0.151
clockdiff 192.168.0.43
clockdiff 192.168.0.41
ntp配置示例:
(1).NTP Server 端: 192.168.0.151
# vi /etc/ntp.conf
server 127.127.1.0
# service ntpd restart
# chkconfig ntpd on
# ntpq -p
(2).NTP client 端: 192.168.0.43\192.168.0.41
# ntpdate 192.168.0.151
# vi /etc/ntp.conf
server 192.168.0.151
# service ntpd restart
# chkconfig ntpd on
# ntpq -p
2.7、创建安装用户
(1).创建 OceanBase 的安装用户 admin
# groupadd admin
# useradd -d /home/admin -s /bin/bash -m admin -g admin
#
(2).设置密码
# passwd admin
(3).目录权限设置与检查
检查/data/1 /data/log1 目录 admin 用户有写权限
# ls –al /data
drwxr-xr-x 3 admin admin 4096 Aug 6 16:01 1
drwxr-xr-x 3 admin admin 4096 Aug 6 16:01 log1
若 admin 用户无权限,则以 root 用户执行如下命令
chown -R admin:admin /data/1
chown -R admin:admin /data/log1
# tree /data
/data
├── 1
│ └── lost+found
└── log1
└── lost+found
4 directories, 0 files
#
三、 手动安装OceanBase集群
由于服务器配置不足,这里不安装OCP,不通过OCP运维管理平台来创建OB集群,而是通过手工安装方式来创建OB集群。
root登录到每个OBServer服务器,进行如下操作:
3.0、清理老的OB(第一次不用,方便后面安装ob集群有问题时,重新做)
su - admin
kill -9 `pidof observer`
sleep 3
/bin/rm -rf /data/1/obdemo
/bin/rm -rf /data/log1/obdemo
/bin/rm -rf /home/admin/oceanbase/store/obdemo /home/admin/oceanbase/log/* /home/admin/oceanbase/etc/*config*
ps -ef|grep observer
df -h |egrep home\|data
--*/
3.1、上传OB安装包,并解压
手动安装ob1.4集群,只需要两个 RPM 文件: obproxy 和 oceanbase 。
# unzip ocp-release.zip
# tar zxvf ocp-setup.tar.gz
# cd ocp_yh
# ls -lrth obproxy-1.3.3-1506155.el7.x86_64.rpm oceanbase-1.4.60-1571952.el7.x86_64.rpm
3.2、安装OB软件
RPM安装oceanbase软件会安装在目录/home/admin/oceanbase下。
# rpm -ivh oceanbase-1.4.60-1571952.el7.x86_64.rpm
# tree /home/admin/
/home/admin/
└── oceanbase
├── bin
│ ├── dump_syms_6u
│ ├── dump_syms_7u
│ ├── import_time_zone_info.py
│ ├── minidump.sh
│ ├── minidump_stackwalk_6u
│ ├── minidump_stackwalk_7u
│ ├── mysql_tzinfo_to_sql
│ ├── ob_admin
│ └── observer
├── etc
│ ├── fill_help_tables-ob.sql
│ ├── upgrade_checker.py
│ ├── upgrade_post.py
│ └── upgrade_pre.py
└── lib
4 directories, 13 files
#
admin登录到每个OBServer服务器,进行如下操作:
3.3、admin用户登录,初始化目录
# su - admin
mkdir -p /data/1/obdemo/{etc3,sort_dir,sstable}
mkdir -p /data/log1/obdemo/{clog,etc2,ilog,slog,oob_clog}
mkdir -p /home/admin/oceanbase/store/obdemo
for t in {etc3,sort_dir,sstable};do ln -s /data/1/obdemo/$t /home/admin/oceanbase/store/obdemo/$t; done
for t in {clog,etc2,ilog,slog,oob_clog};do ln -s /data/log1/obdemo/$t /home/admin/oceanbase/store/obdemo/$t; done
3.4、启动OBserver进程
到每个节点的admin用户下,启动observer进程,注意修改 zone, IP, 网卡名字。
参数里指定数据文件的大小、内存的大小,以方便个别环境资源不足想精确控制observer对资源的占用。具体说明如下:
-i 后接网卡名称。如果有2个网卡,要指定业务IP所在的网卡名称。
-P RPC端口
-p 客户端连接断口
-z 后接Zone名称,可以自定义。Zone是逻辑机房概念,三台机器分属于不同机房,不能重复。
-d 后跟集群主目录,除集群名字obdemo外,其他不要变动。
-r 后跟一组服务器信息,格式是ip:RPC端口:客户端连接端口,如ip:2882:2881,分号分割,表示rootservice list信息。三台机器参数一致。
-c 后跟集群ID,一组数字,可以自定义。不同集群不要重复即可。
-n 后跟集群名称,可以自定义,不同集群名称不要重复即可。
-o 后跟集群参数,需要根据实际情况设置。system_memory 指定OB内部保留内存,默认是30G,机器内存比较少的情况下把这个调小,影响就是可能在性能测试时有内存不足问题。
datafile_size 指定OceanBase数据文件sstable的大小(一次性初始化),根据/data/1/ 可用空间评估,建议不少于100G,同时又保留一些剩余空间。
如果/data/1跟/data/log1本身就是一个文件系统(共用一个盘),那么务必保证留给/data/log1的空间大小是内存的2-4倍。config_additional_dir指定参数文件的冗余目录。
如:-o "cpu_count=6,memory_limit=13G,datafile_size=100G,config_additional_dir=/data/data/1/obdemo/etc3;/data/log/log1/obdemo/etc2"
# su - admin
$ cd /home/admin/oceanbase
zone1:
$ bin/observer -i eth0 -P 2882 -p 2881 -z zone1 -d /home/admin/oceanbase/store/obdemo -r '192.168.0.151:2882:2881;192.168.0.41:2882:2881;192.168.0.43:2882:2881' -c 20200806 -n obdemo
devname: eth0
rpc port: 2882
mysql port: 2881
zone: zone1
data_dir: /home/admin/oceanbase/store/obdemo
rs list: 192.168.0.151:2882:2881;192.168.0.41:2882:2881;192.168.0.43:2882:2881
cluster id: 20200806
appname: obdemo
[2020-08-06 09:34:06.301255] ERROR [LIB] pidfile_test (utility.cpp:1260) [9766][Y0-0000000000000000] [lt=0] fid file doesn't exist(pidfile="run/obse
rver.pid") BACKTRACE:0x2de73a9 0x2d7f9f7 0x2deb6c1 0x51c424 0x7f3e227c6505 0x53abc5[admin@ecs-ob-0001 oceanbase]$
$ ps -ef|grep observer
admin 9767 1 29 09:34 ? 00:00:09 bin/observer -i eth0 -P 2882 -p 2881 -z zone1 -d /home/admin/oceanbase/store/obdemo -r 192.168.0.151:2882:2881;192.168.0.41:2882:2881;192.168.0.43:2882:2881 -c 20200806 -n obdemo
admin 10267 9410 0 09:34 pts/0 00:00:00 grep --color=auto observer
$
$ cat log/observer.log
备注:启动ob进程时,报错fid file doesn't exist(pidfile="run/observer.pid"),如果ob进程启动了,此错误可以忽略。
zone2:
$ bin/observer -i eth0 -P 2882 -p 2881 -z zone2 -d /home/admin/oceanbase/store/obdemo -r '192.168.0.151:2882:2881;192.168.0.41:2882:2881;192.168.0.43:2882:2881' -c 20200806 -n obdemo
$ ps -ef|grep observer
$ cat log/observer.log
zone3:
$ bin/observer -i eth0 -P 2882 -p 2881 -z zone3 -d /home/admin/oceanbase/store/obdemo -r '192.168.0.151:2882:2881;192.168.0.41:2882:2881;192.168.0.43:2882:2881' -c 20200806 -n obdemo
$ ps -ef|grep observer
$ cat log/observer.log
3.5、初始化OB集群
3个节点的OBServer进程都启动后,开始集群初始化bootstrap,这一步至关重要,成败在此一举。
使用mysql命令登录任一节点,然后执行bootstrap集群初始化命令。
$ mysql -h192.168.0.151 -uroot -P2881 -p
-bash: mysql: command not found
[admin@ecs-ob-0001 oceanbase]$ mysql -h192.168.0.151 -uroot -P2881 -p
Enter password: --不要输入密码,直接回车
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MySQL connection id is 2147483648
Server version: 5.6.25 OceanBase 1.4.60 (r1571952-758a58e85846f9efb907b1c14057204cb6353846) (Built Mar 9 2018 14:32:07)
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MySQL [(none)]> set session ob_query_timeout=1000000000;
Query OK, 0 rows affected (0.00 sec)
MySQL [(none)]> alter system bootstrap ZONE 'zone1' SERVER '192.168.0.151:2882', ZONE 'zone2' SERVER '192.168.0.43:2882', ZONE 'zone3' SERVER '192.168.0.41:2882';
Query OK, 0 rows affected (15.62 sec)
MySQL [(none)]>
大概十几秒后集群初始化成功。
注意:
如果这一步初始化失败报错了,其原因很可能就是三节点observer进程启动参数有不对、observer相关目录权限不对、日志目录空间不足一定比例(跟数据目录合用了大目录,空间被数据目录占用了)、三节点时间不同步、节点内存资源不足等等。
请先排查这些问题点后,然后清理OB(从3.0开始)从头开始。
3.6、验证OB集群初始化成功
使用mysql命令登录任一节点,注意登录命令的username格式需要变化一下。ob集群默认会有个sys租户,该sys租户的管理员用户为root@sys,密码默认为空,初始化成功后请修改密码。
$ mysql -h192.168.0.151 -uroot@sys -P2881 -p -c -A
Enter password: --不要输入密码,直接回车
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MySQL connection id is 2147549199
Server version: 5.6.25 OceanBase 1.4.60 (r1571952-758a58e85846f9efb907b1c14057204cb6353846) (Built Mar 9 2018 14:30:13)
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MySQL [none]> select version();
+-----------+
| version() |
+-----------+
| 1.4.60 |
+-----------+
1 row in set (0.00 sec)
MySQL [none]>
MySQL [none]> show databases;
+--------------------+
| Database |
+--------------------+
| oceanbase |
| information_schema |
| mysql |
| test |
+--------------------+
4 rows in set (0.01 sec)
MySQL [none]>
能看到数据库列表里有oceanbase即可。
到此OB集群安装完成。
四、配置OB集群
4.1、修改sys租户管理员密码
ob集群默认会有个sys租户,集群初始化成功后,修改默认sys租户管理员root@sys的密码。
$ mysql -h192.168.0.151 -uroot@sys -P2881 -p -c -A
Enter password: --不要输入密码,直接回车
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MySQL connection id is 2147549184
Server version: 5.6.25 OceanBase 1.4.60 (r1571952-758a58e85846f9efb907b1c14057204cb6353846) (Built Mar 9 2018 14:32:07)
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MySQL [none]> alter user root identified by 'admin123'; --修改默认sys租户管理员用户root@sys的密码。
Query OK, 0 rows affected (0.01 sec)
MySQL [none]> exit
Bye
$
退出使用密码登录验证,查看集群资源信息。
$ mysql -h192.168.0.151 -uroot@sys -P2881 -padmin123 -c -A
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MySQL connection id is 2147549188
Server version: 5.6.25 OceanBase 1.4.60 (r1571952-758a58e85846f9efb907b1c14057204cb6353846) (Built Mar 9 2018 14:32:07)
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MySQL [none]> select version();
+-----------+
| version() |
+-----------+
| 1.4.60 |
+-----------+
1 row in set (0.00 sec)
MySQL [none]>
MySQL [none]> show databases;
+--------------------+
| Database |
+--------------------+
| oceanbase |
| information_schema |
| mysql |
| test |
+--------------------+
4 rows in set (0.01 sec)
MySQL [none]>
4.2、集群初始化参数配置
如果 /home/admin 目录空间很紧张,则设置运行日志滚动输出,根据实际情况修改。
mysql -h127.1 -uroot@sys -P2881 -p -A
-- observer log自清理设置
alter system set enable_syslog_recycle=true;
alter system set max_syslog_file_count=10;
show parameters where name in ('enable_syslog_recycle', 'max_syslog_file_count');
4.3、查看OB集群信息
$ mysql -h127.1 -uroot@sys -P2881 -p -A oceanbase
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MySQL connection id is 2147549193
Server version: 5.6.25 OceanBase 1.4.60 (r1571952-758a58e85846f9efb907b1c14057204cb6353846) (Built Mar 9 2018 14:32:07)
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MySQL [oceanbase]>
查看OB集群所有节点信息
MySQL [oceanbase]> select zone,svr_ip,svr_port,inner_port,with_rootserver,status,gmt_create from __all_server order by zone, svr_ip;
+-------+---------------+----------+------------+-----------------+--------+----------------------------+
| zone | svr_ip | svr_port | inner_port | with_rootserver | status | gmt_create |
+-------+---------------+----------+------------+-----------------+--------+----------------------------+
| zone1 | 192.168.0.151 | 2882 | 2881 | 1 | active | 2020-08-06 09:47:37.623847 |
| zone2 | 192.168.0.43 | 2882 | 2881 | 0 | active | 2020-08-06 09:47:37.604907 |
| zone3 | 192.168.0.41 | 2882 | 2881 | 0 | active | 2020-08-06 09:47:37.613459 |
+-------+---------------+----------+------------+-----------------+--------+----------------------------+
3 rows in set (0.01 sec)
MySQL [oceanbase]>
查看OB集群所有租户信息,oceanbase集群初始化成功后,会有一个默认sys租户
MySQL [oceanbase]> select tenant_id, tenant_name, zone_list, locality ,gmt_modified from __all_tenant;
+-----------+-------------+-------------------+---------------------------------------------+----------------------------+
| tenant_id | tenant_name | zone_list | locality | gmt_modified |
+-----------+-------------+-------------------+---------------------------------------------+----------------------------+
| 1 | sys | zone1;zone2;zone3 | FULL{1}@zone1, FULL{1}@zone2, FULL{1}@zone3 | 2020-08-06 09:47:37.830451 |
+-----------+-------------+-------------------+---------------------------------------------+----------------------------+
1 row in set (0.00 sec)
MySQL [oceanbase]>
查看OceanBase集群所有节点可用资源情况
MySQL [oceanbase]> select zone, svr_ip, svr_port,inner_port, cpu_total, cpu_assigned,
-> round(mem_total/1024/1024/1024) mem_total_gb,
-> round(mem_assigned/1024/1024/1024) mem_ass_gb,
-> round(disk_total/1024/1024/1024) disk_total_gb,
-> unit_num, substr(build_version,1,6) version
-> from __all_virtual_server_stat
-> order by zone, svr_ip, inner_port;
+-------+---------------+----------+------------+-----------+--------------+--------------+------------+---------------+----------+---------+
| zone | svr_ip | svr_port | inner_port | cpu_total | cpu_assigned | mem_total_gb | mem_ass_gb | disk_total_gb | unit_num | version |
+-------+---------------+----------+------------+-----------+--------------+--------------+------------+---------------+----------+---------+
| zone1 | 192.168.0.151 | 2882 | 2881 | 2 | 2.5 | 10 | 2 | 83 | 1 | 1.4.60 |
| zone2 | 192.168.0.43 | 2882 | 2881 | 2 | 2.5 | 10 | 2 | 83 | 1 | 1.4.60 |
| zone3 | 192.168.0.41 | 2882 | 2881 | 2 | 2.5 | 10 | 2 | 83 | 1 | 1.4.60 |
+-------+---------------+----------+------------+-----------+--------------+--------------+------------+---------------+----------+---------+
3 rows in set (0.00 sec)
MySQL [oceanbase]>
查看集群资源池具体使用情况
MySQL [oceanbase]> select t1.name resource_pool_name, t2.`name` unit_config_name, t2.max_cpu, t2.min_cpu,
-> round(t2.max_memory/1024/1024/1024) max_mem_gb, round(t2.min_memory/1024/1024/1024) min_mem_gb,
-> t3.unit_id, t3.zone, concat(t3.svr_ip,':',t3.`svr_port`) observer,t4.tenant_id, t4.tenant_name
-> from __all_resource_pool t1 join __all_unit_config t2 on (t1.unit_config_id=t2.unit_config_id)
-> join __all_unit t3 on (t1.`resource_pool_id` = t3.`resource_pool_id`)
-> left join __all_tenant t4 on (t1.tenant_id=t4.tenant_id)
-> order by t1.`resource_pool_id`, t2.`unit_config_id`, t3.unit_id
-> ;
+--------------------+------------------+---------+---------+------------+------------+---------+-------+--------------------+-----------+-------------+
| resource_pool_name | unit_config_name | max_cpu | min_cpu | max_mem_gb | min_mem_gb | unit_id | zone | observer | tenant_id | tenant_name |
+--------------------+------------------+---------+---------+------------+------------+---------+-------+--------------------+-----------+-------------+
| sys_pool | sys_unit_config | 5 | 2.5 | 3 | 2 | 1 | zone1 | 192.168.0.151:2882 | 1 | sys |
| sys_pool | sys_unit_config | 5 | 2.5 | 3 | 2 | 2 | zone2 | 192.168.0.43:2882 | 1 | sys |
| sys_pool | sys_unit_config | 5 | 2.5 | 3 | 2 | 3 | zone3 | 192.168.0.41:2882 | 1 | sys |
+--------------------+------------------+---------+---------+------------+------------+---------+-------+--------------------+-----------+-------------+
3 rows in set (0.00 sec)
MySQL [oceanbase]>
查看OB集群资源单元unit配置情况
MySQL [oceanbase]> select unit_config_id,name,max_cpu,min_cpu,round(max_memory/1024/1024/1024) max_mem_gb,
-> round(min_memory/1024/1024/1024) min_mem_gb, round(max_disk_size/1024/1024/1024) max_disk_size_gb
-> from __all_unit_config
-> order by unit_config_id;
+----------------+-----------------+---------+---------+------------+------------+------------------+
| unit_config_id | name | max_cpu | min_cpu | max_mem_gb | min_mem_gb | max_disk_size_gb |
+----------------+-----------------+---------+---------+------------+------------+------------------+
| 1 | sys_unit_config | 5 | 2.5 | 3 | 2 | 83 |
+----------------+-----------------+---------+---------+------------+------------+------------------+
1 row in set (0.00 sec)
MySQL [oceanbase]>
由于是采用最小资源来安装ob1.4集群,4cpu+16g内存。
从上面可以看出,默认sys租户使用了2.5-5个CPU,2-3G内存。大概还可以分配 0个CPU,8G内存。
如果资源不够,在进行扩容时可能会出错。
ALTER resource unit sys_unit_config max_cpu=3;
ERROR 4624 (HY000): machine resource is not enough to hold a new unit
本次手动最小化OB集群(1-1-1)的安装配置,到此结束。
一步一步学习OceanBase系列,本篇是第一篇
下一篇准备安装obproxy反向代理连接ob集群。。
下次实操继续更新~~~~~
最后修改时间:2020-09-15 18:40:17
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。