Changes for page Failover - Deploy Possibilities
Last modified by Erik Bakker on 2024/09/27 14:07
From version 28.94
edited by dfirdausy
on 2024/09/26 10:58
on 2024/09/26 10:58
Change comment:
There is no comment for this version
To version 15.1
edited by Erik Bakker
on 2024/03/01 09:40
on 2024/03/01 09:40
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,73 +1,65 @@ 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 -[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover- setting-up-failover-deploy-phase-router-containers.png]]26 +[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-flow-configuration-starting-point.png]] 24 24 25 - Once you have applied the changes, when you goto the"Details" of eachof those machines via right-clickingthem,then you can find and setfor each failover runtime the preferred machine to be the leader. As an example shown in the screenshotbelow, therearetwo runtimes thatare enabled for failoverand you can selectwhether that runtime runningin that "External01" machine is the preferredleader.Another optionis toset the runtimethat you select as the backup,or reset it back to "None" if you want.Nexttothat,noticethat here youcan find the"InternalIPaddress" and "Failoverport" fields,whichhave beenpre-filled in with property placeholders. We will comebacktothese propertieslaterinthefollowingsections.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 - [[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-setting-up-failover-deploy-phase-failover-preference.png]]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 - Whenyou havemadeyour decision,andassuming that yourmachines arealready deployedandrunning, then you canmovetotheotherpage discussedinthenext section.32 +[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-flow-configuration-define-group-name.png]] 30 30 31 - ==3.2DeploymentPlan==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 - If this is the first time that you configureyour failover setup, thenthenextstepin Deploy is tocheck the Deployment Plan.Here, youcan add a deployment step called "Balancefailover", which, whenexecuted, will trigger the failover container(s)to berunningonits preferredmachine as you previouslyconfiguredtheminDeploy>Architecture. Seethescreenshotbelow.36 +[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-flow-configuration-define-auto-startup.png]] 34 34 35 - [[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-setting-up-failover-deploy-phase-balance-failover.png]]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 - == 3.3 Deploy Release==40 +[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-flow-configuration-starting-point-exit.png]] 38 38 39 - Once you have configured your Deployment Plan, then it istime tocreate a new release foryour updated flowsintheDeploy>Release page. As youmight havenoticedin the Deploy>Architecture earlier whenopeningthe"Failover" tab in yourmachines' "Details",there are properties regardingthe machines' "Internal IP address"and "Failoverport". It is then becomesnaturalthat you first need tofill inthese property values in theenvironment that you are workingon at the moment (i.e., Testing, Acceptance, Production).42 +[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-flow-configuration-other-group.png]] 40 40 41 - Todo this, you can click the "wrench" icon on the right hand side beside the "Create phase" release and then press "New".In the pop-up presented to you, you can click the "Name" input field and then search for the property placeholder names that you saw earlier. The idea here is that you fill in the IP address and the (open) port of the external machines. Thus, based on the example 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 the correct value. The screenshot below shows an example of the end result. Once you have done so, then you can do the same for the other property (i.e., "external01.failover.port") and as well as the properties for the second machine.44 +== 3.2 Failover == 42 42 43 - [[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-setting-up-failover-deploy-phase-failover-properties.png]]46 +When choosing this option, you will see the following pop-up (assuming the machine still needs to be configured). In this pop-up, you must choose between Linux and Windows as OS. Depending on the server OS you previously installed Docker, you must select Linux or Windows. 44 44 45 - When youaredone, then you cansave your changes, and proceed withcreatinga new release. For this, youwillneedto create anew releasefromyour "Create phase", inordertoinclude all configurations thateMagiz has providedin your now failover-enabled Create phase. Once youhave donethis, give the release a nameand saveit, thenyou can proceed with activating the release and deploy it.48 +[[image:Main.Images.Microlearning.WebHome@emagiz-runtime-management--intermediate-runtime-management-os-selection.png]] 46 46 47 -== 3.3 Trigger Failover == 50 +Once you have selected the correct OS for you, the next step is to press "Save." This action will lead you to another pop-up showing the command that needs to be executed (with administrator rights) on the host machine. This way, the deploy agent is activated on the host machine. 51 +== 3.3 Failover Infra == 52 +[[image:Main.Images.Microlearning.WebHome@emagiz-runtime-management--intermediate-runtime-management-deploy-agent-command.png]] 48 48 49 -Once youhave successfully deployed andrunyour releasewiththefailoverconnectorruntimes,then you can observethefollowerand leadershipstatusofyour failoverconnector runtimesinyour Deploy>Architecture.There,if youright-clickyourexternalmachines(which havethe failoverconnectorruntimes)and select[["Start/Stop flows">>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.eMagiz Runtime Management.intermediate-emagiz-runtime-management-start-stop-flows.WebHome||target="blank"]],underthe "Groups"tab, you will find the "Groupname", "Failover status",as well asthe"State" the connectorruntimeisin at that moment (whether it isnow On orOff). See the screenshotbelow asan example.54 +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. 50 50 51 -[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-setting-up-failover-deploy-phase-start-stop.png]] 52 - 53 -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. 54 - 55 55 == 4. Key takeaways == 56 56 57 -* 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. 58 -* 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. 59 -* 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. 60 -* 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. 58 +* The eMagiz Docker agent needs to be installed to allow runtime to be installed on the on-premises server 61 61 62 62 == 5. Suggested Additional Readings == 63 63 64 -If you are interested in this topic and want more information, please read the help text provided by eMagiz and check out these links: 65 - 66 -* [[Intermediate Level (Menu)>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.WebHome||target="blank"]] 67 -** [[eMagiz Runtime Management (Navigation)>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.eMagiz Runtime Management.WebHome||target="blank"]] 68 -*** [[Start/Stop Flows (Explanation)>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.eMagiz Runtime Management.intermediate-emagiz-runtime-management-start-stop-flows.WebHome||target="blank"]] 69 -* [[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"]] 70 -))) 62 +There are no suggested additional readings for this microlearning.))) 71 71 ((( 72 72 {{toc/}} 73 73 )))