Wiki source code of Deploy Possibilities

Version 42.1 by Erik Bakker on 2024/03/29 13:32

Hide last authors
Erik Bakker 10.1 1 {{container}}
2 {{container layoutStyle="columns"}}
3 (((
BoukeReitsma 24.1 4 eMagiz flows, or more specifically, the flow's inbound component(s), can be grouped. How to configure this is explained [[here>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Grouping and Failover.intermediate-grouping-and-failover-flow-configuration.WebHome||target="blank"]]. This functionality is mainly beneficial when faced with substantial maintenance or outage of systems connected to your eMagiz model.
eMagiz 1.1 5
BoukeReitsma 34.1 6 Building on this functionality, you can even configure the group to run in an active/passive failover mode when you activate the multiple runtimes option on your runtime, and each separate runtime is deployed on another machine. The failover functionality is not only relevant in cases of server maintenance. It can also assist you when you want to exchange data with a system that allows only one active connection. Should this connection be business-critical, you can use this failover functionality to create a passive failover situation that will take over when the active connection breaks down (regardless of the reason).
Erik Bakker 14.1 7
BoukeReitsma 21.1 8 In this microlearning, we will focus on configuring the deployment plan to control various inbound compoments in a normal and in a failover configuration.
Erik Bakker 14.1 9
eMagiz 1.1 10 Should you have any questions, please get in touch with [[academy@emagiz.com>>mailto:academy@emagiz.com]].
11
12 == 1. Prerequisites ==
13
14 * Intermediate knowledge of the eMagiz platform
15
16 == 2. Key concepts ==
17
BoukeReitsma 25.1 18 This microlearning describes how to configure (parts of) your deployment plan to set up the grouping and, if needed, the failover functionality. The grouping functionality is relevant when faced with maintenance and outages of systems connected to your model. The failover functionality assists in that case and allows you to have a fallback option on an active connection.
eMagiz 1.1 19
BoukeReitsma 25.1 20 == 3. Group Deployment Step ==
eMagiz 1.1 21
BoukeReitsma 26.1 22 To configure a Group deployment step, you need to add a new deployment step and choose Step type "Group". To configure the step more information is required. A container should be chosen for which the inbounds will be stopped. The second requirement is the **exact** name of the group that should be affected by the deployment step. An action should be picked for the selected group. For a "Group" deployment step the options are to start or to stop the inbound components within the groupname. Optionally, a description can be added.
Erik Bakker 11.1 23
BoukeReitsma 27.1 24 [[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-deploy-possibilities-group-deployment-step.png]]
Erik Bakker 14.1 25
BoukeReitsma 36.1 26 {{info}}Note that when you activate the stop action in a failover setup (on the leader container), it will activate the failover behaviour on the follower container{{/info}}
BoukeReitsma 37.1 27
BoukeReitsma 25.1 28 == 4. Failover Deployment Step ==
Erik Bakker 14.1 29
BoukeReitsma 40.1 30 The configuration for a failover deployment step is the same as for the group deployment step. The only difference is the action you can activate. The stop group action stops the inbounds of the selected container. It will also disable the failover, so if a follower is configured, it will **not** take over. Instead, from this point, we are running in a standard multi-container setup in which we have single-node leaders (See 4.1).
BoukeReitsma 31.1 31
32 [[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-deploy-disabled-failover.png]]
33
Erik Bakker 39.1 34 The start group step with failover will activate the current container as the leader of the failover setup. Therefore, group names resembling those on other containers will become the followers. If these flows were running, they will be stopped.
eMagiz 1.1 35
BoukeReitsma 31.1 36 [[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-deploy-possibilities-failover-deployment-step.png]]
BoukeReitsma 30.1 37
Erik Bakker 39.1 38 === 4.1 Failover Status Explained ===
39
Erik Bakker 42.1 40 Within a failover setup, each inbound can have one of the below listed distinct states. This section explains briefly the meaning on each of the states.
Erik Bakker 39.1 41
BoukeReitsma 40.1 42 === 4.1.1 Leader Status ===
43
Erik Bakker 42.1 44 If the leader status is shown, it means that this container is the leader for this group. As a result, all inbound components with the same group name in this container are actively running.
BoukeReitsma 40.1 45
BoukeReitsma 41.1 46 === 4.1.2 Follower Status ===
BoukeReitsma 40.1 47
BoukeReitsma 41.1 48 The follower status is closely tied to the leader status. Inbounds with this status act as the backup if the active leaders stops. In that situation, the followers will take the Leader status. By default, the starting status of these inbounds is stopped (grey lightbulb).
BoukeReitsma 40.1 49
BoukeReitsma 41.1 50 === 4.1.3 Disabled Status ===
51
Erik Bakker 42.1 52 If the container inbounds have the status disabled the failover is inactive. This means that the components are stopped (grey lightbulb) but will not react in case the leader stops working. To continue failover behaviour please use the aforementioned steps in Deploy -> Architecture.
BoukeReitsma 41.1 53
54 === 4.1.4 Leader (single node) Status ===
55
Erik Bakker 42.1 56 The last possible status is the Leader (single node). This means that the inbound acts as a separate normal inbound with no (failover) connectivity to other containers with a similar configured group name. If this status occurs in a failover setup, there is a problem in the configuration of the inbounds, most likely in the configuration of the cache manager or with the port configuration.
BoukeReitsma 41.1 57
BoukeReitsma 25.1 58 == 5. Key takeaways ==
eMagiz 1.1 59
Erik Bakker 17.1 60 * Grouping is beneficial when external systems go through maintenance or downtime.
61 * Failover can have the additional benefit of having a fallback scenario while still adhering to the requirement that there can only be one active connection at a time
BoukeReitsma 34.1 62 * The role naming in both grouping and failover is crucial. The group name needs to match **exactly** to make it work.
BoukeReitsma 41.1 63 * You can control group and failover steps from the deployment plan.
64 * Container inbounds can have a different failover status.
eMagiz 1.1 65
BoukeReitsma 25.1 66 == 6. Suggested Additional Readings ==
eMagiz 1.1 67
Erik Bakker 12.1 68 There are no suggested additional readings for this microlearning.)))
Erik Bakker 10.1 69 (((
70 {{toc/}}
71 )))
72 {{/container}}
73 {{/container}}