knative / client-contrib

Community contributed `kn` plugins.
Apache License 2.0
10 stars 23 forks source link

[kn-admin] As a Knative administrator, I want to enable https connections for all services using existing certificate #67

Open chaozbj opened 4 years ago

chaozbj commented 4 years ago

From the @zhanggbj's proposal doc:

In production, usually we would like to provide https connection for applications or Knative Services. To enable https connection, kn-admin will take an existing certificate and enable https-connection with the CLI instead of creating a Secret and modifying Gateway as Knative Serving doc described.

$ kn admin https-connection enable --tls-cert ${workspace}/demo.pem --tls-key ${workspace}/demo.key
Knative serving https connection is enabled

# In fact, kn admin will create a secert in istio-system and config the routing rules in knative-ingress-gateway
$ kubectl get secret -n istio-system istio-ingressgateway-certs
$ kubectl get gateway knative-ingress-gateway --namespace knative-serving
chaozbj commented 4 years ago

/assign

zhanggbj commented 4 years ago

@chaozbj The proposal doc cover the default istio ingressgateway config and only support one secret. However since istio 1.6, SDS is enabled by default, and it can support multiple secrets. We may need to support both situations, so need to check whether Istio SDS is enabled first and then do the corresponding configs.

Also CC @maximilien