当前位置: 首页 > news >正文

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

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

使用OBD 启动OCP报如下错误

[admin@obd ~]$ 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 x
[ERROR] ocp-server-ce-py_script_start_check-4.2.1 RuntimeError: 'tenant_name'
See https://www.oceanbase.com/product/ob-deployer/error-codes .
Trace ID: 02d391f8-9a97-11ee-8034-000c291a63cd
If you want to view detailed obd logs, please run: obd display-trace 02d391f8-9a97-11ee-8034-000c291a63cd

查看报错日志:

使用  more /home/admin/.obd/log/obd 或报错日志中的 obd display-trace 02d391f8-9a97-11ee-8034-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

相关文章:

  • 【C++11特性篇】C++11中新增的initializer_list——初始化的小利器(2)
  • AcWing 1250. 格子游戏(并查集)
  • HarmonyOS鸿蒙应用开发——数据持久化Preferences
  • mongodb之mongoTemplate基本操作
  • Java 基础学习(十二)文本I/O、日期与时间API
  • 搭建消息时光机:深入探究RabbitMQ_recent_history_exchange在Spring Boot中的应用【RabbitMQ实战 二】
  • Qt/C++视频监控安卓版/多通道显示视频画面/录像存储/视频播放安卓版/ffmpeg安卓
  • ToolLLM model 以及LangChain AutoGPT Xagent在调用外部工具Tools的表现对比浅析
  • 深度学习记录--矩阵维数
  • 塑料检查井配套开发了注塑成型的井盖、井筒、井座
  • 详细教程 - 从零开发 Vue 鸿蒙harmonyOS应用 第一节
  • 基础算法(1):排序(1):选择排序
  • 云原生之深入解析如何在Kubernetes中快速启用Cgroup V2支持
  • 【教学类-06-16】20231213 (按比例抽题+乱序or先加再减后乘)X-Y之间“加法减法乘法+-×混合题”
  • Yaml语法解析
  • [译]如何构建服务器端web组件,为何要构建?
  • 78. Subsets
  • Android组件 - 收藏集 - 掘金
  • Essential Studio for ASP.NET Web Forms 2017 v2,新增自定义树形网格工具栏
  • Linux编程学习笔记 | Linux IO学习[1] - 文件IO
  • Markdown 语法简单说明
  • Spring思维导图,让Spring不再难懂(mvc篇)
  • SQLServer之创建显式事务
  • Vue小说阅读器(仿追书神器)
  • 彻底搞懂浏览器Event-loop
  • 利用jquery编写加法运算验证码
  • 腾讯优测优分享 | 你是否体验过Android手机插入耳机后仍外放的尴尬?
  • 微信小程序:实现悬浮返回和分享按钮
  • 我与Jetbrains的这些年
  • 一起来学SpringBoot | 第十篇:使用Spring Cache集成Redis
  • [Shell 脚本] 备份网站文件至OSS服务(纯shell脚本无sdk) ...
  • 说说我为什么看好Spring Cloud Alibaba
  • ​queue --- 一个同步的队列类​
  • ​Spring Boot 分片上传文件
  • #if和#ifdef区别
  • #mysql 8.0 踩坑日记
  • #QT(一种朴素的计算器实现方法)
  • #Z2294. 打印树的直径
  • #微信小程序:微信小程序常见的配置传值
  • (06)金属布线——为半导体注入生命的连接
  • (4)通过调用hadoop的java api实现本地文件上传到hadoop文件系统上
  • (ZT)薛涌:谈贫说富
  • (初研) Sentence-embedding fine-tune notebook
  • (附源码)springboot炼糖厂地磅全自动控制系统 毕业设计 341357
  • (免费领源码)python#django#mysql公交线路查询系统85021- 计算机毕业设计项目选题推荐
  • (三)docker:Dockerfile构建容器运行jar包
  • (十七)devops持续集成开发——使用jenkins流水线pipeline方式发布一个微服务项目
  • (转)机器学习的数学基础(1)--Dirichlet分布
  • (转载)CentOS查看系统信息|CentOS查看命令
  • .bat批处理(一):@echo off
  • .FileZilla的使用和主动模式被动模式介绍
  • .net core 6 使用注解自动注入实例,无需构造注入 autowrite4net
  • .NET Core WebAPI中使用swagger版本控制,添加注释
  • .NET 设计模式—适配器模式(Adapter Pattern)
  • .net 重复调用webservice_Java RMI 远程调用详解,优劣势说明