Some questions regarding Cluster Management

0
Hi Experts,   Last week I found out about Cluster Management and I have some questions there.   - What is it exactly? - What is the difference / relation between Cluster Management and Garbage Collection, as both seem to clean up unused stuff on the server? Or is Cluster Management part of the Garbage Collection? - I see that Cluster Management is performed by the cluster leader, but on the acceptance environment i did some work on we only have 1 node and yet Cluster Management is done as i can see. So Cluster Management is always done, even if there is only one node? So every node, even if there is only one node, is in a cluster?   I did find this documentation https://docs.mendix.com/refguide/clustered-mendix-runtime/, but it left me with above questions.   Thanks for your time & regards,   Tim
asked
3 answers
3

Garbage collection is just one aspect of the management of your app on your server(s). Clustermanagement involves all other aspects necessary to maintain your server(s). An artificial friend of mine phrases it quite eloquently like this:

In Mendix, "clustermanagement" typically refers to the management and administration of a cluster of Mendix applications. This involves overseeing multiple instances of Mendix applications that are running together to ensure scalability, reliability, and performance. Here are some key aspects of cluster management in Mendix:

1. Scaling: Automatically or manually adjusting the number of application instances based on load to ensure optimal performance and resource utilization.

2. Load Balancing: Distributing incoming traffic evenly across the application instances to prevent any single instance from becoming a bottleneck.

3. Monitoring: Keeping track of the performance and health of all instances in the cluster, including resource usage, response times, and error rates.

4. Fault Tolerance: Ensuring that the application remains available and functional even if one or more instances fail. This often involves automatic failover and redundancy strategies.

5. Deployment: Managing the deployment of new versions of the application across the cluster with minimal downtime and disruption. This may include rolling updates and blue-green deployments.

6. Configuration Management: Ensuring that all instances in the cluster have consistent configurations and are running the appropriate versions of the application and its dependencies.

7. Security: Implementing security measures to protect the applications and data within the cluster, including encryption, access controls, and secure communication between instances.

In a Mendix environment, cluster management may involve using tools and platforms like Kubernetes for container orchestration, Mendix Cloud for application deployment and management, and various monitoring and logging solutions to keep track of application health and performance.

answered
0

This documentation you mention is more for understanding how the mendix runtime works in a cluster model. And when we talk about clusters, we're usually talking about Kubernetes or Openshift. Here is the mendix Private cloud documentation https://docs.mendix.com/developerportal/deploy/private-cloud/ and its related topics. In its documentation, the cluster management process is done by the Pod Master and yes, it will always do these actions, 

Session cleanup handling

Cluster node expiration handling if more de one Pod. 

Background job expiration handling 

Unblocking blocked users

Cleanup unreferenced files

Executing Scheduled Events I think it now orchestrates the execution but distributes it if it's in multithead.

Performing database synchronization after new deploy Master pod apply DDL database change and Pods Slaves They wait until it's over 

Clear persistent sessions after new deploy 

 

 

answered
0

Hello all, 

 

Apologize for riding on this thread but if Kubernetes or OpenShift is not used, is it still possible to setup a third party load balancer (similar to those like IIS ARR) so that it can perform the actions that the cluster leader does? (session cleanup, cluster node cleanup, background job expiring ,etc) (as mentioned in this link: https://docs.mendix.com/refguide/clustered-mendix-runtime/#cluster-leader-follower)

Because in my organization we have to follow the existing architecture guidance, so we have an existing standard of load balancer. k8s or openshift is not yet recommended.

answered