创建resource unit/resource pool正常,create tenant失败:ERROR 4009 (58030): IO error
资源配额还有吗
新建的resource unit: create resource unit monitor_unit memory_size ‘2g’, max_cpu 4;
新建的resource pool: create resource pool monitor_pool unit=‘monitor_unit’, unit_num=1, zone_list=(‘zone1’, ‘zone2’, ‘zone3’) ;
这样有问题吗
ERROR 4009 (58030 ) : IO error
- OceanBase 错误码:4009
- 错误原因:READ 或 WRITE 等 IO 相关的系统调用失败。
cat /etc/sysctl.conf 看下
[test2024@obrd.32c.vd2-s2c0-n0 /home/test2024]
$cat /etc/sysctl.conf
# sysctl settings are defined through files in
# /usr/lib/sysctl.d/, /run/sysctl.d/, and /etc/sysctl.d/.
#
# Vendors settings live in /usr/lib/sysctl.d/.
# To override a whole file, create a new file with the same in
# /etc/sysctl.d/ and put new settings there. To override
# only specific settings, add a file with a lexically later
# name in /etc/sysctl.d/ and put new settings there.
#
# For more information, see sysctl.conf(5) and sysctl.d(5).
/etc/sysctl.conf 文件下面全是注释,没有内容
我权限不够,没有办法写配置文件,之前也没有配置过这个文件,可以创建租户的来着
老师,执行的sql和报错麻烦帮忙截图发下
- ob版本是多少?
部署的方式是什么呢?
建议还是改一下sysctl.conf文件
ob版本是4.2.1.3;
部署方式使用的是 OBD 白屏部署
还有其他办法可以解决吗,之前好像还可以正常创建用户
disk是否合标
老师帮忙确认下:
1.具体OB的详细版本
2.执行语句对应的sql_audit记录文本
3.以及当时创建租户失败的时间段的OB日志
老师,帮忙取下集群的基本信息:
一、需要您提供给我们集群相关基础信息(如部分已经提供则无需继续提供):
1,root@sys租户登录集群,执行SQL提供下结果:
1),select svr_ip,zone,with_rootserver,status,block_migrate_in_time,start_service_time,stop_time,build_version from oceanbase.__all_server order by zone;
2),select tenant_id,tenant_name,primary_zone,compatibility_mode from oceanbase.__all_tenant;
3),show parameters like ‘%syslog_level%’;
4),show parameters like ‘%syslog_io_bandwidth_limit%’
5),select count(*),tenant_id,zone_list,unit_count from oceanbase.__all_resource_pool group by tenant_id,zone_list,unit_count;
2,登录OB任意一台主机,执行lsblk提供下结果
3,登录OB任意一台主机,执行lscpu | grep Architecture 提供下结果
然后我看报错是io报错,您帮忙取下observer日志和rs节点的rs日志看下(要取对应时间点的完整的日志)。
ob日志帮忙取下对应svr_ip节点的:
SET ob_enable_trace_log=‘ON’;
复现sql
SHOW TRACE; --得到trace_id
根据trace_id过滤下trace日志
老师再帮忙看下ocp上这个集群有什么告警吗
好的好的!我尽快试一下保存日志
前面几步操作结果的截图:
创建租户失败截图
select svr_ip,zone, with_rootserver, status, block_migrate_in_time, start_service_time, stop_time, build_version from oceanbase.__all_server order by zone;截图:
select tenant_id,tenant_name,primary_zone,compatibility_mode from oceanbase.__all_tenant; 截图
show parameters like ‘%syslog_level%’; 截图:
show parameters like ‘%syslog_io_bandwidth_limit%’ 截图:
select count(*),tenant_id,zone_list,unit_count from oceanbase.__all_resource_pool group by tenant_id,zone_list,unit_count; 截图:
lsblk结果:
lscpu结果:
最后
set ob_enable_show_trace=1; 然后创建租户,show trace 时trace log没有看到输出
为啥这样取不到log:
obclient [(none)]> set ob_enable_show_trace=1;
Query OK, 0 rows affected (0.000 sec)
obclient [(none)]> create tenant monitor resource_pool_list = (‘monitor_pool’), zone_list(‘zone1’, ‘zone2’, ‘zone3’), PRIMARY_ZONE=RANDOM set variables ob_compatibility_mode=‘mysql’, ob_tcp_invited_nodes=’%’ ;
ERROR 4009 (58030): IO error
obclient [(none)]> show trace ;
Empty set (0.011 sec)
obclient [(none)]>