-
Notifications
You must be signed in to change notification settings - Fork 782
Helm charts for PC #10848
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
katarzyna-koltun-mx
wants to merge
17
commits into
development
Choose a base branch
from
kk-pc-helm
base: development
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Helm charts for PC #10848
Changes from all commits
Commits
Show all changes
17 commits
Select commit
Hold shift + click to select a range
c86a205
Helm charts for PC
katarzyna-koltun-mx 8c7b7a7
benefits update
katarzyna-koltun-mx e35a5f2
Typo fix
katarzyna-koltun-mx 6f25dae
sme review
katarzyna-koltun-mx 6f86cf5
updates
katarzyna-koltun-mx d3895cf
sme review
katarzyna-koltun-mx ca8f247
sme review
katarzyna-koltun-mx 7fb431c
sme review
katarzyna-koltun-mx 266961f
sme review
katarzyna-koltun-mx 4ae73ca
update image
katarzyna-koltun-mx cf717e7
Update private-cloud-helm-charts.md
katarzyna-koltun-mx 2b9b684
Update private-cloud-helm-charts.md
katarzyna-koltun-mx b2db1dc
Add alert for cluster access requirements
katarzyna-koltun-mx 3837737
sme review
katarzyna-koltun-mx 6bea548
Update private-cloud-helm-charts.md
katarzyna-koltun-mx 9ed6d62
sme review
katarzyna-koltun-mx 74f7322
Merge branch 'kk-pc-helm' of https://github.com/mendix/docs into kk-p…
katarzyna-koltun-mx File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
138 changes: 138 additions & 0 deletions
138
...ocs/deployment/private-cloud/private-cloud-cluster/private-cloud-helm-charts.md
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,138 @@ | ||
| --- | ||
| title: "Installing Components through UI" | ||
| url: /developerportal/deploy/helm-charts/ | ||
| description: "Describes how to configure your installation with Helm charts in Mendix on Kubernetes." | ||
| weight: 50 | ||
| --- | ||
|
|
||
| ## Introduction | ||
|
|
||
| By default, Mendix on Kubernetes uses the mxpc-cli tool for configuring namespaces and performing base installations. However, you can also integrate Helm charts into your pipelines in order to directly install components and run the configurations through the Helm chart UI. | ||
|
|
||
| The solution consists of two main components: the Helm charts themselves, and a tool called Mendix CLI. The Mendix CLI acts as a user interface, allowing you to input configurations and then generate Helm charts values from the helm charts. | ||
|
|
||
| {{% alert color="info" %}} | ||
| Before using Helm charts, make sure to review the official Helm documentation. | ||
| {{% /alert %}} | ||
|
|
||
|
katarzyna-koltun-mx marked this conversation as resolved.
|
||
| ### Benefits of Using the Helm Charts | ||
|
|
||
| Using the solution offers the following advantages when compared to the traditional method of using the mxpc-cli tool: | ||
|
|
||
| * Helm-based installation does not require elevated permissions, and can be run on individual workstations. Because of that, you can implement them if you use GitOps and similar DevOps practices. | ||
| * By using Helm charts, you can integrate configuration deployment into their existing pipelines. This reduces the need for manual intervention. For users who are familiar with Helm charts, it is a more intuitive and preferred method compared to manual CLI operations. | ||
| * The deployment process is streamlined, consistent, and repeatable. | ||
| * Managing the configurations is easy. | ||
| * In future releases, upgrade process will be simplified. | ||
|
|
||
| ### Current Limitations | ||
|
|
||
| The solution currently has the following limitations compared to using the mxpc-cli tool: | ||
|
|
||
| * The Helm chart UI cannot be used to configure the Global Operator. | ||
| * We do not have any UI-driven upgrade approach. | ||
| * With the current release, namespaces initially created with mxpc-cli cannot be migrated and managed with Helm charts. The option to use Helm charts is only available for newly created namespaces. | ||
| * The Helm chart does not cover [advanced operator configurations](/developerportal/deploy/private-cloud-cluster/#advanced-operator-configuration). | ||
| * Currently, we do not provide a public repository to download the Helm chart. The Helm charts are currently only be downloaded through our in house mx-ops-cli web UI. | ||
|
|
||
|
katarzyna-koltun-mx marked this conversation as resolved.
katarzyna-koltun-mx marked this conversation as resolved.
|
||
| ## Installing and Configuring the Mendix on Kubernetes with Helm Charts | ||
|
|
||
| To install the solution, perform the following steps: | ||
|
|
||
| 1. [Create a Mendix on Kubernetes cluster.](/developerportal/deploy/private-cloud-cluster/) | ||
| 2. Create a namespace in your cluster. | ||
| 3. Toggle the option **Use new Helm chart installation** to **On**. | ||
| 4. Select your operating system, and then click **Download Executable**. | ||
|
|
||
| {{< figure src="/attachments/deployment/private-cloud/private-cloud-cluster/helm-chart-wizard.png" >}} | ||
|
|
||
| 5. Click the **Copy** icon in the **Run the command in your terminal section**, and then run it on the machine where you want to install Mendix on Kubernetes. | ||
|
|
||
| The Web UI application opens locally in your browser, using `localhost:3000` as the default address. You can now select one of the following options: | ||
|
|
||
| * **Start from scratch** - Creates a new configuration file. | ||
| * **Import from file** - Allows you to import configurations from an existing yaml file. | ||
| * **Download artifacts** - Downloads the latest Helm charts or [Custom Resource Definitions](/developerportal/deploy/private-cloud-technical-appendix-01/#custom-resources), so you can open and view them. You can use this option to check the expected format, so you can use them as a template for your own charts. | ||
|
|
||
| 6. For an initial configuration, select **Start from Scratch**. The configuration wizard opens. | ||
|
|
||
| The configuration wizard offers light and dark modes for the UI. To switch between them, click the **Light Mode** or **Dark Mode** button in the top right corner. | ||
|
|
||
| 7. In the **General Settings** tab, select the environment for the installation. The other settings are pre-populated for the namespace that you created. | ||
|
|
||
| {{< figure src="/attachments/deployment/private-cloud/private-cloud-cluster/helm-chart-wizard1.png" >}} | ||
|
|
||
| 8. Optional: In the **Service Accounts** tab, specify a custom Kubernetes service account for the Mendix environment to use instead of the default account. | ||
|
|
||
| {{< figure src="/attachments/deployment/private-cloud/private-cloud-cluster/helm-chart-wizard2.png" >}} | ||
|
|
||
| 9. In the **Database Plans** tab, select your desired database type, and then specify one or more database plans. For more information about the available options, see [Supported Database Types](/developerportal/deploy/private-cloud-storage-plans/#supported-database-types). | ||
|
|
||
| If you want to use a custom Kubernetes service account for any of your plans, select it in the **K8s Service Account** field. | ||
|
|
||
| {{< figure src="/attachments/deployment/private-cloud/private-cloud-cluster/helm-chart-wizard3.png" >}} | ||
|
|
||
| 10. In the **Storage Plans** tab, select your desired database type, and then specify one or more blob storage plans. For more information about the available options, see [Blob File Storage Plans](/developerportal/deploy/private-cloud-storage-plans/#blob-storage). | ||
|
|
||
| {{< figure src="/attachments/deployment/private-cloud/private-cloud-cluster/helm-chart-wizard4.png" >}} | ||
|
|
||
| 11. In the **Ingress** tab, specify your network ingress settings. For more information about the available options, see [Network Ingress Settings in Mendix on Kubernetes](/developerportal/deploy/private-cloud-cluster/private-cloud-ingress-settings/). | ||
|
|
||
| {{< figure src="/attachments/deployment/private-cloud/private-cloud-cluster/helm-chart-wizard5.png" >}} | ||
|
|
||
| {{% alert color="info" %}} | ||
| Keep in mind that changing the ingress type resets the value of all fields in this tab. | ||
| {{% /alert %}} | ||
|
|
||
| 12. In the **Registry** tab, specify your network ingress settings. For more information about the available options, see [Registry Configuration](/developerportal/deploy/private-cloud-registry/). | ||
|
|
||
| {{< figure src="/attachments/deployment/private-cloud/private-cloud-cluster/helm-chart-wizard6.png" >}} | ||
|
|
||
| {{% alert color="info" %}} | ||
| Keep in mind that changing the registry type resets the value of all fields in this tab. | ||
| {{% /alert %}} | ||
|
|
||
| 13. Optional: In the **Proxy** tab, specify a proxy server. | ||
|
|
||
| {{< figure src="/attachments/deployment/private-cloud/private-cloud-cluster/helm-chart-wizard7.png" >}} | ||
|
|
||
| 14. Optional: If your servers use a self-signed certificate, in the **Custom TLS** tab, configure custom TLS so that the self-signed certificate is accepted. | ||
|
|
||
| {{< figure src="/attachments/deployment/private-cloud/private-cloud-cluster/helm-chart-wizard8.png" >}} | ||
|
|
||
| 15. Click **Generate & Download** to generate the yaml file with the configurations that you provided. | ||
| 16. Run the following commands: | ||
|
|
||
| 1. Install the required [Custom Resource Definitions](/developerportal/deploy/private-cloud-technical-appendix-01/#custom-resources) by running `kubectl apply -f mx-privatecloud-operator-crd/crds/`. | ||
| 2. Install Mendix on Kubernetes by running `helm install --createnamespace -n <your namespace> -f <yaml file name> <release name> mx-privatecloud-operator-installer`. | ||
|
|
||
| {{% alert color="info" %}} | ||
| Ensure that your cluster have access to the Mendix on Kubernetes Portal for adding the storage plans, and that the Private Cloud Portal is safelisted in the cluster. | ||
| {{% /alert %}} | ||
|
|
||
|
katarzyna-koltun-mx marked this conversation as resolved.
|
||
| The installer performs the basic installation and applies the configurations at the same time. | ||
|
|
||
|
katarzyna-koltun-mx marked this conversation as resolved.
|
||
| ## Updating the Configuration | ||
|
|
||
| If you want to update your configuration (for example, to change the database), perform the following steps: | ||
|
|
||
| 1. In the Web UI application, click **Import from file**. | ||
| 2. Update the imported yaml file by following the same wizard as above. | ||
| 3. Update the configuration with the new yaml file by running the following command: `helm upgrade -n <your namespace> -f <yaml file name> <release name> mx-privatecloud-operator-installer`. | ||
|
|
||
| ## Upgrading to a New Version of the Mendix Operator | ||
|
|
||
| When upgrading the Mendix Operator, perform the following steps: | ||
|
|
||
| 1. In the Web UI application, click **Download charts** to download the Helm charts for your current configuration. | ||
| 2. Extract the yaml file from the download. | ||
| 3. Update the [Custom Resource Definitions](/developerportal/deploy/private-cloud-technical-appendix-01/#custom-resources) by running `kubectl apply -f mx-privatecloud-operator-crd/crds/`. | ||
| 4. Update the configuration by running the following command: `helm upgrade -n <your namespace> -f <yaml file name> <release name> mx-privatecloud-operator-installer`. | ||
|
|
||
| ## Uninstalling the Cluster | ||
|
|
||
| To uninstall the cluster, perform the following steps: | ||
|
|
||
| 1. [Delete the environment](/developerportal/deploy/private-cloud-deploy/#delete-environment) in the Mendix on Kubernetes portal. | ||
| 2. [Ensure all Mendix apps are fully deleted](/developerportal/deploy/private-cloud-cluster/#delete-namespace), especially the Storage Instances. | ||
| 3. Use the `helm uninstall` command to complete the process. For more information, see [helm uninstall] (https://helm.sh/docs/helm/helm_uninstall) in the Helm documentation. | ||
Binary file added
BIN
+286 KB
...ttachments/deployment/private-cloud/private-cloud-cluster/helm-chart-wizard.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+208 KB
...ments/deployment/private-cloud/private-cloud-cluster/helm-chart-wizard1.png.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+304 KB
...ments/deployment/private-cloud/private-cloud-cluster/helm-chart-wizard2.png.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+246 KB
...ments/deployment/private-cloud/private-cloud-cluster/helm-chart-wizard3.png.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+264 KB
...ments/deployment/private-cloud/private-cloud-cluster/helm-chart-wizard4.png.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+250 KB
...ments/deployment/private-cloud/private-cloud-cluster/helm-chart-wizard5.png.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+220 KB
...ments/deployment/private-cloud/private-cloud-cluster/helm-chart-wizard6.png.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+213 KB
...ments/deployment/private-cloud/private-cloud-cluster/helm-chart-wizard7.png.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+206 KB
...ments/deployment/private-cloud/private-cloud-cluster/helm-chart-wizard8.png.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.