【 使用环境 】测试环境
【 OB or 其他组件 】使用obd组件进行安装部署
【 使用版本 】4.2.2版本
【问题描述】清晰明确描述问题
测试环境,测试环境系统是centos7.x版本,安装单机版的oceanbase4.2.2,无法正常启动.
【复现路径】问题出现前后相关操作
【附件及日志】推荐使用OceanBase敏捷诊断工具obdiag收集诊断信息,详情参见链接(右键跳转查看):
====== 01.配置文件=========
ip和密码做了一些修改,应该不影响排查问题.
[root@centos7 xtocbase]# cat config.yaml
user:
username: root
password: m1xxxx@12#$
port: 22831
oceanbase-ce:
version: 4.2.4.0
release: 100000082024070810.el7
package_hash: 7dc8b049b3283ef4660cdf6e3cfa24f81e9d2a78
143.50.97.36:
zone: zone1
servers:
- 143.50.97.36
global:
appname: xtocbase
root_password: TGB5tgb
mysql_port: 2881
rpc_port: 2882
home_path: /data/xtocbase/oceanbase
cluster_id: 1726110669
enable_syslog_recycle: true
enable_syslog_wf: false
max_syslog_file_count: 4
memory_limit: 30G
datafile_size: 31872M
system_memory: 12G
log_disk_size: 147G
cpu_count: 16
datafile_maxsize: 167G
datafile_next: 17069M
ocp_agent_monitor_password: JOtyyJoQof
proxyro_password: MaC2YZDsJq
ocp_root_password: LpmaG0qKlO
ocp_meta_password: THo1CGdHaR
obproxy-ce:
version: 4.2.3.0
package_hash: 0490ebc04220def8d25cb9cac9ac61a4efa6d639
release: 3.el7
servers: - 143.50.97.36
global:
prometheus_listen_port: 2884
listen_port: 2883
home_path: /data/xtocbase/obproxy
obproxy_sys_password: 5fBuzVR6fc
skip_proxy_sys_private_check: true
enable_strict_kernel_release: false
enable_cluster_checkout: false
rs_list: 143.50.97.36:2881
cluster_name: xtocbase
observer_root_password: TGB5tgb
143.50.97.36:
proxy_id: 5734
client_session_id_version: 2
depends: - oceanbase-ce
obagent:
version: 4.2.2
package_hash: 19739a07a12eab736aff86ecf357b1ae660b554e
release: 100000042024011120.el7
servers: - 143.50.97.36
global:
monagent_http_port: 9088
mgragent_http_port: 9089
home_path: /data/xtocbase/obagent
http_basic_auth_password: W95Mv7oUf
ob_monitor_status: active
depends: - oceanbase-ce
ocp-express:
version: 4.2.2
package_hash: 09ffcf156d1df9318a78af52656f499d2315e3f7
release: 100000022024011120.el7
servers: - 143.50.97.36
global:
port: 9180
home_path: /data/xtocbase/ocpexpress
admin_passwd: (6k(FjM5
ocp_root_password: 4#BkX6+l
memory_size: 752M
depends: - obagent
- oceanbase-ce
- obproxy-ce
=========02.执行过程内容=============
[root@centos7 xtocbase]# obd cluster start xtocbase --strict-check
Get local repositories ok
Search plugins ok
Load cluster param plugin ok
Open ssh connection ok
Check before start observer — Logging error —
Traceback (most recent call last):
File “logging/init.py”, line 1088, in emit
UnicodeEncodeError: ‘ascii’ codec can’t encode characters in position 121-129: ordinal not in range(128)
Call stack:
File “obd.py”, line 2278, in
File “obd.py”, line 310, in do_command
File “obd.py”, line 310, in do_command
File “obd.py”, line 246, in do_command
File “obd.py”, line 938, in _do_command
File “core.py”, line 2065, in start_cluster
File “core.py”, line 2144, in _start_cluster
File “core.py”, line 197, in call_plugin
File “_plugin.py”, line 348, in call
File “_plugin.py”, line 305, in _new_func
File “/root/.obd/plugins/oceanbase-ce/4.2.2.0/start_check.py”, line 266, in start_check
remote_pid = client.execute_command(‘cat %s’ % remote_pid_path).stdout.strip()
File “_plugin.py”, line 225, in new_method
File “_stdio.py”, line 899, in func_wrapper
File “ssh.py”, line 503, in execute_command
File “_stdio.py”, line 899, in func_wrapper
File “ssh.py”, line 475, in _execute_command
File “_stdio.py”, line 760, in verbose
File “_stdio.py”, line 717, in log
File “_stdio.py”, line 725, in _cache_log
File “_stdio.py”, line 737, in _log
File “logging/init.py”, line 1512, in log
File “log.py”, line 36, in _log
File “logging/init.py”, line 1589, in _log
File “logging/init.py”, line 1599, in handle
File “logging/init.py”, line 1661, in callHandlers
File “logging/init.py”, line 954, in handle
File “logging/handlers.py”, line 71, in emit
File “logging/init.py”, line 1187, in emit
File “logging/init.py”, line 1093, in emit
Message: ‘cat: /data/xtocbase/oceanbase/run/observer.pid: \u6ca1\u6709\u90a3\u4e2a\u6587\u4ef6\u6216\u76ee\u5f55’
Arguments: ()
Check before start observer ok
Check before start obproxy — Logging error —
Traceback (most recent call last):
File “logging/init.py”, line 1088, in emit
UnicodeEncodeError: ‘ascii’ codec can’t encode characters in position 77-80: ordinal not in range(128)
Call stack:
File “obd.py”, line 2278, in
File “obd.py”, line 310, in do_command
File “obd.py”, line 310, in do_command
File “obd.py”, line 246, in do_command
File “obd.py”, line 938, in _do_command
File “core.py”, line 2065, in start_cluster
File “core.py”, line 2144, in _start_cluster
File “core.py”, line 197, in call_plugin
File “_plugin.py”, line 348, in call
File “_plugin.py”, line 305, in _new_func
File “/root/.obd/plugins/obproxy-ce/4.2.3/start_check.py”, line 118, in start_check
if client.execute_command(‘ls /proc/%s/fd’ % remote_pid):
File “_plugin.py”, line 225, in new_method
File “_stdio.py”, line 899, in func_wrapper
File “ssh.py”, line 503, in execute_command
File “_stdio.py”, line 899, in func_wrapper
File “ssh.py”, line 475, in _execute_command
File “_stdio.py”, line 760, in verbose
File “_stdio.py”, line 717, in log
File “_stdio.py”, line 725, in _cache_log
File “_stdio.py”, line 737, in _log
File “logging/init.py”, line 1512, in log
File “log.py”, line 36, in _log
File “logging/init.py”, line 1589, in _log
File “logging/init.py”, line 1599, in handle
File “logging/init.py”, line 1661, in callHandlers
File “logging/init.py”, line 954, in handle
File “logging/handlers.py”, line 71, in emit
File “logging/init.py”, line 1187, in emit
File “logging/init.py”, line 1093, in emit
Message: ‘ls: \u65e0\u6cd5\u8bbf\u95ee/proc/4001/fd: \u6ca1\u6709\u90a3\u4e2a\u6587\u4ef6\u6216\u76ee\u5f55’
Arguments: ()
Check before start obproxy ok
Check before start obagent — Logging error —
Traceback (most recent call last):
File “logging/init.py”, line 1088, in emit
UnicodeEncodeError: ‘ascii’ codec can’t encode characters in position 120-128: ordinal not in range(128)
Call stack:
File “obd.py”, line 2278, in
File “obd.py”, line 310, in do_command
File “obd.py”, line 310, in do_command
File “obd.py”, line 246, in do_command
File “obd.py”, line 938, in _do_command
File “core.py”, line 2065, in start_cluster
File “core.py”, line 2144, in _start_cluster
File “core.py”, line 197, in call_plugin
File “_plugin.py”, line 348, in call
File “_plugin.py”, line 305, in _new_func
File “/root/.obd/plugins/obagent/1.3.0/start_check.py”, line 171, in start_check
remote_pid = client.execute_command(“cat %s” % remote_pid_path).stdout.strip()
File “_plugin.py”, line 225, in new_method
File “_stdio.py”, line 899, in func_wrapper
File “ssh.py”, line 503, in execute_command
File “_stdio.py”, line 899, in func_wrapper
File “ssh.py”, line 475, in _execute_command
File “_stdio.py”, line 760, in verbose
File “_stdio.py”, line 717, in log
File “_stdio.py”, line 725, in _cache_log
File “_stdio.py”, line 737, in _log
File “logging/init.py”, line 1512, in log
File “log.py”, line 36, in _log
File “logging/init.py”, line 1589, in _log
File “logging/init.py”, line 1599, in handle
File “logging/init.py”, line 1661, in callHandlers
File “logging/init.py”, line 954, in handle
File “logging/handlers.py”, line 71, in emit
File “logging/init.py”, line 1187, in emit
File “logging/init.py”, line 1093, in emit
Message: ‘cat: /data/xtocbase/obagent/run/ob_agentd.pid: \u6ca1\u6709\u90a3\u4e2a\u6587\u4ef6\u6216\u76ee\u5f55’
Arguments: ()
Check before start obagent ok
Check before start ocp-express — Logging error —
Traceback (most recent call last):
File “logging/init.py”, line 1088, in emit
UnicodeEncodeError: ‘ascii’ codec can’t encode characters in position 125-133: ordinal not in range(128)
Call stack:
File “obd.py”, line 2278, in
File “obd.py”, line 310, in do_command
File “obd.py”, line 310, in do_command
File “obd.py”, line 246, in do_command
File “obd.py”, line 938, in _do_command
File “core.py”, line 2065, in start_cluster
File “core.py”, line 2144, in _start_cluster
File “core.py”, line 197, in call_plugin
File “_plugin.py”, line 348, in call
File “_plugin.py”, line 305, in _new_func
File “/root/.obd/plugins/ocp-express/4.2.2/start_check.py”, line 345, in start_check
remote_pid = client.execute_command(‘cat %s’ % remote_pid_path).stdout.strip()
File “_plugin.py”, line 225, in new_method
File “_stdio.py”, line 899, in func_wrapper
File “ssh.py”, line 503, in execute_command
File “_stdio.py”, line 899, in func_wrapper
File “ssh.py”, line 475, in _execute_command
File “_stdio.py”, line 760, in verbose
File “_stdio.py”, line 717, in log
File “_stdio.py”, line 725, in _cache_log
File “_stdio.py”, line 737, in _log
File “logging/init.py”, line 1512, in log
File “log.py”, line 36, in _log
File “logging/init.py”, line 1589, in _log
File “logging/init.py”, line 1599, in handle
File “logging/init.py”, line 1661, in callHandlers
File “logging/init.py”, line 954, in handle
File “logging/handlers.py”, line 71, in emit
File “logging/init.py”, line 1187, in emit
File “logging/init.py”, line 1093, in emit
Message: ‘cat: /data/xtocbase/ocpexpress/run/ocp-express.pid: \u6ca1\u6709\u90a3\u4e2a\u6587\u4ef6\u6216\u76ee\u5f55’
Arguments: ()
Check before start ocp-express ok
Start observer — Logging error —
Traceback (most recent call last):
File “logging/init.py”, line 1088, in emit
UnicodeEncodeError: ‘ascii’ codec can’t encode characters in position 121-129: ordinal not in range(128)
Call stack:
File “obd.py”, line 2278, in
File “obd.py”, line 310, in do_command
File “obd.py”, line 310, in do_command
File “obd.py”, line 246, in do_command
File “obd.py”, line 938, in _do_command
File “core.py”, line 2065, in start_cluster
File “core.py”, line 2159, in _start_cluster
File “core.py”, line 197, in call_plugin
File “_plugin.py”, line 348, in call
File “_plugin.py”, line 305, in _new_func
File “/root/.obd/plugins/oceanbase-ce/4.2.2.0/start.py”, line 154, in start
remote_pid = client.execute_command(‘cat %s’ % remote_pid_path).stdout.strip()
File “_plugin.py”, line 225, in new_method
File “_stdio.py”, line 899, in func_wrapper
File “ssh.py”, line 503, in execute_command
File “_stdio.py”, line 899, in func_wrapper
File “ssh.py”, line 475, in _execute_command
File “_stdio.py”, line 760, in verbose
File “_stdio.py”, line 717, in log
File “_stdio.py”, line 725, in _cache_log
File “_stdio.py”, line 737, in _log
File “logging/init.py”, line 1512, in log
File “log.py”, line 36, in _log
File “logging/init.py”, line 1589, in _log
File “logging/init.py”, line 1599, in handle
File “logging/init.py”, line 1661, in callHandlers
File “logging/init.py”, line 954, in handle
File “logging/handlers.py”, line 71, in emit
File “logging/init.py”, line 1187, in emit
File “logging/init.py”, line 1093, in emit
Message: ‘cat: /data/xtocbase/oceanbase/run/observer.pid: \u6ca1\u6709\u90a3\u4e2a\u6587\u4ef6\u6216\u76ee\u5f55’
Arguments: ()
Start observer ok
— Logging error —
Traceback (most recent call last):
File “logging/init.py”, line 1088, in emit
UnicodeEncodeError: ‘ascii’ codec can’t encode characters in position 120-128: ordinal not in range(128)
Call stack:
File “obd.py”, line 2278, in
File “obd.py”, line 310, in do_command
File “obd.py”, line 310, in do_command
File “obd.py”, line 246, in do_command
File “obd.py”, line 938, in _do_command
File “core.py”, line 2065, in start_cluster
File “core.py”, line 2159, in _start_cluster
File “core.py”, line 197, in call_plugin
File “_plugin.py”, line 348, in call
File “_plugin.py”, line 305, in _new_func
File “/root/.obd/plugins/oceanbase-ce/4.2.2.0/start.py”, line 229, in start
obshell_pid = client.execute_command(‘cat %s’ % obshell_pid_path).stdout.strip()
File “_plugin.py”, line 225, in new_method
File “_stdio.py”, line 899, in func_wrapper
File “ssh.py”, line 503, in execute_command
File “_stdio.py”, line 899, in func_wrapper
File “ssh.py”, line 475, in _execute_command
File “_stdio.py”, line 760, in verbose
File “_stdio.py”, line 717, in log
File “_stdio.py”, line 725, in _cache_log
File “_stdio.py”, line 737, in _log
File “logging/init.py”, line 1512, in log
File “log.py”, line 36, in _log
File “logging/init.py”, line 1589, in _log
File “logging/init.py”, line 1599, in handle
File “logging/init.py”, line 1661, in callHandlers
File “logging/init.py”, line 954, in handle
File “logging/handlers.py”, line 71, in emit
File “logging/init.py”, line 1187, in emit
File “logging/init.py”, line 1093, in emit
Message: ‘cat: /data/xtocbase/oceanbase/run/obshell.pid: \u6ca1\u6709\u90a3\u4e2a\u6587\u4ef6\u6216\u76ee\u5f55’
Arguments: ()
observer program health check ok
obshell program health check ok
Connect to observer x
[ERROR] OBD-1006: Failed to connect to oceanbase-ce
See https://www.oceanbase.com/product/ob-deployer/error-codes .
Trace ID: fa6c315e-a6f3-11ef-a823-00505682cd6e
If you want to view detailed obd logs, please run: obd display-trace fa6c315e-a6f3-11ef-a823-00505682cd6e
==============执行的截图内容===========
希望能给出解决方案啊.关键在于已经部署运行了好几周,有一天发现居然莫名其妙地oceanbase服务停了,然后就开始重启oceanbase,不断地重启和修改,都启动不成功.