Skip to content
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

Mx Azure draft #8901

Draft
wants to merge 10 commits into
base: development
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from 8 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
48 changes: 48 additions & 0 deletions content/en/docs/deployment/mx-azure/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
---
title: "Mendix on Azure"
url: /developerportal/deploy/mendix-on-azure/
description: "Presents documentation on deploying your Mendix app on Microsoft Azure."
weight: 42
---

## Introduction

Mendix on Azure provides a simplified, integrated way to deploy Mendix applications to a Microsoft Azure environment. With this solution, users are empowered to deploy their Mendix applications in Azure environments without the need for intricate infrastructure setup in cloud services. They can also seamlessly manage infrastructure services through an intuitive user interface. No matter their IT skills, users can realize their project value quickly and securely with Azure.

## Features of Mendix on Azure

Mendix on Azure has the following features:

* You can create the managed app in Azure and link it to your Mendix Private Cloud environment.
* You are provided with a dedicated database and file storage for every app environment.
katarzyna-koltun-mx marked this conversation as resolved.
Show resolved Hide resolved
* You do not need to perform database scaling or software upgrades, as it is done for you.
katarzyna-koltun-mx marked this conversation as resolved.
Show resolved Hide resolved
* The environment is set up in an opinionated way according to the architecture prepared by Mendix.

## Typical Use Cases

Mendix on Azure supports the following use cases:

* Geographical data control - For organizations which must keep data within certain regions due to legal or contractual obligations.
* Industry-specific compliance - For industries such as healthcare, finance, or government, which have strict regulatory compliance requirements.
* App data sensitivity - For applications which deal with highly sensitive data or are subject to stringent security regulations.
katarzyna-koltun-mx marked this conversation as resolved.
Show resolved Hide resolved
* Legacy systems integration - For integrating with existing legacy systems that are not easily migrated to a public cloud.

## Mendix on Azure and Mendix for Private Cloud

Mendix on Azure is a new deployment option that makes use of some of the features of Mendix for Private Cloud, but does so in an opinionated way. Mendix for Private Cloud offers its users flexibility coupled with the ability to keep their deployment within their enterprise firewall, but requires more effort to configure and more time to value than deployments on Mendix Cloud. Mendix on Azure builds on that by providing an automated, preconfigured solution with access to private customer networks, which can be deployed in 30 minutes by a user without IT skills at no extra operational costs. The architecture, its maintenance, updates, and security hardening are all fully managed by Mendix.

## Architecture

The diagram in this section presents the high-level architecture of the Mendix for Azure solution.

{{< figure src="/attachments/deployment/mx-azure/architecture.png" class="no-border" >}}

The architecture is assessed against the [Azure well-architected framework](https://learn.microsoft.com/en-us/azure/well-architected/) to ensure its reliability, accessibility, and performance.

## Security

How is Mendix access to the customer environment secured - Document private endpoints used (protocol, ports, authentication mechanism

### SOC 2 exceptions

## Read More
59 changes: 59 additions & 0 deletions content/en/docs/deployment/mx-azure/mx-azure-quickstart.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
---
title: "Installing and Configuring Mendix on Azure"
url: /developerportal/deploy/mendix-on-azure/installation/
description: "Documents the initial configuration tasks for Mendix on Azure."
weight: 20
---

## Introduction

To get started with your Mendix on Azure deployment, you must first register your Microsoft Azure cloud cluster in the Mendix Portal. This will provide you with the resources required to deploy the Mendix Operator and host your Mendix app in an Azure deployment.

### Prerequisites

Before starting the installation and implementation process, make sure that you have all the necessary prerequisites:

* Obtain and configure a Microsoft Azure account. For more information, refer the the Microsoft Azure documentation.
* Purchase the Mendix on Azure offering in the [Azure Marketplace](https://azuremarketplace.microsoft.com/).
* Familiarize yourself with the [Private Cloud](https://docs.mendix.com/developerportal/deploy/private-cloud/) concepts.

## Creating an Azure Cluster

To create a cluster for your Mendix on Azure app, perform the following steps:

1. In the Mendix Portal, in Private Cloud Cluster Manager, click **Mendix on Azure**.
2. Connect to your Azure account by clicking **Connect and Initialize**, and then logging in with the same account that you used to purchase the Mendix on Azure offering.

After you successfully connect the accounts, the Mendix Portal shows a list of available clusters (that is, any Azure clusters that you have already linked with Mendix) and initializable clusters (that is, any clusters that you have not yet linked with Mendix).

{{< figure src="/attachments/deployment/mx-azure/available-clusters.png" class="no-border" >}}

3. In the Microsoft Azure portal, add a new managed Mendix on Azure application with **Standard** as the plan.

{{< figure src="/attachments/deployment/mx-azure/create-managed-app.png" class="no-border" >}}

4. Provide a name for the resource group. The resource group contains all the resources that must be initialized for your Mendix deployment.

{{< figure src="/attachments/deployment/mx-azure/resource-group-name.png" class="no-border" >}}

5. Follow the **Create** wizard to create the managed application.

6. After the resource deployment finishes, click **Go to resource**, and then click **Mendix on Azure Portal**.

The managed app that you created is now visible as a new initializable cluster.

{{< figure src="/attachments/deployment/mx-azure/initializable-clusters.png" class="no-border" >}}

7. Click **Initialize**.

The preflight check launches to verify that the required resources can be registered in the cluster. Mendix apps are hosted with virtual images, so the preflight check determines whether the cluster contains the required type of virtual image. To view a list of the required resource providers, hover your cursor over the **Information** icon. If required, you can register any missing providers in the **Resource providers** section of the Microsoft Azure portal.

8. After the preflight check completes, click **Next**.

9. Select the **AKS Service Tier**.

You can choose any tier that suits your requirements. Higher tiers will incur higher costs.

10. Click **Initialize**.

The initialization process takes ca. 15 minutes. It creates a resource group in the managed app. It also automatically adds a namespace and cluster in Private Cloud portal, which you can use to create environments. For more information, see [Deploying a Mendix App to a Private Cloud Cluster](/developerportal/deploy/private-cloud-deploy/). The cluster cannot be deleted from the Private Cloud portal. If you want to remove it, you must delete it in the Microsoft Azure portal.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.