Changes for page Grouping - Deploy Possibilities
Last modified by Danniar Firdausy on 2024/09/27 09:18
From version 27.1
edited by Bouke Reitsma
on 2024/03/01 15:52
on 2024/03/01 15:52
Change comment:
There is no comment for this version
To version 42.1
edited by Erik Bakker
on 2024/03/29 13:32
on 2024/03/29 13:32
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. BoukeReitsma1 +XWiki.ebakker - Content
-
... ... @@ -3,7 +3,7 @@ 3 3 ((( 4 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. 5 5 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). 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). 7 7 8 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. 9 9 ... ... @@ -23,78 +23,45 @@ 23 23 24 24 [[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-deploy-possibilities-group-deployment-step.png]] 25 25 26 -{{info}}Note that the optionsaboveare availablein allinboundcomponents.Theone chosenbove issimplyanillustrationofhowtoconfigure.{{/info}}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}} 27 27 28 -Once on the "Advanced" tab, you must define the group name. You can determine the group name if this is the first flow you change. In all subsequent flows, you want to add to the same group, you must use the **same** group name. 29 - 30 -[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-flow-configuration-define-group-name.png]] 31 - 32 -Once filled in, ensure that the auto startup configuration is set to Yes to ensure that, on default, all flows within the group start up when the container is started. 33 - 34 -[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-flow-configuration-define-auto-startup.png]] 35 - 36 -Within a runtime context, you can add multiple groups that can be stopped and started separately from each other. In this example, we would also like to have a group for our exits to stop them if the connecting system undergoes maintenance or is down to store the messages in the queue. 37 - 38 -[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-flow-configuration-starting-point-exit.png]] 39 - 40 -[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-flow-configuration-other-group.png]] 41 - 42 42 == 4. Failover Deployment Step == 43 43 44 - Ifyouwant toexpandthe groupingfunctionalitytoincludeanactive/passivefailover component,you needtochangethe settingsonthe inboundcomponent.Apartfromspecifyingthegroup name,youneedto configure theauto-startupoptionon"No"sothefailoverconfigurationcantakethecorrectctions in allsituations.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). 45 45 46 -[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover- flow-configuration-failover-example-group.png]]32 +[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-deploy-disabled-failover.png]] 47 47 48 - [[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-flow-configuration-failover-other-group.png]]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. 49 49 50 - {{info}}Notethateachgroupwithinsingleuntimethatyouwant to treatdifferentlyneedso have**unique** name.{{/info}}36 +[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-deploy-possibilities-failover-deployment-step.png]] 51 51 52 -== 3.3FailoverInfra ==38 +=== 4.1 Failover Status Explained === 53 53 54 - The configuration of theinfra flow of theuntimefor whichyouwanttoconfigure thefailoverisdetailedandonly worksf you configureallsupportobjectscorrectly. Althoughweexplainthe various stepsinthedocumentation, we advise utilizingthe storeitem we createdforthis that will guideyou insetting this up correctly.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. 55 55 56 - Theconfiguration consists of at least three separate support objects.Two areneeded once (infinispan cache manager andclusteredlock registry), whereas the other is required per unique group you have defined within the context of your runtime.So, if you havetwo unique group names within the runtime, you need two leader initiatorsupportobjects.42 +=== 4.1.1 Leader Status === 57 57 58 - ===3.3.1InfinispanCacheManager===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. 59 59 60 - Giventhis, let us first look at the Infinispan cache manager.You can add this support object in the [[standard manner>>doc:Main.eMagizAcademy.Microlearnings.Crash Course.CrashCourse Platform.crashcourse-platform-create-support-objects-introduction||target="blank"]]by searching for "infinispan cache manager."46 +=== 4.1.2 Follower Status === 61 61 62 - [[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-flow-configuration-cache-manager-search-result.png]]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). 63 63 64 - Oncefound,give itanameandfill inaclustername.50 +=== 4.1.3 Disabled Status === 65 65 66 - [[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-flow-configuration-cache-manager-basic.png]]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. 67 67 68 - Oncedone,switch to the"Advanced" tab, selectthe option"TCP Ping," and fill in the"Host address" and "Other host addresses".Once filled in, pressSaveto keep your changes.54 +=== 4.1.4 Leader (single node) Status === 69 69 70 - [[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-flow-configuration-cache-manager-advanced.png]]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. 71 71 72 -=== 3.3.2 Clustered Lock Registry === 73 - 74 -Now that we have the cache manager, we can configure the next support object on our list, the clustered lock registry. You can add this support object in the [[standard manner>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Platform.crashcourse-platform-create-support-objects-introduction||target="blank"]] by searching for "lock registry." 75 - 76 -[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-flow-configuration-lock-registry-search-result.png]] 77 - 78 -Once found, name it and select the cache manager support object you created. 79 - 80 -[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-flow-configuration-lock-registry-basic.png]] 81 - 82 -=== 3.3.3 Leader Initiator === 83 - 84 -Lastly, we need to configure a leader initiator for each **unique** group we have defined within the context of the runtime, and that uses the failover functionality. You can add this support object in the [[standard manner>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Platform.crashcourse-platform-create-support-objects-introduction||target="blank"]] by searching for "leader." 85 - 86 -[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-flow-configuration-leader-initiator-search-result.png]] 87 - 88 -Once found, give it a name, define the role name (which should **exactly** match the name you gave in the inbound components), and link it to the lock registry. 89 - 90 -[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-flow-configuration-leader-initiator-basic.png]] 91 - 92 92 == 5. Key takeaways == 93 93 94 94 * Grouping is beneficial when external systems go through maintenance or downtime. 95 95 * 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 96 -* The role naming in both grouping and failover is crucial. The whole name needs to be matched fully to make it work. 97 -* For the infra configuration of the failover setup, we have a store item that you can use. 62 +* The role naming in both grouping and failover is crucial. The group name needs to match **exactly** to make it work. 63 +* You can control group and failover steps from the deployment plan. 64 +* Container inbounds can have a different failover status. 98 98 99 99 == 6. Suggested Additional Readings == 100 100