Nginx Istio-用于Azure前门的默认ssl证书

Nginx Istio-用于Azure前门的默认ssl证书,nginx,ssl,kubernetes,kubernetes-ingress,istio,Nginx,Ssl,Kubernetes,Kubernetes Ingress,Istio,对于nginx入口,有一种使用--default ssl certificate标志定义默认ssl证书的方法 参考: 我怎样才能为istio做同样的事情 我已在istiogateway中分配了tls.credentialName。但是,它与nginx入口默认ssl证书不同 istio_gateway.yaml --- apiVersion: networking.istio.io/v1alpha3 kind: Gateway metadata: name: SERVICE_GATEWAY spe

对于nginx入口,有一种使用
--default ssl certificate
标志定义默认ssl证书的方法

参考:

我怎样才能为istio做同样的事情

我已在istio
gateway
中分配了
tls.credentialName
。但是,它与nginx入口默认ssl证书不同

istio_gateway.yaml

---
apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
name: SERVICE_GATEWAY
spec:
  selector:
    istio: ingressgateway # Use Istio default gateway implementation
  servers:
  - port:
      name: SERVICE_NAME-http-80
      number: 80
      protocol: HTTP
    hosts:
    - "SERVICE_DNS"
  - port:
      name: SERVICE_NAME-https-443
      number: 443
      protocol: HTTPS
    tls:
      credentialName: SERVICE_CRT
      mode: SIMPLE
      minProtocolVersion: TLSV1_2
    hosts:
    - "SERVICE_DNS"
虚拟服务:

---
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: SERVICE_NAME
spec:
  hosts:
  - SERVICE_DNS
  gateways:
  - SERVICE_GATEWAY
  http:
  - match:
    - uri:
        prefix: /
    route:
    - destination:
        port:
          number: SERVICE_PORT
        host: "SERVICE_NAME.default.svc.cluster.local"

此设置适用于nginx入口:
我想对istio做同样的事情。

如何颁发证书?证书管理员还是别的什么?TLS的机密将与证书名称匹配,并将添加到与证书相同的命名空间中,以便您可以将其用于网关或ingress@iTech我使用证书管理器(letsencrypt)颁发了证书。如果我不使用Azure前门,它工作正常。但是,Azure前门需要在
nginx入口
级别上进行一些额外的配置。这里有一篇关于nginx入口的文章,我不知道如何在istio上做同样的事情。您是否使用cert manager生成的TLS证书名配置网关?你能分享你的网关yaml文件吗?@iTech我已经用网关yaml更新了这个问题。在
https
路由的
tls
下,尝试添加
privateKey:sds
然后
serverCertificate:sds
。您还可以通过在http路由的
tls
键下添加
httpRedirect:true
来强制https重定向