Skip to content
Merged
Show file tree
Hide file tree
Changes from all 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
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ Private Mendix Platform supports least privilege by requiring explicit configura

Private Mendix Platform provides a build agent to orchestrate build pods. Build agent implements a secure, ​​least-privilege access model​​ for creating Pods within the Kubernetes cluster. The core concept is to ​​decouple the external user's permissions from the internal service's capabilities​​ by leveraging Kubernetes RBAC (Role-Based Access Control).

##### Connected Mode Deployment
##### Interactor-Agent Deployment

This supports least privilege by centralizing deployment functions in the operator and agent model and limiting the number of users who need direct cluster administration rights. Initial cluster registration and operator installation may still require elevated infrastructure permissions, but ongoing application deployment and environment management can be delegated through Private Mendix Platform without granting broad cluster privileges to all app-level users.

Expand All @@ -60,8 +60,8 @@ Private Mendix Platform associates access with apps, groups, namespaces, and rol
### Customer Responsibility

* The customer cluster admin uses the Private Mendix Platform installer to grant these permissions to the build agent component.
* The customer must correctly install components related to connected mode deployment, such as Interactor, Collector, and Authenticator.
* The customer's administrator must properly grant specific people access to the cluster and namespace management for connected mode deployment.
* The customer must correctly install components related to Interactor-Agent mode deployment, such as Interactor, Collector, and Authenticator.
* The customer's administrator must properly grant specific people access to the cluster and namespace management for Interactor-Agent mode deployment.
* The customer must grant proper permissions to give the Private Mendix Platform `mxpc-cli` access to the destination Kubernetes cluster. After that, a piece of script must be executed with `mxpc-cli`.
* Customers must configure Private Mendix Platform roles, group and app ownership, and approval workflows, so that CI/CD and deployment actions are performed only by explicitly authorized users and services
* App implementers and App operators must connect to the customer's IdP of choice, use Private Mendix Platform roles, group ownership, environment separation, application-level security, and controlled approval-based deployment processes, so that users and teams receive only the minimum access required for development, operations, and production deployment.
Expand Down Expand Up @@ -155,11 +155,11 @@ subjects:

### Customer Responsibility

#### Connected Mode Deployment
#### Interactor-Agent Deployment

* Customers can use the installer to install components related to connected mode deployment.
* The customer organization must employ the principle of least privilege, allowing only authorized accesses for users (or processes acting on behalf of users) which are necessary to accomplish connected mode namespace configuration.
* Customers can place one valid kubeconfig file which will grant `mxpc-cli` access to the destination cluster, and then execute the command line script shown in the **Installation** tab of the cluster namespace **Details** page in connected mode.
* Customers can use the installer to install components related to Interactor-Agent mode deployment.
* The customer organization must employ the principle of least privilege, allowing only authorized accesses for users (or processes acting on behalf of users) which are necessary to accomplish Interactor-Agent mode namespace configuration.
* Customers can place one valid kubeconfig file which will grant `mxpc-cli` access to the destination cluster, and then execute the command line script shown in the **Installation** tab of the cluster namespace **Details** page in Interactor-Agent mode.

## Proof and Remarks

Expand All @@ -171,7 +171,7 @@ Kubernetes privilege credentials are removed from the build configuration.

{{< figure src="/attachments/private-platform/nist-ac/nist-ac-06-2.png" class="no-border" >}}

### Connected Mode Components Installation
### Interactor-Agent Mode Components Installation

{{< figure src="/attachments/private-platform/nist-ac/nist-ac-06-3.png" class="no-border" >}}

Expand Down
8 changes: 4 additions & 4 deletions content/en/docs/private-platform/quickstart/pmp-quickstart.md
Original file line number Diff line number Diff line change
Expand Up @@ -311,17 +311,17 @@ The installer does not catch your pod's running status. In case of issues, verif

If you want to uninstall Svix, you must do it manually, by running the following command: `helm helm uninstall svix-server -n=<Private Mendix Platform namespace>`.

## Optional: Installing Private Cloud Components for Connected Mode
## Optional: Installing Private Cloud Components for Interactor-Agent Mode

Private Mendix Platform now supports installation in [Connected mode](/developerportal/deploy/private-cloud/#connected-clusters). To enable this functionality, you must install the relevant Private Cloud components.
Private Mendix Platform now supports installation in Interactor-Agent (called [Connected mode](/developerportal/deploy/private-cloud/#connected-clusters) in Mendix on Kubernetes). To enable this functionality, you must install the relevant Private Cloud components.

{{% alert color="info" %}}
As of Private Mendix Platform 2.6, some functionalities are not yet available in Connected mode, and will be added in future releases. For more information, see [Known Issues](/releasenotes/private-platform/2-6/#known-issues).
As of Private Mendix Platform 2.6, some functionalities are not yet available in Interactor-Agent mode, and will be added in future releases. For more information, see [Known Issues](/releasenotes/private-platform/2-6/#known-issues).
{{% /alert %}}

### Database Prerequisites

To enable connected mode, you must create the database Authenticator and Collector, and install NATS at your cluster.
To enable Interactor-Agent mode, you must create the database Authenticator and Collector, and install NATS at your cluster.

* For the Authenticator, run the following commands:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ Before sending, ensure that the logs do not contain sensitive information your o

### Help Me Package

If the issue is related to a specific Mendix application, navigate to **Private Mendix Platform Portal > Logs & Events > Help Me**, and download the generated .zip package. Attach this file to your request, in addition to the automated log archive.
If the issue is related to a specific Mendix application, navigate to **Private Mendix Platform Portal > Logs & Events > Help Me**, and download the generated .zip package. Attach this file to your request, in addition to the automated log archive. For more information about the **Help Me** function, see [Private Mendix Platform Events and the Help Me Function](/private-mendix-platform/support-help-me/).
Comment thread
katarzyna-koltun-mx marked this conversation as resolved.

## Supplemental Data

Expand Down
141 changes: 141 additions & 0 deletions content/en/docs/private-platform/support/pmp-support.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,141 @@
---
title: "Private Mendix Platform Events and the Help Me Function"
linktitle: "Events and the Help Me Function"
url: /private-mendix-platform/support-help-me/
description: "Documents the handling of app events and the Help Me functionality of Private Mendix Platform."
weight: 20
---

## Introduction

Private Mendix Platform handles app events and **Help Me** functionality slightly differently for Standalone and Interactor-Agent modes. For more information about the differences, refer to the following sections.

## App Events

{{< figure src="/attachments/private-platform/pmp-events1.png" class="no-border" >}}

Event retrieval is always centralized for security reasons. In addition to that, depending on deployment mode, keep the following considerations in mind.

### Standalone Mode

In Standalone mode, Private Mendix Platform retrieves Kubernetes events directly using the Kubernetes API. Only real-time events are supported. Historical events (for example, older than one hour) cannot be retrieved in Standalone mode.

When creating a new cluster in the Cluster Manager, customers must configure their Kubernetes token with the appropriate permissions to allow Private Mendix Platform to retrieve these events, as in the following example.

{{% alert color="info" %}}
The code sample is intended to show the range of available options. It is presented as example only, and may require significant adaptation to work in your own environment.
{{% /alert %}}

```text
# create ServiceAccount, ClusterRole, and ClusterRoleBinding
kubectl apply -f << EOF -
apiVersion: v1
kind: ServiceAccount
metadata:
name: mxplatform-cicd
namespace: kube-system
---
apiVersion: v1
kind: Secret
metadata:
name: mxplatform-cicd
namespace: kube-system
annotations:
kubernetes.io/service-account.name: mxplatform-cicd
type: kubernetes.io/service-account-token
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: mxplatform-cicd
rules:
- apiGroups:
- ""
resources:
- namespaces
verbs:
- list
- apiGroups:
- ""
resources:
- deployments
verbs:
- get
- list
- watch
- apiGroups:
- ""
resources:
- pods
verbs:
- get
- list
- apiGroups:
- ""
resources:
- pods/log
verbs:
- get
- apiGroups:
- ""
resources:
- events
verbs:
- get
- list
- apiGroups:
- privatecloud.mendix.com
resources:
- storageplans
verbs:
- list
- apiGroups:
- privatecloud.mendix.com
resources:
- mendixapps
verbs:
- '*'
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: mxplatform-cicd
subjects:
- kind: ServiceAccount
name: mxplatform-cicd
namespace: kube-system
roleRef:
kind: ClusterRole
name: mxplatform-cicd
apiGroup: rbac.authorization.k8s.io
EOF

# get service account token:
kubectl get secret mxplatform-cicd -nkube-system -o jsonpath='{.data.token}'|base64 -d
# for openshift cluster
kubectl get secret mxplatform-cicd -nkube-system -o jsonpath='{.metadata.annotations.openshift\.io/token-secret\.value}'
```

### Interactor-Agent Mode

In Interactor-Agent mode, both container logs and events are retrieved from the Grafana API.

For event retrieval from Grafana, Private Mendix Platform uses the *Kubernetes Event Exporter for Grafana* method.

Customers must configure the Kubernetes Event Exporter within their environment to ensure events are visible in Grafana (typically through Loki), before Private Mendix Platform can access them. For more information, see [Grafana Integration for Private Mendix Platform](/private-mendix-platform/grafana/).

## Help Me Functionality

{{< figure src="/attachments/private-platform/pmp-events2.png" class="no-border" >}}

The **Help Me** button provides comprehensive debugging and analysis information, which you can share with support for efficient troubleshooting.

Clicking the **Help Me** button generates a debug file that includes the following:

* Basic application information (for example, the application name)
* Environment details
* Current pod and container logs (for example, Mendix and M2EE container logs)
* Current event information, sourced from the following:

* In Standalone mode - Current Kubernetes events retrieved directly through the Kubernetes API
* In Interactor-Agent mode - Container logs and event information retrieved from the Grafana API, leveraging the same integration used for general event retrieval.
4 changes: 2 additions & 2 deletions content/en/docs/releasenotes/private-platform/2/2.6.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,9 +22,9 @@ To increase safety and protect potentially sensitive information, you can now en

#### Improvements

##### Enhanced Support for Connected Mode for Private Mendix Platform
##### Enhanced Support for Interactor-Agent Mode for Private Mendix Platform

For installation in [Connected mode](/developerportal/deploy/private-cloud/#connected-clusters), Private Mendix Platform now supports the following, previously unsupported functionalities:
For installation in Interactor-Agent mode (called [Connected mode](/developerportal/deploy/private-cloud/#connected-clusters) in Mendix on Kubernetes), Private Mendix Platform now supports the following, previously unsupported functionalities:

* Environment Overview dashboard
* Metrics & Logs page
Expand Down
10 changes: 5 additions & 5 deletions content/en/docs/releasenotes/private-platform/2/2.7.md
Original file line number Diff line number Diff line change
Expand Up @@ -91,11 +91,11 @@ We have improved the UI and UX for the following functionalities:
* (General) We have solved an issue where the **Edit in Studio Pro** button for Private Mendix Platform apps did not work.
* (General) We have solved an issue where users could not open the **App URL** link on the **Environment Details** page. This issue affected instances running in Standalone mode.
* (General) We have solved some issues that occurred when selecting custom resources during environment creation.
* (General) We have fixed some build issues that occurred in Connected mode.
* (General) We have fixed some issues related to deploying app packages in Connected mode.
* (General) We have fixed an issue related to scaling replicas in Connected mode.
* (General) We have fixed some issues related to setting runtime settings in Connected mode.
* (General) We have fixed an error that prevented users from saving their changes after updating log nodes in Connected mode.
* (General) We have fixed some build issues that occurred in Interactor-Agent mode.
* (General) We have fixed some issues related to deploying app packages in Interactor-Agent mode.
* (General) We have fixed an issue related to scaling replicas in Interactor-Agent mode.
* (General) We have fixed some issues related to setting runtime settings in Interactor-Agent mode.
* (General) We have fixed an error that prevented users from saving their changes after updating log nodes in Interactor-Agent mode.
* (General) We have fixed an error that was preventing users from deleting log nodes in Standalone mode.
* (General) We have solved some issues with deployment pipelines which include a Wait Rest Call (WRC) step.
* (General) We have fixed an issue where the Debugger password was not visible in Private Mendix Platform UI after being set through API.
Expand Down
4 changes: 2 additions & 2 deletions content/en/docs/releasenotes/private-platform/2/2.8.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,9 +30,9 @@ You can now use Helm and Helmfile in order to automate the declarative installat

We have significantly updated the functionality of [Maia Make](/refguide/maia-make/), and provided a new LLM Gateway component to help you configure Maia for Studio Pro 11.12 LTS. For more information, refer to the [Private Mendix Platform Quickstart Guide](/private-mendix-platform/interactive-installation/#maia).

##### Connected Mode Enhancements
##### Interactor-Agent Mode Enhancements

To support deployments in Connected mode, we have provided the following enhancements:
To support deployments in Interactor-Agent mode, we have provided the following enhancements:

* You can now configure custom HTTP headers in the **Network and TLS** tab of the **Environment Details** page.
* You can configure constants and schedule events by importing and exporting a yaml file on the *Model Options** tab of the **Environment Details** page.
Expand Down
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