You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- This helm chart will allow deploying the opc router onto any kubernetes cluster.
45
-
- There are multiple possible configurations to deploy the opc router this chart allows.
46
+
- This helm chart will allow deploying the OPC Router onto any kubernetes cluster.
47
+
- There are multiple possible configurations to deploy the OPC Router this chart allows.
46
48
47
49
# Getting Started
48
50
@@ -67,7 +69,7 @@ To install the chart with the name `my-opcrouter`:
67
69
helm install my-opcrouter opc-router/opc-router \
68
70
--set I_do_accept_the_EULA=true
69
71
```
70
-
This command will install the opc router with standard settings, as a service with a seperate mongodb container. The mongodb won't require authentification, which is not recommended. Accepting the [End User License Agreement](https://www.opc-router.com/terms-of-use-and-eula/) by setting `I_do_accept_the_EULA` to true is required for the OPCRouter to run.
72
+
This command will install the OPC Router with standard settings, as a service with a seperate mongodb container. The mongodb won't require authentification, which is not recommended. Accepting the [End User License Agreement](https://www.opc-router.com/terms-of-use-and-eula/) by setting `I_do_accept_the_EULA` to true is required for the OPC Router to run.
71
73
72
74
To deploy this chart with password authentification for the web management and for the mongodb use this command:
73
75
```shell
@@ -109,15 +111,15 @@ However, keep in mind that the persitant volumes of the mongodb container don't
109
111
|`nameOverride`| String to partially override opc-router.fullname template (will maintain the release name) |`""`|
110
112
|`fullnameOverride`| String to fully override opc-router.fullname template |`""`|
|`envVars`| Array of environment variables for the opc router container. |`[]`|
122
+
|`envVars`| Array of environment variables for the OPC Router container. |`[]`|
121
123
|`serviceAccount.create`| Specifies whether a service account should be created. |`true`|
122
124
|`serviceAccount.annotations`| Annotations to add to the service account. |`{}`|
123
125
|`serviceAccount.name`| Name of the service account to use. If not set and create is true, it is generated using the fullname. |`""`|
@@ -149,23 +151,39 @@ However, keep in mind that the persitant volumes of the mongodb container don't
149
151
150
152
## **WARNING: MongoDB root password and replica key set**
151
153
152
-
When using the mongodb container, keep in mind that that the root password and replica key set can only be set once, as upon initial declaration they are stored in a persistent volume. This may be an issue when using automatically deploying the chart using ArgoCD or Flux, as automatic redeployments can cause the root password to be regenerated when not having set static values for them in the values.yaml. This however will only make the database inaccessible to the opc router, as it will use the new passwords, though the mongodb still uses the old initial passwords. Thus it is highly recommended to set mongodb.auth.existingSecret or mongodb.auth.rootPassword and mongodb.auth.replicaSetKey when not manually deploying the chart for testing purposes.
154
+
When using the mongodb container, keep in mind that that the root password and replica key set can only be set once, as upon initial declaration they are stored in a persistent volume. This may be an issue when using automatically deploying the chart using ArgoCD or Flux, as automatic redeployments can cause the root password to be regenerated when not having set static values for them in the values.yaml. This however will only make the database inaccessible to the OPC Router, as it will use the new passwords, though the mongodb still uses the old initial passwords. Thus it is highly recommended to set `mongodb.auth.existingSecret` or `mongodb.auth.rootPassword` and `mongodb.auth.replicaSetKey` when not manually deploying the chart for testing purposes.
155
+
156
+
## **Using the `opcrouter/runtime` image**
157
+
158
+
By default, the helm chart is configured to use the `opcrouter/service` image, which doesn't include an internal mongodb. The mongodb is then instead also installed sperately by the helm chart.
159
+
160
+
It is possible to configure the helm chart to use the `opcrouter/runtime` image, which comes with an internal mongodb inside the OPC Router container, by setting `global.imageRegistry` to it. Therefore it is recommended to disable to deployment of the external mongodb, by setting `mongodb.deploy` to `false`, otherwise the internal mongodb will be created and running, but will not be used by the OPC Router.
161
+
162
+
Furthermore it is also strongly recommended to increase the capacity of the inray volume (`claims.inray.capacity`), as the data of the internal mongodb is stored there, when using the internal mongodb. At minimum it should be set to 2gb, it is however recommended to set it to 8gb.
163
+
164
+
## **Using Ingress or reverse proxies**
165
+
166
+
The rerouting of the traffic for to the OPC Router web management may require some extra configuration. Generally, when some form of reverse proxy is being used, the `ASPNETCORE_FORWARDEDHEADERS_ENABLED` environment variable needs to be set to `true`. When `ingress.enabled` is set to `true` this is already automatically done.
167
+
168
+
In some configurations it is desirable to change the base path for the OPC Router web management. This always requires setting the `WEB_BASE_PATH` environment variable to the new base path for the OPC Router web management to properly function.
169
+
170
+
For configuring environment variables, refer to [Adding extra environment variables](#adding-extra-environment-variables).
153
171
154
172
## **Redundancy mode**
155
-
The opc router and mongodb deployed by the chart can both be configured to run in redundancy mode, offering increased protection against hardware failures.
173
+
The OPC Router and mongodb deployed by the chart can both be configured to run in redundancy mode, offering increased protection against hardware failures.
156
174
157
175
### **OPC Router redudancy mode**
158
-
Setting the opc router into redundancy mode will cause a second pod with a opc router runtime container to be deployed. This container will load the same project as the main container, but will remain dorment until the main container is unreachable.
176
+
Setting the OPC Router into redundancy mode will cause a second pod with a OPC Router runtime container to be deployed. This container will load the same project as the main container, but will remain dorment until the main container is unreachable.
159
177
160
-
The redundancy mode for the opc router is currently not availible and will be enabled at a later date.
178
+
The redundancy mode for the OPC Router is currently not availible and will be enabled at a later date.
161
179
162
180
### **MongoDB redundancy mode**
163
181
By setting the replica count of the mongodb above one, additional pods running the mongodb containers are created. These mongodb containers will connect and copy the primary container, but aren't accessible themself. When the primary container becomes unreachable, a new primary container will be elected, taking its place.
164
182
165
183
Keep in mind that currently when the primary mongodb changes, external connection to the application can get lost until the original primary pod is again the primary pod.
166
184
167
185
## **Loading a project from a git repository**
168
-
Please refer to [this sample project](https://github.com/OPC-Router/helm-sample-project) on general information of how to deploy a opc router project from a git repository onto a kubernetes cluster using this helm chart.
186
+
Please refer to [this sample project](https://github.com/OPC-Router/helm-sample-project) on general information of how to deploy a OPC Router project from a git repository onto a kubernetes cluster using this helm chart.
0 commit comments