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

Python SDK外部连接本地K8s托管Couchbase的连接串配置方法

Kubernetes集群外部Python SDK连接本地K8s托管Couchbase配置指南

你已完成K8s上的Couchbase集群部署,要从集群外本地运行Python程序连接,核心需要先完成服务暴露,再正确拼接连接串,具体操作如下:

1. 暴露Couchbase服务到集群外部

Couchbase默认部署为ClusterIP类型服务,仅支持集群内部访问,外部连接必须先做服务暴露,本地测试优先选端口转发方案,操作成本最低:

  • 端口转发方案:执行kubectl命令映射Couchbase全量所需端口到本地
    # 先查询Couchbase对应的服务名
    kubectl get svc | grep couchbase
    # 替换命令中的<couchbase-service-name>为查询到的实际服务名
    kubectl port-forward svc/<couchbase-service-name> 8091:8091 11207:11207 11210:11210 8092:8092 8093:8093 8094:8094 8095:8095 8096:8096
    
    必须同时映射管理端口、KV端口、查询/索引/搜索相关端口,否则会出现管理端可访问但SDK读写、查询失败的问题
  • 其他可选暴露方案:
    • 局域网测试可将Service类型修改为NodePort,通过K8s节点IP+对应NodePort访问
    • 长期使用可配置Ingress规则,通过自定义域名访问

2. connection_string参数填写规则

根据你选择的暴露方案对应填写即可:

  • 用端口转发本地测试场景:直接填couchbase://localhost,如果转发时自定义了本地映射端口,需要在地址后追加端口号,例如本地把8091映射为18091时填couchbase://localhost:18091
  • 用NodePort暴露场景:填couchbase://<K8s节点本机IP>:<8091端口对应的NodePort号>
  • 用Ingress配置域名场景:填couchbase://<你配置的访问域名>
  • 如果开启了TLS加密连接,将连接串前缀替换为couchbases://,同时确保11207加密端口已放通/映射

3. 可直接运行的参考代码

import os
from couchbase.cluster import Cluster
from couchbase.auth import PasswordAuthenticator
from couchbase.options import ClusterOptions

connection_string = "couchbase://localhost"
cluster = Cluster.connect(connection_string,
                          ClusterOptions(PasswordAuthenticator(os.getenv("LOGIN"), os.getenv("PASSWORD"))))
bucket = cluster.bucket('travel-sample')
coll = bucket.default_collection()
query_iter = cluster.query("SELECT * FROM `travel-sample` LIMIT 100")
for r in query_iter.rows():
    print(f"Found row: {r}")

前置校验项

运行代码前先确认以下配置,避免无意义排查:

  • 本地浏览器可正常打开Couchbase管理控制台(地址为http://<连接串中的IP/域名>:<管理端口>),配置的账号密码可正常登录
  • 控制台中已创建travel-sample存储桶,且使用的账号拥有该桶的读写、查询权限
  • 本地Python环境安装的Couchbase SDK版本与部署的Couchbase集群版本兼容

部署效果参考:
K8s上Couchbase集群部署成功截图


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 00:33:23