Используя fabric8 kubernetes client , я получил сертификат, отличный от сертификата curl на той же конечной точке.
В частности, я получил входящий самозаверяющий сертификат (CN = Kubernetes Ingress Controller Fake Сертификат) вместо указанного.
Конфигурация Ingress (результат kubectl edit ingress
)
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
creationTimestamp: "2020-08-07T09:33:18Z"
generation: 1
labels:
app: dummy
app.kubernetes.io/component: dummy-component
app.kubernetes.io/instance: dummy-instance
app.kubernetes.io/managed-by: Dummy
app.kubernetes.io/name: dummy
app.kubernetes.io/part-of: dummy-sample
app.kubernetes.io/version: 1.12.0-SNAPSHOT
managedFields:
- apiVersion: extensions/v1beta1
fieldsType: FieldsV1
fieldsV1:
f:metadata:
f:labels:
.: {}
f:app: {}
f:app.kubernetes.io/component: {}
f:app.kubernetes.io/instance: {}
f:app.kubernetes.io/managed-by: {}
f:app.kubernetes.io/name: {}
f:app.kubernetes.io/part-of: {}
f:app.kubernetes.io/version: {}
f:spec:
f:rules: {}
f:tls: {}
manager: okhttp
operation: Update
time: "2020-08-07T09:33:18Z"
- apiVersion: networking.k8s.io/v1beta1
fieldsType: FieldsV1
fieldsV1:
f:status:
f:loadBalancer:
f:ingress: {}
manager: nginx-ingress-controller
operation: Update
time: "2020-08-07T09:33:19Z"
name: dummy-instance
namespace: dummy-namespace
resourceVersion: "1887"
selfLink: /apis/extensions/v1beta1/namespaces/dummy-namespace/ingresses/dummy-instance
uid: 2b7839fa-da65-45f3-9f1f-8169cf1325d8
spec:
rules:
- host: minikube
http:
paths:
- backend:
serviceName: dummy-instance
servicePort: 9999
path: /dummy-instance
pathType: ImplementationSpecific
tls:
- hosts:
- minikube
secretName: minikube-tls-3
status:
loadBalancer:
ingress:
- ip: 172.17.0.3
Я не вижу причины, по которой Ingress вернет другой сертификат для того же хоста, на той же конечной точке, с другим клиентом.
Мое единственное предположение заключалось в том, что сертификат, содержащийся в секрете, был несовместим (или имел более низкий приоритет в шифровании?) с Fabric8 ClientHello (okhttp3 здесь) , но это не так.
Идея отладки у меня заканчивается, так что если у вас есть предположение, это будет приветствоваться!