Changes for page Failover - Deploy Possibilities
Last modified by Erik Bakker on 2024/09/27 14:07
From version 28.110
edited by dfirdausy
on 2024/09/27 08:55
on 2024/09/27 08:55
Change comment:
There is no comment for this version
To version 16.1
edited by Erik Bakker
on 2024/03/01 11:59
on 2024/03/01 11:59
Change comment:
There is no comment for this version
Summary
-
Page properties (3 modified, 0 added, 0 removed)
Details
- Page properties
-
- Title
-
... ... @@ -1,1 +1,1 @@ 1 - Setting upFailover- Deploy Phase1 +Flow Configuration - Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. dfirdausy1 +XWiki.ebakker - Content
-
... ... @@ -1,81 +1,74 @@ 1 1 {{container}} 2 2 {{container layoutStyle="columns"}} 3 3 ((( 4 +eMagiz flows, or more specifically, the flow's inbound component(s), can be grouped. The effect is that you can later in [[Deploy>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Grouping and Failover.intermediate-grouping-and-failover-flow-configuration.WebHome||target="blank"]], control them as one entity. This is mainly beneficial when faced with substantial maintenance or outage of systems connected to your eMagiz model. 4 4 5 - In the previousmicrolearning,we discussedwhatneedstobedoneintheCreatephaseto enablefailoverfor systemsthat areconfiguredto have themintheDesignphase. Nextto that,wealsodiscussedthatsettingup thisfailover functionality inyourmodel requires youtoexecutesomesteps in yourDesign, Create,andlastlyDeployphase. Pickingupfromwhatwehave toggled intheCreatephase,in thismicrolearning,wewillfocusonthesteps and configurationsthatyouhaveto make in theDeployphase toactivatetheactive/passivefailover functionality.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 6 8 +In this microlearning, we will focus on configuring the flow to group various inbound components and configure the flow (including the infra) if you want to activate the active/passive failover configuration. 9 + 7 7 Should you have any questions, please get in touch with [[academy@emagiz.com>>mailto:academy@emagiz.com]]. 8 8 9 9 == 1. Prerequisites == 10 10 11 -* Intermediate knowledge of the eMagiz platform .14 +* Intermediate knowledge of the eMagiz platform 12 12 13 13 == 2. Key concepts == 14 14 15 -This microlearning describes what configurationthat youwill have todo inthe Deployphase, based on whatyou haveconfiguredinthe DesignandCreatephase, toenablefailover for systems connecting withyourmodel. The groupingandfailover functionality is relevant when faced with maintenance and outages of systems connected to your model. The failover functionality assists in that case andallows you to have a fallback option on an active connection.18 +This microlearning describes how to configure (parts of) your flow(s) to set up the grouping and, if needed, the failover functionality on the flow level. The grouping functionality is relevant when faced with maintenance and outages of systems connected to your model. The failover functionality not only assists in that case but also allows you to have a fallback option on an active connection. 16 16 17 -== 3. DeployPhaseConfiguration ==20 +== 3. Flow Configuration == 18 18 19 -== 3.1 Deploy Architecture==22 +== 3.1 Grouping == 20 20 21 - After finishing up yourconfiguration in theCreate phase, youcanthenmove toyour Deploy>Architecture.Here, you will seethenewrouter containers,whichwehaveseeninthe Design>Architecture,to be addedtoyourexternalmachines.Whenyou press"Start Editing"in thispage,andthenpress "Apply to environment", youwillbefacedwithapop-up pagethatinforms you that these routercontainers will becreatedforthis specific environmentas shown inthe screenshot below.24 +To configure grouping, we need to open the flow designer of the flow in Create. We want to edit and enter "Start Editing" mode. On the inbound component(s) in the flow, we now have an "Advanced" tab that allows you to configure the grouping information. 22 22 23 - {{info}}**Note**:what you see belowis a typical situationwhere you already have two externalmachinesdeployed.Please refer to these microlearnings if you want to knowmoreabout [[deployingon-premise machine(s)>>doc:Main.eMagiz Academy.Microlearnings.IntermediateLevel.eMagiz Runtime Management.intermediate-emagiz-runtime-management-start-stop-flows.WebHome||target="blank"]] and [[apply toenvironment>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Platform.crashcourse-platform-deploy-understanding-deploy-architecture-basic||target="blank"]].{{/info}}26 +[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-flow-configuration-starting-point.png]] 24 24 25 - [[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-setting-up-failover-deploy-phase-router-containers.png]]28 +{{info}}Note that the options above are available in all inbound components. The one chosen above is simply an illustration of how to configure.{{/info}} 26 26 27 -Once youhave applied the changes,whenyougotothe"Details" ofeach of those machinesvia right-clicking them,then youcanfindand setforeach failover runtimethepreferredmachine to be theleader.As anexampleshowninthescreenshotbelow, there are two runtimes that areenabledfor failoverandyoucan selectwhether that runtime runninginthat "External01" machine is the preferredleader.Another option istoset the runtimethat youselect as the backup,or reset it back to "None" ifyou want.Nexttothat,notice that here youcan findthe"Internal IP address"and "Failoverport" fields, which have been pre-filled in with propertyplaceholders.We will comebacktothesepropertieslaterin the followingsections.30 +Once on the "Advanced" tab, you must define the group name. You can determine the group name if this is the first flow you are changing. In all subsequent flows, you want to add to the same group, you must use the **same** group name. 28 28 29 -[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover- setting-up-failover-deploy-phase-failover-preference.png]]32 +[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-flow-configuration-define-group-name.png]] 30 30 31 - Whenyou havemadeyourdecision,and assumingthatyourmachinesarealreadydeployedand running,thenyoucanmovetothe other pagediscussed in the next section.34 +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. 32 32 33 - == 3.2 DeploymentPlan==36 +[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-flow-configuration-define-auto-startup.png]] 34 34 35 - Ifthisisthe firsttime that you configureyour failoversetup,thenthenextstepinDeployis tocheckyourDeploymentPlan. Here,youcan addadeploymentstepcalled"Balancefailover",which,when executed,willtriggerthefailovercontainer(s)to berunningon itspreferredmachineasyou previouslyconfiguredthemin Deploy>Architecture.See thescreenshot below.38 +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. 36 36 37 -[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover- setting-up-failover-deploy-phase-balance-failover.png]]40 +[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-flow-configuration-starting-point-exit.png]] 38 38 39 - Tomakesure that this functionality workscorrectly, then this step should beplaced at the end of yourdeployment plan (i.e., after the deployment of allruntimes). This is to ensure that all ofthe failoverconnectorruntimesarerunningandreachable beforeelecting the preferred runtime to be the leaderandturningoffthefollowerruntime. See the screenshot below as an example.42 +[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-flow-configuration-other-group.png]] 40 40 41 - [[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-setting-up-failover-deploy-phase-deployment-plan.png]]44 +== 3.2 Failover == 42 42 43 - ==3.3DeployRelease==46 +In case you want to expand the grouping functionality to include a active/passive failover component you need to change the settings on the inbound component. Apart from specifying the name of the group you need to configure the auto-startup option on "No" so the failover configuration can take the correct actions in all situations. 44 44 45 - Once you have configured your Deployment Plan, then it is time to create a new release for your updated flowsinthe Deploy>Release page. Asyou might have noticed in the Deploy>Architecture earlier whenopeningthe"Failover" tabin yourmachines' "Details", there are properties regardingthe machines' "Internal IP address"and "Failoverport". Itis thenbecomes natural that you first need to fill in these property values in the environment that you are working onatthemoment (i.e., Testing, Acceptance, Production). If you are unsure on how to do this,please refer to this [[Property Management>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Platform.crashcourse-platform-deploy-property-management-new.WebHome||target="blank"]] microlearning. The idea here is that youfill in the IP addressandthe (open) port of the external machines. Thus, basedonthe example in the screenshot above, you can searchfor the keyword "external01.failover.internal-ip" and then select it. Afterward, you can set this property as global for simplicity and fill in thecorrect value. Once youhave done so, then you can do the same for the otherproperty (i.e., "external01.failover.port") and as well as the properties for the second machine.48 +[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-flow-configuration-failover-example-group.png]] 46 46 47 -[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover- setting-up-failover-deploy-phase-failover-properties.png]]50 +[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-flow-configuration-failover-other-group.png]] 48 48 49 - Whenyou are done,then you cansaveyourchanges,and proceedwithcreatinga new release.Forthis, youwillneedto createa new release fromyour"Create phase", inordertoinclude all configurationsthateMagiz has providedin your nowfailover-enabledCreatephase.Once youhavedone this, give the releaseaname and saveit, then youcan proceedwith activating the releaseand deploy it.52 +{{info}}Note that each group within a single runtime that you want to treat differently needs to have a **unique** name.{{/info}} 50 50 51 -== 3.3 TriggerFailover ==54 +== 3.3 Failover Infra == 52 52 53 - Once youhavesuccessfully deployedandrun yourrelease withthe failoverconnectorruntimes,thenyoucan observe the followerandleadershipstatus ofyourfailoverconnector runtimesin yourDeploy>Architecture.There, if youright-clickyourexternalmachines(which havethefailover connector runtimes)andselect[["Start/Stopflows">>doc:Main.eMagizAcademy.Microlearnings.IntermediateLevel.eMagiz RuntimeManagement.intermediate-emagiz-runtime-management-start-stop-flows.WebHome||target="blank"]],underthe "Groups"tab, youwill findthe"Group name","Failoverstatus",aswellas the"State"the connectorruntime isin atthatmoment (whetheritisnowOnor Off). Seethescreenshotbelow as an example.56 +The configuration of the infra flow of the runtime for which you want to configure the failover is detailed and only works in case you configured all support objects correctly. Although we explain the various steps here in the documentation we advise to utilize the store item that we created for this that will guide you in setting this up correctly. 54 54 55 - [[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-setting-up-failover-deploy-phase-start-stop.png]]58 +The configuration consists of at least three seperate support objects. Two of them are needed once (infinispan cache manager and clustered lock registry) were the other is needed per unique group you have defined within the context of your runtime. So if you have two unique group names within the runtime you need two leader initiator support objects. 56 56 57 -The example above shows that, in that moment, the first runtime instance is currently active and acting as the Leader, while the second runtime instance that acts as the Follower is Off. You can also manually switch the leadership from one to another by clicking the Play or Stop button on the right-side. 60 +Given this let us first look at the infinispan cache manager 61 +[[image:Main.Images.Microlearning.WebHome@emagiz-runtime-management--intermediate-runtime-management-deploy-agent-command.png]] 58 58 63 +Once the agent is installed, eMagiz can manage the machine to deploy new runtimes or update runtimes as needed. Also, the container runtime can be controlled with start, stop, and reset commands. Please consult this [[microlearning>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.eMagiz Runtime Management.intermediate-emagiz-runtime-management-interpret-on-premise-logging.WebHome||target="blank"]] to inspect the on-premises runtime logs. 64 + 59 59 == 4. Key takeaways == 60 60 61 -* By enabling multiple runtimes across different machines, you can configure groups to operate in active/passive failover mode, ensuring continued operation during connection failures, system maintenances, or outages. 62 -* In the Deploy>Architecture section, users can configure the router containers and set preferred machines for failover runtime leadership. This ensures that systems are prepared to handle failover scenarios. 63 -* If users assigned the failover IP addresses and Ports properties as global properties, users must configure a "Balance failover" deployment step to trigger the failover container(s) to be running on its preferred machine as you previously configured them in Deploy>Architecture. 64 -* After deployment, users can monitor the failover status, including leadership roles, in Deploy>Architecture, and can manually switch between active (Leader) and backup (Follower) runtimes if needed. 67 +* The eMagiz Docker agent needs to be installed to allow runtime to be installed on the on-premises server 65 65 66 66 == 5. Suggested Additional Readings == 67 67 68 -If you are interested in this topic and want more information, please read the help text provided by eMagiz and check out these links: 69 - 70 -* [[Crash Course (Menu)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.WebHome||target="blank"]] 71 -** [[Crash Course Platform (Navigation)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Platform.WebHome||target="blank"]] 72 -*** [[Understanding Deploy Architecture - Basic (Explanation)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Platform.crashcourse-platform-deploy-understanding-deploy-architecture-basic||target="blank"]] 73 -* [[Intermediate Level (Menu)>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.WebHome||target="blank"]] 74 -** [[eMagiz Runtime Management (Navigation)>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.eMagiz Runtime Management.WebHome||target="blank"]] 75 -*** [[Start/Stop Flows (Explanation)>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.eMagiz Runtime Management.intermediate-emagiz-runtime-management-start-stop-flows.WebHome||target="blank"]] 76 -*** [[eMagiz Deploy agent (Explanation)>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.eMagiz Runtime Management.intermediate-emagiz-runtime-management-start-stop-flows.WebHome||target="blank"]] 77 -* [[Failover (Search Results)>>url:https://docs.emagiz.com/bin/view/Main/Search?sort=score&sortOrder=desc&highlight=true&facet=true&r=1&f_space_facet=0%2FMain.&l_space_facet=10&f_type=DOCUMENT&f_locale=en&f_locale=&f_locale=en&text=%22Failover%22||target="blank"]] 78 -))) 71 +There are no suggested additional readings for this microlearning.))) 79 79 ((( 80 80 {{toc/}} 81 81 )))