This document is an attempt to summarize configuration choices to make when deploying OpenWhisk on a Kubernetes cluster you have built yourself (ie, not on a public cloud managed Kubernetes service).
First, make sure your cluster is compatible with the technical requirements.
The simplest type of ingress to configure for OpenWhisk is a NodePort ingress.
Add the following to your mycluster.yaml
, substituting a real IP address
for YOUR_WORKERS_PUBLIC_IP_ADDR:
whisk:
ingress:
type: NodePort
apiHostName: YOUR_WORKERS_PUBLIC_IP_ADDR
apiHostPort: 31001
nginx:
httpsNodePort: 31001
Properly configuring TLS can be challenging, but if you know how to get TLS
to work with your ingress controller for other services on your cluster,
you can probably get it to work for OpenWhisk as well.
You will need something like the following in your mycluster.yaml
.
whisk:
ingress:
apiHostName: <domain>
apiHostPort: 443
apiHostProto: https
type: Standard
domain: <domain>
tls:
enabled: true
<YOU WILL NEED SOME MORE KEY VALUE PAIRS HERE>
annotations:
<LIST ANNOTATIONS YOU NEED FOR YOUR INGRESS>
You can see how these values are used and what other values you might need by inspecting frontdoor-ingress.yaml and frontdoor-secrets.yaml.