Skip to content

Commit 05d2ca8

Browse files
Merge pull request #9268 from mendix/kk-pmp-secret
Kk pmp secret
2 parents 833966f + 0e3bc0f commit 05d2ca8

File tree

1 file changed

+56
-9
lines changed

1 file changed

+56
-9
lines changed

content/en/docs/private-platform/pmp-quickstart.md

Lines changed: 56 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,12 @@ aliases:
1111

1212
This document provides a comprehensive guide for installing Private Mendix Platform, along with its optional components, in your own Kubernetes environment.
1313

14+
The installer is integrated with the AWS Secrets Manager. If required, you can store some configuration in the the AWS Secrets Manager without setting up a storage plan, database plan, PCLM admin and Mendix admin info in the Private Mendix Platform installer.
15+
16+
{{% alert color="info" %}}
17+
Using a secret storage incorrectly may reduce the security of your app. Consult your secrets store provider to ensure that it is set up securely for your production environment.
18+
{{% /alert %}}
19+
1420
### Prerequisites {#prerequisites}
1521

1622
Private Mendix Platform depends on Mendix for Private Cloud for the installation and deployment of Mendix apps.
@@ -24,7 +30,7 @@ Before starting the installation process, make sure that you have all the necess
2430
* A domain.
2531
* For the PCLM component:
2632

27-
* Mendix Operator in version 2.11.0 or above
33+
* Mendix Operator in version 2.21.0 or above
2834
* A dedicated Postgres or SQLServer database server with public accessibility set to **Yes**.
2935

3036
* Optionally, if your Private Mendix Platform app requires its own certificate: a TLS certificate with HTTPS support.
@@ -40,7 +46,9 @@ Before starting the installation process, make sure that you have all the necess
4046
* An existing PostgreSQL database instance.
4147
* An optional Redis server version 6.2.0 or higher, for the task queue and cache. Using Redis is recommended for high availability, where you expect a high volume of webhook calls, or if you have multiple Svix servers. As a best practice, enable persistence in Redis so that tasks are persisted across Redis server restarts and upgrades.
4248

43-
## Installing and Configuring the Mendix Operator
49+
* If you plan to use the AWS Secret Manager, install an AWS provider at your cluster, as described in [Kubernetes Secrets Store CSI Driver](https://secrets-store-csi-driver.sigs.k8s.io/).
50+
51+
## Installing and Configuring the Mendix Operator {#install-operator}
4452

4553
To install and configure the Mendix Operator, perform the following steps:
4654

@@ -113,11 +121,11 @@ To install and configure the Mendix Operator, perform the following steps:
113121
5. Configure the namespace by doing the following steps:
114122
115123
1. Click **Configure Namespace**.
116-
2. Click **Database Plan** and fill out the required information.
124+
2. Optional: If you are not using the AWS Secret Manager, click **Database Plan** and fill out the required information.
117125
118126
{{< figure src="/attachments/private-platform/pmp-install2.png" class="no-border" >}}
119127
120-
3. Click **Storage Plan** and fill out the required information.
128+
3. Optional: If you are not using the AWS Secret Manager, click **Storage Plan** and fill out the required information.
121129
4. Click **Ingress** and fill out the required information.
122130
123131
{{< figure src="/attachments/private-platform/pmp-install3.png" class="no-border" >}}
@@ -131,7 +139,43 @@ To install and configure the Mendix Operator, perform the following steps:
131139
8. Click **Exit Installer** > **OK**.
132140
133141
{{< figure src="/attachments/private-platform/pmp-install5.png" class="no-border" >}}
134-
142+
143+
## Optional: Configuring the AWS Secret Manager
144+
145+
To use the secret provider option for your database plan or storage plan, configure the following keys in your AWS Secret Manager:
146+
147+
### Database Plan Keys
148+
149+
| Data Type | Key | Example Value |
150+
| --- | --- | --- |
151+
| Database type (for example, PostgreSQL) | **database-type** | `PostgreSQL` |
152+
| Database Jdbc Url | **database-jdbc-url** | `jdbc:postgresql://pg.example.com:5432/my-app-1?sslmode=prefer` |
153+
| Database host | **database-host** | `pg.example.com:5432` |
154+
| Database name | **database-name** | `my-app-1` |
155+
| Database user name | **database-username** | `my-app-user-1` |
156+
| Database password | **database-password** | |
157+
158+
### Storage Plan Keys
159+
160+
| Data Type | Key | Example Value |
161+
| --- | --- | --- |
162+
| Storage service name | **storage-service-name** | `com.mendix.storage.s3` |
163+
| S3 Storage endpoint | **storage-endpoint** | `https://my-app-bucket.s3.eu-west-1.amazonaws.com` |
164+
| S3 Storage access key id | **storage-access-key-id** | `AKIA################` |
165+
| S3 Storage secret access key | **storage-secret-access-key** | `A###################################` |
166+
| S3 subdirectory (or bucket name for S3-like storage systems) | **storage-bucket-name** | `subdirectory` |
167+
168+
{{% alert color="info" %}}
169+
Currently, only AWS S3 or S3-compatible providers are supported.
170+
{{% /alert %}}
171+
172+
### Administrator Passwords
173+
174+
| Data Type | Key |
175+
| --- | --- |
176+
| PCLM admin password | **pclm-admin-password** |
177+
| Private Mendix Platform admin password | **mx-admin-password** |
178+
135179
### Installing Private Cloud License Manager {#install-pclm}
136180
137181
Private Cloud License Manager is a required component of Private Mendix Platform. Before you install the Platform, install PCLM by doing the following steps:
@@ -225,7 +269,8 @@ Install the Private Mendix Platform by doing the following steps:
225269
3. Click **Configure**, and then specify the following parameters:
226270
227271
* **AppName** - The default app name is `mxplatform`. You can change it as required.
228-
* **DatabasePlan/Storageplan** - The name of the plan that you created previously.
272+
* **DatabasePlan** - If you want to use AWS Secret Manager, select **USE-Secret-Provider**; the installer then uses the database configuration set in AWS Secret Manager. Otherwise, enter the name of the database plan that you created in [Installing and Configuring the Mendix Operator](#install-operator).
273+
* **Storageplan** - If you want to use AWS Secret Manager, select **USE-Secret-Provider**; the installer then uses the storage configuration set in AWS Secret Manager. Otherwise, enter the name of the storage plan that you created in [Installing and Configuring the Mendix Operator](#install-operator).
229274
* **AppUrl** - The endpoint where you can connect to your running app. It must be a URL which is supported by your platform. If you leave it blank, Mendix Operator will create it.
230275
* **EnableTLS** - Allows you to enable or disable TLS for the Mendix app's Ingress or OpenShift Router. The default value is use the default settings.
231276
* **TLS option** - Allows you to use an existing `kubernetes.io/tls` secret containing the TLS certificate, or to provide the `tls.crt` and `tls.key` values directly.
@@ -238,11 +283,13 @@ Install the Private Mendix Platform by doing the following steps:
238283
239284
4. Click **Runtime**, and then specify the following parameters:
240285
241-
* **MxAdminPassword** - The password for the admin user. It must have at least one number, one upper case letter, one lower case letter and one symbol, with a minimum length of 12 characters.
286+
* **MxAdminPassword** - Optional. The password for the admin user, required if you are not planning to use the AWS Secret Manager. It must have at least one number, one upper case letter, one lower case letter and one symbol, with a minimum length of 12 characters.
242287
* **dtapmode** - For production deployments, leave this value set to **P**. For the development of the app, for example acceptance testing, set the value to **D**.
243288
* **ApplicationRootUrl** - Optional. Manually specify the URL of your Private Mendix Platform, for example, for use with SSO or when sending emails. For more information about this functionality, see [ApplicationRootUrl Needs to be Set Manually](/developerportal/deploy/private-cloud-operator/#applicationrooturl-needs-to-be-set-manually).
244-
245-
{{< figure src="/attachments/private-platform/pmp-install8.png" class="no-border" >}}
289+
* **Use Secret Provider** - Optional. Select this option to use the AWS Secret Manager. Selecting this option enables the following additional fields:
290+
* **Secret Provider** - Set to **AWS** by default.
291+
* **AWS-Role-ARN** - An [AWS role ARN](https://docs.mendix.com/developerportal/deploy/secret-store-credentials/#aws-secrets-manager) which can access the specified Secret Manager.
292+
* **AWS SecretManager Name** - The AWS Secret Manager name where the sensitive data is stored.
246293
247294
5. In the **Enabled Functions** section, select or clear the functions that you want to enable or disable:
248295

0 commit comments

Comments
 (0)