【 使用环境 】测试环境
【 OB or 其他组件 】oceanbase、obproxy、ob-deploy、obclient
【 使用版本 】
oceanbase-ce-3.1.4-10000092022071511.el7.x86_64
obproxy-ce-3.2.3-2.el7.x86_64
ob-deploy-1.5.0-12.el7.x86_64
obclient-2.0.2-3.el7.x86_64
【问题描述】通过OBD搭建3节点集群环境,集群启动正常,通过obclient 使用2881端口访问正常,但使用2883端口访问报错
【复现路径】问题出现前后相关操作
//OBD 启动和初始化集群
[admin@jsv77-191 log]$ obd cluster start obce-3zones
Get local repositories ok
Search plugins ok
Open ssh connection ok
Load cluster param plugin ok
Check before start observer ok
[WARN] (10.10.77.242) clog and data use the same disk (/dbdata)
[WARN] (10.10.77.243) clog and data use the same disk (/dbdata)
[WARN] (10.10.77.245) clog and data use the same disk (/dbdata)
Check before start obproxy ok
Start observer ok
observer program health check ok
Connect to observer ok
Initialize cluster
Cluster bootstrap ok
Wait for observer init ok
+------------------------------------------------+
| observer |
+--------------+---------+------+-------+--------+
| ip | version | port | zone | status |
+--------------+---------+------+-------+--------+
| 10.10.77.242 | 3.1.4 | 2881 | zone1 | active |
| 10.10.77.243 | 3.1.4 | 2881 | zone2 | active |
| 10.10.77.245 | 3.1.4 | 2881 | zone3 | active |
+--------------+---------+------+-------+--------+
Start obproxy ok
obproxy program health check ok
Connect to obproxy ok
Initialize cluster
+------------------------------------------------+
| obproxy |
+--------------+------+-----------------+--------+
| ip | port | prometheus_port | status |
+--------------+------+-----------------+--------+
| 10.10.77.242 | 2883 | 2884 | active |
| 10.10.77.243 | 2883 | 2884 | active |
| 10.10.77.245 | 2883 | 2884 | active |
+--------------+------+-----------------+--------+
obce-3zones running
[admin@jsv77-191 log]$
//通过2881端口访问,正常
[admin@jsv77-191 ~]$ obclient -h 10.10.77.242 -uroot@sys -P2881 -proot -c -A oceanbase
Welcome to the OceanBase. Commands end with ; or \g.
Your OceanBase connection id is 3221534012
Server version: 5.7.25 OceanBase 3.1.4 (r10000092022071511-b4bfa011ceaef428782dcb65ae89190c40b78c2f) (Built Jul 15 2022 11:45:14)
Copyright (c) 2000, 2022, OceanBase and/or its affiliates. All rights reserved.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
obclient [oceanbase]>
//通过2883端口访问,异常
[admin@jsv77-191 ~]$ obclient -h 10.10.77.242 -uroot@sys#obce-3zones -P2883 -pproxyro -c -A oceanbase
ERROR 2013 (HY000): Lost connection to MySQL server at 'reading authorization packet', system error: 11
[admin@jsv77-191 ~]$
【问题现象及影响】
通过2883端口无法访问集群
【附件】obce-3zones.yaml配置文件
[admin@jsv77-191 ~]$ cat obce-3zones.yaml
## Only need to configure when remote login is required
user:
username: admin
password: admin
key_file: /home/admin/.ssh/id_rsa.pub
port: 22
# timeout: ssh connection timeout (second), default 30
oceanbase-ce:
servers:
- name: obce01
# Please don't use hostname, only IP can be supported
ip: 10.10.77.242
- name: obce02
ip: 10.10.77.243
- name: obce03
ip: 10.10.77.245
global:
# Please set devname as the network adaptor's name whose ip is in the setting of severs.
# if set severs as "127.0.0.1", please set devname as "lo"
# if current ip is 192.168.1.10, and the ip's network adaptor's name is "eth0", please use "eth0"
devname: eth0
cluster_id: 1
# please set memory limit to a suitable value which is matching resource.
memory_limit: 8G # The maximum running memory for an observer
system_memory: 3G # The reserved system memory. system_memory is reserved for general tenants. The default value is 30G.
stack_size: 512K
cpu_count: 16
cache_wash_threshold: 1G
__min_full_resource_pool_memory: 268435456
workers_per_cpu_quota: 10
schema_history_expire_time: 1d
# The value of net_thread_count had better be same as cpu's core number.
net_thread_count: 4
major_freeze_duty_time: Disable
minor_freeze_times: 10
enable_separate_sys_clog: 0
enable_merge_by_turn: FALSE
datafile_disk_percentage: 20 # The percentage of the data_dir space to the total disk space. This value takes effect only when datafile_size is 0. The default value is 90.
syslog_level: WARN # System log level. The default value is INFO.
enable_syslog_wf: false # Print system logs whose levels are higher than WARNING to a separate log file. The default value is true.
enable_syslog_recycle: true # Enable auto system log recycling or not. The default value is false.
max_syslog_file_count: 10 # The maximum number of reserved log files before enabling auto recycling. The default value is 0.
# observer cluster name, consistent with obproxy's cluster_name
appname: obce-3zones
root_password: root
proxyro_password: proxyro
obce01:
mysql_port: 2881 # External port for OceanBase Database. The default value is 2881. DO NOT change this value after the cluster is started.
rpc_port: 2882 # Internal port for OceanBase Database. The default value is 2882. DO NOT change this value after the cluster is started.
# The working directory for OceanBase Database. OceanBase Database is started under this directory. This is a required field.
home_path: /home/admin/oceanbase-ce
# The directory for data storage. The default value is $home_path/store.
data_dir: /dbdata/data
# The directory for clog, ilog, and slog. The default value is the same as the data_dir value.
redo_dir: /dbdata/redo
zone: zone1
obce02:
mysql_port: 2881 # External port for OceanBase Database. The default value is 2881. DO NOT change this value after the cluster is started.
rpc_port: 2882 # Internal port for OceanBase Database. The default value is 2882. DO NOT change this value after the cluster is started.
# The working directory for OceanBase Database. OceanBase Database is started under this directory. This is a required field.
home_path: /home/admin/oceanbase-ce
# The directory for data storage. The default value is $home_path/store.
data_dir: /dbdata/data
# The directory for clog, ilog, and slog. The default value is the same as the data_dir value.
redo_dir: /dbdata/redo
zone: zone2
obce03:
mysql_port: 2881 # External port for OceanBase Database. The default value is 2881. DO NOT change this value after the cluster is started.
rpc_port: 2882 # Internal port for OceanBase Database. The default value is 2882. DO NOT change this value after the cluster is started.
# The working directory for OceanBase Database. OceanBase Database is started under this directory. This is a required field.
home_path: /home/admin/oceanbase-ce
# The directory for data storage. The default value is $home_path/store.
data_dir: /dbdata/data
# The directory for clog, ilog, and slog. The default value is the same as the data_dir value.
redo_dir: /dbdata/redo
zone: zone3
obproxy-ce:
# Set dependent components for the component.
# When the associated configurations are not done, OBD will automatically get the these configurations from the dependent components.
depends:
- oceanbase-ce
servers:
- 10.10.77.242
- 10.10.77.243
- 10.10.77.245
global:
listen_port: 2883 # External port. The default value is 2883.
prometheus_listen_port: 2884 # The Prometheus port. The default value is 2884.
home_path: /home/admin/obproxy
# oceanbase root server list
# format: ip:mysql_port;ip:mysql_port. When a depends exists, OBD gets this value from the oceanbase-ce of the depends.
rs_list: 10.10.77.242:2881;10.10.77.243:2881;10.10.77.245:2881
enable_cluster_checkout: false
# observer cluster name, consistent with oceanbase-ce's appname. When a depends exists, OBD gets this value from the oceanbase-ce of the depends.
cluster_name: obce-3zones
skip_proxy_sys_private_check: true
enable_strict_kernel_release: false
obproxy_sys_password: obproxy
observer_sys_password: observer
[admin@jsv77-191 ~]$