群通知
2025 年3 月 28 日 09:16
#1
【 使用环境 】 测试环境
【 OB or 其他组件 】 ocp
【 使用版本 】4.3.4
【问题描述】
【复现路径】重新尝试odb web还是报错
使用命令部署ocp启动报错
【附件及日志】
2025-03-28 09:13:14,349 ERROR new_internal_server_error_exception (response_utils.py:48) [1f322f3cf2404f17a1a102ed72e39394] got internal server error exception: Traceback (most recent call last):
File “service/handler/rsa_handler.py”, line 38, in decrypt_private_key
File “base64.py”, line 87, in b64decode
binascii.Error: Incorrect padding
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File “service/api/v1/metadb.py”, line 39, in create_metadb_connection
File “service/handler/metadb_handler.py”, line 892, in create_connection_info
File “service/handler/rsa_handler.py”, line 44, in decrypt_private_key
Exception: rsa decryption an exception occurred: Incorrect padding
【SOP系列 22 】——故障诊断第一步(自助诊断和诊断信息收集)
【备注】基于 LLM 和开源文档 RAG 的论坛小助手已开放测试,在发帖时输入 [@论坛小助手 ] 即可召唤小助手,欢迎试用!
论坛小助手
2025 年3 月 28 日 09:17
#3
根据您提供的信息,部署 OCP 时 MetaDB 连接失败的问题可能与以下原因相关。以下是排查和解决问题的步骤:
1. 检查 MetaDB 配置信息是否正确
根据文档片段 4 的描述,OCP 使用 MetaDB 存储元信息及监控数据。在填写 OceanBase 数据库连接信息时,请确保以下参数配置无误:
主机 IP :数据库访问 IP 地址。
访问端口 :数据库连接访问端口(默认为 2883)。
访问账号 :仅支持 sys
租户,默认为 root@sys
,也可以自定义。
访问密码 :对应访问账号的密码。
如果配置有误,请返回配置页面进行修改,并重新验证连接。
2. 验证 MetaDB 是否可正常连接
根据文档片段 9 的描述,可以通过命令行工具 obclient
测试 MetaDB 的连接性。执行以下命令:
obclient -h <MetaDB_IP> -P <MetaDB_Port> -u<用户名>@<租户名称#集群名称> -p
替换 <MetaDB_IP>
、<MetaDB_Port>
、<用户名>
、<租户名称#集群名称>
为实际值。
如果需要密码,系统会提示输入。
如果连接失败,请检查:
MetaDB 服务是否启动。
网络连通性是否正常。
账号权限是否正确。
3. 检查日志中的错误信息
从您提供的日志中可以看到以下关键错误信息:
binascii.Error: Incorrect padding
Exception: rsa decryption an exception occurred: Incorrect padding
这表明 RSA 解密过程中出现了填充错误,可能是由于私钥格式不正确或加密数据损坏导致的。
排查步骤:
确认私钥文件是否正确 :检查用于解密的私钥文件是否完整且未被篡改。
检查加密数据格式 :确保加密数据符合 Base64 编码规范。
重新生成密钥对 :如果怀疑密钥文件有问题,可以尝试重新生成密钥对并重新配置。
4. 参考 OCP 预检查流程
根据文档片段 1 和文档片段 2 的描述,在安装 OCP 时会进行环境预检查。如果 MetaDB 连接失败,通常会在预检查阶段报错。您可以:
单击 重新检查 按钮,重新执行环境预检查程序。
查看预检查报告,定位具体的失败原因。
5. 其他可能的原因
网络问题 :确保 OCP Server 和 MetaDB 之间的网络连通性正常。
权限问题 :确认 MetaDB 用户具有足够的权限。
版本兼容性 :确保使用的 OceanBase 数据库版本与 OCP 版本兼容。
6. 联系技术支持
如果以上方法仍无法解决问题,建议联系 OceanBase 技术支持团队获取进一步帮助。同时,可以提供以下信息以便更快定位问题:
完整的日志文件。
MetaDB 的配置信息(脱敏后)。
OCP 和 OceanBase 的具体版本号。
希望以上步骤能帮助您解决 MetaDB 连接失败的问题!如果仍有疑问,请随时反馈。
检索到的文档如下:
使用图形化界面部署 OCP
使用图形化界面升级 OCP
使用限制
升级常见问题
卸载 OCP
OCP 系统常见问题
2 个赞
群通知
2025 年3 月 28 日 09:20
#4
已尝试过2891与root@sys可正常连接,此数据库是新部署的 OceanBase_CE 4.2.5.2
论坛小助手
2025 年3 月 28 日 09:24
#5
根据您的补充信息,您已经确认可以通过 root@sys
用户正常连接到新部署的 OceanBase 社区版 4.2.5.2 数据库。但 OCP 在连接 MetaDB 时仍然失败。以下是进一步排查和解决问题的方向:
1. 确认 OCP 版本与 OceanBase 数据库版本兼容性
OCP 的某些功能可能依赖于特定版本的 OceanBase 数据库。根据文档片段 4 和文档片段 7 的描述,部分错误码是从 V3.2.4 或 V4.1.0 开始引入的。因此,请确保:
您使用的 OCP 4.3.4 版本支持 OceanBase 社区版 4.2.5.2。
如果版本不兼容,建议升级或降级 OCP 至匹配的版本。
2. 检查 OCP 配置文件中的 MetaDB 连接信息
即使您可以手动通过 obclient
工具连接数据库,OCP 的配置文件中可能存在不一致的设置。请检查以下内容:
配置文件路径 :通常位于 OCP 安装目录下的 conf
文件夹中。
关键参数 :
metadb_host
:MetaDB 的主机地址。
metadb_port
:MetaDB 的端口号(默认为 2883)。
metadb_user
:MetaDB 的用户名(如 root@sys
)。
metadb_password
:MetaDB 的密码。
如果发现配置不正确,请修改后重启 OCP 服务。
3. 验证 MetaDB 用户权限
虽然您可以通过 root@sys
用户连接数据库,但 OCP 可能需要额外的权限来操作 MetaDB。请确保以下权限已授予:
创建表和索引 :OCP 需要在 MetaDB 中存储元数据。
读写权限 :OCP 需要对 MetaDB 中的表进行增删改查操作。
执行以下 SQL 命令以授予必要权限:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '<password>';
替换 <password>
为实际密码。
如果仅允许从特定 IP 访问,将 '%'
替换为具体的 IP 地址。
4. 检查 OCP 的日志文件
除了您提供的日志片段外,还可以查看 OCP 的完整日志文件以获取更多上下文信息。日志文件通常位于以下路径:
/var/log/ocp/
或安装目录下的 logs
文件夹。
重点关注以下内容:
是否存在其他与 MetaDB 连接相关的错误信息。
是否有网络超时或权限拒绝的提示。
5. 重新初始化 MetaDB
如果以上步骤仍未解决问题,可以尝试重新初始化 MetaDB。具体步骤如下:
停止 OCP 服务 :systemctl stop ocp-server
删除现有 MetaDB 数据 :
登录到 OceanBase 数据库,删除 OCP 使用的 MetaDB 表空间或租户。
重新配置 MetaDB :
在 OCP 配置文件中重新指定 MetaDB 的连接信息。
启动 OCP 服务 :systemctl start ocp-server
6. 联系技术支持
如果问题依然无法解决,建议联系 OceanBase 技术支持团队,并提供以下信息:
OCP 和 OceanBase 的版本号。
完整的日志文件。
MetaDB 的配置信息(脱敏后)。
希望以上步骤能够帮助您解决问题!如果仍有疑问,请随时反馈。
检索到的文档如下:
0001 ~ 3999
7000 ~ 7999
(小助手的答复已结束,如未能解决您的问题,请继续提问并等待其他同学的回复,谢谢!)
1 个赞
群通知
2025 年3 月 28 日 10:14
#8
别坑我啊,部署了最新的obd现在准备部署ocp却出现这个问题,
1 个赞
独善其身
2025 年3 月 28 日 10:23
#9
我感觉跟助手回答的有点关系,好像跟rsa解密程序有关系
1 个赞
秃蛙
2025 年3 月 28 日 10:30
#10
obd --version版本确认下 期间有个版本有类似ras解析问题,可以使用最新的obd312版本再看下。
1 个赞
秃蛙
2025 年3 月 28 日 10:40
#12
~/.obd/app.log 和 ~/.obd/log/obd 日志麻烦提供下。
1 个赞
群通知
2025 年3 月 28 日 10:50
#13
秃蛙:
~/.obd/log/obd
app.log (1.9 MB)
obd.log (345.2 KB)
拜托了
秃蛙
2025 年3 月 28 日 11:26
#15
清理缓存,浏览器重新打开,设置无痕模式试下正常吗?