[ERROR] ocp-server-ce-py_script_start_check-4.2.1 RuntimeError: ‘tenant_name‘

2023-12-13 07:04

本文主要是介绍[ERROR] ocp-server-ce-py_script_start_check-4.2.1 RuntimeError: ‘tenant_name‘,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Oceanbase 安装成功后关闭OCP,在重新启动时报错

使用OBD 启动OCP报如下错误

[admin@obd 4.2.1]$ obd cluster start ocp 
Get local repositories ok
Search plugins ok
Open ssh connection ok
Load cluster param plugin ok
Check before start ocp-server ok
[WARN] OBD-4302: (192.168.7.20) not enough memory. (Free: 3.9G, Need: 4.0G)

Start ocp-server x
[ERROR] Keyboard Interrupt
Trace ID: 57f92516-98e5-11ee-a89f-000c291a63cd
If you want to view detailed obd logs, please run: obd display-trace 57f92516-98e5-11ee-a89f-000c291a63cd

产看报错日志:

[2023-12-12 19:23:23.870] [dbde7188-98e0-11ee-9459-000c291a63cd] [ERROR] ocp-server-ce-py_script_start_check-4.2.1 RuntimeError: 'tenant_name'
[2023-12-12 19:23:23.871] [dbde7188-98e0-11ee-9459-000c291a63cd] [ERROR] Traceback (most recent call last):
[2023-12-12 19:23:23.871] [dbde7188-98e0-11ee-9459-000c291a63cd] [ERROR]   File "core.py", line 1673, in start_cluster
[2023-12-12 19:23:23.871] [dbde7188-98e0-11ee-9459-000c291a63cd] [ERROR]   File "core.py", line 1743, in _start_cluster
[2023-12-12 19:23:23.871] [dbde7188-98e0-11ee-9459-000c291a63cd] [ERROR]   File "core.py", line 184, in call_plugin
[2023-12-12 19:23:23.871] [dbde7188-98e0-11ee-9459-000c291a63cd] [ERROR]   File "_plugin.py", line 324, in __call__
[2023-12-12 19:23:23.871] [dbde7188-98e0-11ee-9459-000c291a63cd] [ERROR]   File "_plugin.py", line 286, in _new_func
[2023-12-12 19:23:23.871] [dbde7188-98e0-11ee-9459-000c291a63cd] [ERROR]   File "/home/admin/.obd/plugins/ocp-server-ce/4.2.1/start_check.py", line 318, in start_check
[2023-12-12 19:23:23.871] [dbde7188-98e0-11ee-9459-000c291a63cd] [ERROR]     error('tenant', err.EC_OCP_SERVER_TENANT_ALREADY_EXISTS.format({"tenant_name":monitor_tenant}))
[2023-12-12 19:23:23.871] [dbde7188-98e0-11ee-9459-000c291a63cd] [ERROR]   File "_errno.py", line 50, in format
[2023-12-12 19:23:23.871] [dbde7188-98e0-11ee-9459-000c291a63cd] [ERROR] KeyError: 'tenant_name'
[2023-12-12 19:23:23.872] [dbde7188-98e0-11ee-9459-000c291a63cd] [ERROR] 

处理方法:

编辑 /home/admin/.obd/plugins/ocp-server-ce/4.2.1/start_check.py  Python文件 318 上方的skip_create_tenant强制赋值为True,并注释掉如下两行,保存文件。

304                 #skip_create_tenant = 'False'
305                 #skip_create_tenant = getattr(options, "skip_create_tenant", "False")

vi /home/admin/.obd/plugins/ocp-server-ce/4.2.1/start_check.py

303                 # tenant check
304                 #skip_create_tenant = 'False'
305                 #skip_create_tenant = getattr(options, "skip_create_tenant", "False")
306                 skip_create_tenant = 'True'
307                 if skip_create_tenant == 'False':
308                     sql = "select * from oceanbase.DBA_OB_TENANTS where TENANT_NAME = %s"
309                     meta_tenant = server_config.get('ocp_meta_tenant')['tenant_name']
310                     meta_max_cpu = server_config['ocp_meta_tenant'].get('max_cpu', 2)
311                     meta_memory_size = server_config['ocp_meta_tenant'].get('memory_size', '2G')
312                     if server_config.get('ocp_monitor_tenant'):
313                         monitor_user = server_config.get('ocp_monitor_username', 'monitor_user')
314                         monitor_tenant = server_config['ocp_monitor_tenant']['tenant_name']
315                         monitor_max_cpu = server_config['ocp_monitor_tenant'].get('max_cpu', 2)
316                         monitor_memory_size = server_config['ocp_monitor_tenant'].get('memory_size',     '4G')
317                         res = cursor.fetchone(sql, [monitor_tenant])
318                         if res:
319                             error('tenant', err.EC_OCP_SERVER_TENANT_ALREADY_EXISTS.format({"tenant_    name":monitor_tenant}))
320                     res = cursor.fetchone(sql, [meta_tenant])
321                     if res:
322                         error('tenant', err.EC_OCP_SERVER_TENANT_ALREADY_EXISTS.format({"tenant_name    ":meta_tenant}))
323                     break

然后 输入如下命令可以正常启动了

 obd cluster start ocp

这篇关于[ERROR] ocp-server-ce-py_script_start_check-4.2.1 RuntimeError: ‘tenant_name‘的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/487521

相关文章

MySQL 中的服务器配置和状态详解(MySQL Server Configuration and Status)

《MySQL中的服务器配置和状态详解(MySQLServerConfigurationandStatus)》MySQL服务器配置和状态设置包括服务器选项、系统变量和状态变量三个方面,可以通过... 目录mysql 之服务器配置和状态1 MySQL 架构和性能优化1.1 服务器配置和状态1.1.1 服务器选项

JavaScript中的reduce方法执行过程、使用场景及进阶用法

《JavaScript中的reduce方法执行过程、使用场景及进阶用法》:本文主要介绍JavaScript中的reduce方法执行过程、使用场景及进阶用法的相关资料,reduce是JavaScri... 目录1. 什么是reduce2. reduce语法2.1 语法2.2 参数说明3. reduce执行过程

查询SQL Server数据库服务器IP地址的多种有效方法

《查询SQLServer数据库服务器IP地址的多种有效方法》作为数据库管理员或开发人员,了解如何查询SQLServer数据库服务器的IP地址是一项重要技能,本文将介绍几种简单而有效的方法,帮助你轻松... 目录使用T-SQL查询方法1:使用系统函数方法2:使用系统视图使用SQL Server Configu

SQL Server数据库迁移到MySQL的完整指南

《SQLServer数据库迁移到MySQL的完整指南》在企业应用开发中,数据库迁移是一个常见的需求,随着业务的发展,企业可能会从SQLServer转向MySQL,原因可能是成本、性能、跨平台兼容性等... 目录一、迁移前的准备工作1.1 确定迁移范围1.2 评估兼容性1.3 备份数据二、迁移工具的选择2.1

JavaScript中的isTrusted属性及其应用场景详解

《JavaScript中的isTrusted属性及其应用场景详解》在现代Web开发中,JavaScript是构建交互式应用的核心语言,随着前端技术的不断发展,开发者需要处理越来越多的复杂场景,例如事件... 目录引言一、问题背景二、isTrusted 属性的来源与作用1. isTrusted 的定义2. 为

SQL Server使用SELECT INTO实现表备份的代码示例

《SQLServer使用SELECTINTO实现表备份的代码示例》在数据库管理过程中,有时我们需要对表进行备份,以防数据丢失或修改错误,在SQLServer中,可以使用SELECTINT... 在数据库管理过程中,有时我们需要对表进行备份,以防数据丢失或修改错误。在 SQL Server 中,可以使用 SE

Python调用另一个py文件并传递参数常见的方法及其应用场景

《Python调用另一个py文件并传递参数常见的方法及其应用场景》:本文主要介绍在Python中调用另一个py文件并传递参数的几种常见方法,包括使用import语句、exec函数、subproce... 目录前言1. 使用import语句1.1 基本用法1.2 导入特定函数1.3 处理文件路径2. 使用ex

Window Server创建2台服务器的故障转移群集的图文教程

《WindowServer创建2台服务器的故障转移群集的图文教程》本文主要介绍了在WindowsServer系统上创建一个包含两台成员服务器的故障转移群集,文中通过图文示例介绍的非常详细,对大家的... 目录一、 准备条件二、在ServerB安装故障转移群集三、在ServerC安装故障转移群集,操作与Ser

使用JavaScript操作本地存储

《使用JavaScript操作本地存储》这篇文章主要为大家详细介绍了JavaScript中操作本地存储的相关知识,文中的示例代码讲解详细,具有一定的借鉴价值,有需要的小伙伴可以参考一下... 目录本地存储:localStorage 和 sessionStorage基本使用方法1. localStorage

使用JavaScript将PDF页面中的标注扁平化的操作指南

《使用JavaScript将PDF页面中的标注扁平化的操作指南》扁平化(flatten)操作可以将标注作为矢量图形包含在PDF页面的内容中,使其不可编辑,DynamsoftDocumentViewer... 目录使用Dynamsoft Document Viewer打开一个PDF文件并启用标注添加功能扁平化