Skip to content

Commit 84074c3

Browse files
committed
Update istio version and convert to Helm from arkade
Signed-off-by: Alex Ellis (OpenFaaS Ltd) <alexellis2@gmail.com>
1 parent 5a0e869 commit 84074c3

File tree

1 file changed

+17
-47
lines changed

1 file changed

+17
-47
lines changed

_posts/2021-05-19-istio-functions.md

Lines changed: 17 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -65,68 +65,38 @@ kind create cluster \
6565
Once the KinD cluster has started, install Istio:
6666

6767
```bash
68-
arkade install istio --version 1.16.1
68+
arkade get istioctl@1.25.0
6969
```
7070

71-
> Note: newer versions of Istio are available, however this was the last tested version when the blog post was written.
72-
73-
You can also install Istio using Helm or the istioctl tool, [see other options](https://istio.io/latest/docs/setup/install/).
74-
75-
Download the CLI for Istio so we can use it later:
76-
7771
```bash
78-
arkade get istioctl
72+
istioctl install \
73+
--set meshConfig.defaultConfig.holdApplicationUntilProxyStarts=true
7974
```
8075

81-
### Install OpenFaaS
82-
83-
OpenFaaS can be installed via Helm or arkade, the below flags for arkade can be converted to Helm values if you prefer.
84-
85-
If you see `--set gateway.directFunctions=true`, then you could convert that to the following for a values.yaml file:
86-
87-
```yaml
88-
gateway:
89-
directFunctions: true
90-
```
76+
See other options for: [istioctl](https://istio.io/latest/docs/setup/install/istioctl/).
9177

92-
Setting `openfaasPro=true` enables the OpenFaaS Pro features.
93-
94-
The `--license-file` flag should be set to `$HOME/.openfaas/LICENSE` and will create the `openfaas-license` secret so that the components can start up.
95-
96-
The `gateway.directFunctions=true` flag prevents OpenFaaS from trying to do its own endpoint load-balancing between function replicas, and defers to Envoy instead. Envoy is configured for each pod by Istio and handles routing and retries.
78+
### Install OpenFaaS
9779

98-
The `gateway.probeFunctions=true` is required to remediate a race condition where during scaling, Kubernetes reports ready endpoints, but the Envoy proxy is not yet ready to route traffic to them. This setting causes the gateway to access the function's HTTP readiness endpoint directly before sending traffic.
80+
OpenFaaS can be installed via Helm using the instructions below, or via arkade by passing in various `--set` flags.
9981

100-
The `operator.create` option is not strictly necessary, but preferred as it enables the "Function" CRD.
82+
Download [values-pro.yaml](https://github.com/openfaas/faas-netes/blob/master/chart/openfaas/values-pro.yaml) from the OpenFaaS Helm chart repository.
10183

102-
Install without mTLS:
84+
Then add/change:
10385

104-
```bash
105-
arkade install openfaas \
106-
--license-file $HOME/.openfaas/LICENSE \
107-
--set openfaasPro=true \
108-
--set operator.create=true \
109-
--set gateway.directFunctions=true \
110-
--set gateway.probeFunctions=true
86+
```diff
87+
gateway:
88+
+ directFunctions: true
89+
+ probeFunctions: true
11190
```
11291

113-
The `istio.mtls` flag is optional, but when set encrypts the traffic between each of the pods in the `openfaas` and `openfaas-fn` namespace.
114-
115-
Here is the updated command to install with mTLS:
92+
If you wish to enable mTLS for the `openfaas` and `openfaas-fn` namespaces, then also add:
11693

117-
```bash
118-
arkade install openfaas \
119-
--license-file $HOME/.openfaas/LICENSE \
120-
--set openfaasPro=true \
121-
--set operator.create=true \
122-
--set gateway.directFunctions=true \
123-
--set gateway.probeFunctions=true \
124-
--set istio.mtls=true
94+
```diff
95+
+istio:
96+
+ mtls: true
12597
```
12698

127-
At this point everything is configured and you can use OpenFaaS.
128-
129-
Alternatively, follow the instructions in the [OpenFaaS documentation](https://docs.openfaas.com/deployment/pro/).
99+
Then run the the rest of the [commands from the docs](https://docs.openfaas.com/deployment/pro/) to create the initial namespaces, add the license key, and to install the OpenFaaS chart with Helm.
130100

131101
### Access OpenFaaS with an Istio Gateway
132102

0 commit comments

Comments
 (0)