zilliztech / VectorDBBench

A Benchmark Tool for VectorDB
MIT License
526 stars 136 forks source link

Handshake failed with fatal error SSL_ERROR_SSL: error:1000007d:SSL routines:OPENSSL_internal:CERTIFICATE_VERIFY_FAILED #376

Open samjax opened 4 days ago

samjax commented 4 days ago

I am trying to use VectorDBBench tool for benchmarking my cluster running in AWS. This cluster is SSL enabled. On the new VectorDBbench interface there is no option for supplying client cert, key and cacert. It used to be there on the previous version of the tool. Has it been removed? Are there any other options?

XuanYang-cn commented 4 days ago

What DB are you testing on? Are you using db client already in the repo?

If it's self deployed Milvus, try to use this url: "https://host:port"

samjax commented 4 days ago

Sorry, it is for benchmarking a Milvus cluster running in AWS. I have a gslb in between via port 443.

samjax commented 4 days ago

Issue is, on the benchmarking tool UI I don't see an option to pass the certificates. Is there a way to pass the certs for authentication.

XuanYang-cn commented 4 days ago

@samjax I see.

Have you try to connect with Milvus use plain PyMilvus client? If so, what's the connections params of yours? I'm not sure if use a secured channel for this is enough. Could you please show me the result of the following code?? Does it raise exceptions too?

from pymilvus import connections
connections.connect(uri="https://the-aws-alb-address:443") # use https here
samjax commented 4 days ago

I am getting this error: [__internal_register] retry:4, cost: 0.27s, reason: <_InactiveRpcError: StatusCode.INTERNAL, Received http2 header with status: 400>

XuanYang-cn commented 1 day ago

Looks like pymilvus is unable to connect with Milvus through gslb. I'll seek some help from our devops expertise.

XuanYang-cn commented 1 day ago

@samjax In the mean time, could you try to pass the certificats like this and connect with Milvus successfully? https://milvus.io/docs/tls.md#Two-way-TLS-connection image