【发布时间】:2022-11-02 15:20:08
【问题描述】:
我已经部署了 Nginx 入口控制器,清单:
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
namespace: namespace-servicename
name: servicename
annotations:
nginx.ingress.kubernetes.io/backend-protocol: "GRPC"
nginx.ingress.kubernetes.io/ssl-passthrough: "true"
nginx.ingress.kubernetes.io/ssl-redirect: "true"
cert-manager.io/cluster-issuer: "letsencrypt-cf-dns"
nginx.ingress.kubernetes.io/rewrite-target: /
spec:
tls:
- hosts:
- roabc.domain.net
secretName: wildcard-roudh-domain-net
ingressClassName: public
rules:
- host: roabc.domain.net
- http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: servicename
port:
number: 80
kubectl 描述 svc 服务名 -n 命名空间-服务名
Name: servicename
Namespace: namespace-servicename
Labels: app=ro**
continent=eu
hub-id=eu-**-mad013
Annotations: <none>
Selector: app=ro**,continent=eu,hub-id=eu-**-mad013
Type: ClusterIP
IP Family Policy: SingleStack
IP Families: IPv4
IP: 10.152.183.44
IPs: 10.152.183.44
Port: grpc 80/TCP
TargetPort: 80/TCP
Endpoints: 10.1.252.108:80
Session Affinity: None
Events: <none>
但是,不幸的是,grpcurl 无法访问 gRPC 应用程序,抛出错误rpc 错误:代码 = 内部描述 = 无法查询服务描述符”*。服务。.搜索列表”:流由 RST_STREAM 终止,错误代码:PROTOCOL_ERROR
grpcurl -d "@" -H "authorization: Bt** dert**" roabc.domain.net:443
Error invoking method"***.services.**.SearchList": rpc error: code = Internal desc = failed to query for service descriptor"***.services.**.SearchList": **stream terminated by RST_STREAM with error code: PROTOCOL_ERROR**
运行在 Pod 中的 gRPC 应用程序,不断出现此错误:OPENSSL_internal:WRONG_VERSION_NUMBER
**ssl_transport_security.cc:1455] Handshake failed with fatal error SSL_ERROR_SSL: error:100000f7:SSL routines:OPENSSL_internal:WRONG_VERSION_NUMBER.**
【问题讨论】:
标签: nginx ssl grpc kubernetes-ingress nginx-ingress