You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Databricks调用Collibra REST API遇SSL EOF错误求助

Databricks中调用Collibra REST API出现SSL EOF错误的解决思路

问题场景

  • 本地Python环境可正常运行调用Collibra REST API的脚本,但在Databricks Notebook(Python 3.10)中执行以下代码时报错:
    requests.get("https://organisationName.collibra.com/rest/2.0/assets/1230b974-4c83-4f22-88a7-11c5e1ty1234", headers=headers, verify=False)
    
  • 收到错误:

    SSLError: HTTPSConnectionPool(host='organisationName.collibra.com', port=443): Max retries exceeded with url: /rest/2.0/assets/1230b974-4c83-4f22-88a7-11c5e1ty1234 (Caused by SSLError(SSLEOFError(8, '[SSL: UNEXPECTED_EOF_WHILE_READING] EOF occurred in violation of protocol (_ssl.c:1007)')))

  • 已尝试操作:取消verify=False设置、安装/更新ndg-httpsclient/pyopenssl等包,均无效果;使用的requests版本为2.28.1

解决步骤

1. 检查Databricks集群的网络访问限制

Databricks集群通常受企业网络策略管控,可能无法正常建立SSL连接到外部服务:

  • 测试集群是否能访问Collibra域名:在Notebook中执行以下命令验证连通性
    !telnet organisationName.collibra.com 443
    # 或者用curl查看详细连接日志
    !curl -v https://organisationName.collibra.com
    
  • 确认集群所在VPC是否允许出站访问organisationName.collibra.com的443端口
  • 检查是否需要配置企业内部的HTTP/HTTPS代理(很多企业环境下Databricks集群必须通过代理访问外部网络)

2. 强制指定SSL协议版本

部分环境中默认的SSL协议协商可能出现兼容性问题,可尝试强制使用TLS 1.2或1.3:

import requests
from requests.adapters import HTTPAdapter
from urllib3.poolmanager import PoolManager
import ssl

class TLSAdapter(HTTPAdapter):
    def init_poolmanager(self, connections, maxsize, block=False):
        self.poolmanager = PoolManager(
            num_pools=connections,
            maxsize=maxsize,
            block=block,
            ssl_version=ssl.PROTOCOL_TLSv1_2  # 可尝试替换为 ssl.PROTOCOL_TLSv1_3
        )

session = requests.Session()
session.mount('https://', TLSAdapter())
response = session.get(
    "https://organisationName.collibra.com/rest/2.0/assets/1230b974-4c83-4f22-88a7-11c5e1ty1234",
    headers=headers,
    verify=False
)

3. 手动配置SSL证书信任

Databricks集群的根证书库可能缺少Collibra证书的签发机构证书,可尝试手动指定证书文件:

  1. 获取Collibra服务的CA证书文件
  2. 将证书上传到DBFS或集群本地存储
  3. 在请求中指定证书路径:
    response = requests.get(
        "https://organisationName.collibra.com/rest/2.0/assets/1230b974-4c83-4f22-88a7-11c5e1ty1234",
        headers=headers,
        verify="/dbfs/path/to/collibra_ca.crt"
    )
    

4. 公司内部求助对象建议

  • Databricks集群管理员:负责集群网络配置、权限管理,可协助排查出站规则、代理设置问题
  • 企业安全/网络团队:管控防火墙、代理策略、SSL证书信任体系,能确认外部访问的合规性
  • Collibra管理员:可验证Collibra服务的访问策略、证书配置是否有变更

内容的提问来源于stack exchange,提问作者Bat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 17:39:50