Changes for page Failover - Deploy Possibilities
Last modified by Erik Bakker on 2024/09/27 14:07
From 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
To version 28.113
edited by dfirdausy
on 2024/09/27 09:01
on 2024/09/27 09:01
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 - Flow Configuration1 +Setting up Failover - Deploy Phase - Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. ebakker1 +XWiki.dfirdausy - Content
-
... ... @@ -1,65 +1,85 @@ 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. 5 5 6 - Buildingonthisfunctionality,you canevenconfigurethegrouptorun inanactive/passive failovermodewhenyou activate the multipleruntimesoptionon yourruntime,andeachseparateruntimeisdeployedonanothermachine.Thefailover functionality isnotonlyrelevantincasesofservermaintenance.It canalsoassistyouwhenyou wanttoexchangedatawith asystemthat allowsonly oneactive connection.Shouldthis connectionbebusiness-critical,youcanuse thisfailoverfunctionalityto createapassivefailover situationthatwilltakeoverwhentheactiveconnection breaksdown (regardlessofthe reason).5 +In the previous microlearning, we discussed what needs to be done in the Create phase to enable failover for systems that are configured to have them in the Design phase. Next to that, we also discussed that setting up this failover functionality in your model requires you to execute some steps in your Design, Create, and lastly Deploy phase. Picking up from what we have toggled in the Create phase, in this microlearning, we will focus on the steps and configurations that you have to make in the Deploy phase to activate the active/passive failover functionality. 7 7 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 - 10 10 Should you have any questions, please get in touch with [[academy@emagiz.com>>mailto:academy@emagiz.com]]. 11 11 12 12 == 1. Prerequisites == 13 13 14 -* Intermediate knowledge of the eMagiz platform 11 +* Intermediate knowledge of the eMagiz platform. 15 15 16 16 == 2. Key concepts == 17 17 18 -This microlearning describes howtoconfigure (partsof)yourflow(s)to set upthegrouping and,if needed, the failover functionality on theflowlevel. The grouping functionality is relevant when faced with maintenance and outages of systems connected to your model. The failover functionalitynot onlyassists in that casebutalsoallows you to have a fallback option on an active connection.15 +This microlearning describes what configuration that you will have to do in the Deploy phase, based on what you have configured in the Design and Create phase, to enable failover for systems connecting with your model. The grouping and failover 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. 19 19 20 -== 3. FlowConfiguration ==17 +== 3. Deploy Phase Configuration == 21 21 22 -== 3.1 Grouping==19 +== 3.1 Deploy Architecture == 23 23 24 - To configuregrouping,weneedto opentheflowdesigneroftheflowinCreate.Wewantto edit andenter "Start Editing"mode. On theinboundcomponent(s)in theflow,wenowhave an "Advanced"tabthatallows you to configure thegroupinginformation.21 +After finishing up your configuration in the Create phase, you can then move to your Deploy>Architecture. Here, you will see the new router containers, which we have seen in the Design>Architecture, to be added to your external machines. When you press "Start Editing" in this page, and then press "Apply to environment", you will be faced with a pop-up page that informs you that these router containers will be created for this specific environment as shown in the screenshot below. 25 25 26 - [[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-flow-configuration-starting-point.png]]23 +{{info}}**Note**: what you see below is a typical situation where you already have two external machines deployed. Please refer to these microlearnings if you want to know more about [[deploying on-premise machine(s)>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.eMagiz Runtime Management.intermediate-emagiz-runtime-management-start-stop-flows.WebHome||target="blank"]] and [[apply to environment>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Platform.crashcourse-platform-deploy-understanding-deploy-architecture-basic||target="blank"]].{{/info}} 27 27 28 - {{info}}Note that theoptionsaboveare availableinallinboundcomponents. Theonechosenaboveissimplyanillustration of howtoconfigure.{{/info}}25 +[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-setting-up-failover-deploy-phase-router-containers.png]] 29 29 30 - Onceon the "Advanced" tab, you must define the group name.You can determine the group nameif this is the firstflow youare changing.In all subsequentflows, you want to add to thesame group, you must usethe **same** groupname.27 +== 3.2 Failover Balancing Preference == 31 31 32 - [[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-flow-configuration-define-group-name.png]]29 +Once you have applied the changes, when you go to the "Details" of each of those machines via right-clicking them, then you can find and set for each failover runtime the preferred machine to be the leader. As an example shown in the screenshot below, there are two runtimes that are enabled for failover and you can select whether that runtime running in that "External 01" machine is the preferred leader. Another option is to set the runtime that you select as the backup, or reset it back to "None" if you want. Next to that, notice that here you can find the "Internal IP address" and "Failover port" fields, which have been pre-filled in with property placeholders. We will comeback to these properties later in the following sections. 33 33 34 - Once filledin,ensurethat theautostartupconfigurationis set toYestoensurethat,ondefault, all flowswithinthegroupstart upwhen the containeris started.31 +[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-setting-up-failover-deploy-phase-failover-preference.png]] 35 35 36 - [[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-flow-configuration-define-auto-startup.png]]33 +When you have made your decision, and assuming that your machines are already deployed and running, then you can move to the other page discussed in the next section. 37 37 38 - Withinaruntimecontext, you can add multiple groups that can be stopped and started separatelyfromeach other. Inthisexample, we wouldalso like to have a group for our exits to stop them if the connectingsystem undergoes maintenance or is down to store the messages in the queue.35 +== 3.3 Deployment Plan == 39 39 40 - [[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-flow-configuration-starting-point-exit.png]]37 +If this is the first time that you configure your failover setup, then the next step in Deploy is to check your Deployment Plan. Here, you can add a deployment step called "Balance failover", which, when executed, will trigger the failover container(s) to be running on its preferred machine as you previously configured them in Deploy>Architecture. See the screenshot below. 41 41 42 -[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover- flow-configuration-other-group.png]]39 +[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-setting-up-failover-deploy-phase-balance-failover.png]] 43 43 44 - ==3.2Failover==41 +To make sure that this functionality works correctly, then this step should be placed at the end of your deployment plan (i.e., after the deployment of all runtimes). This is to ensure that all of the failover connector runtimes are running and reachable before electing the preferred runtime to be the leader and turning off the follower runtime. See the screenshot below as an example. 45 45 46 - When choosingthisoption, you will see the followingpop-up(assumingthe machine stillneedsto beconfigured). In this pop-up, you must choose between LinuxandWindowsas OS. Dependingon the serverOS you previouslyinstalledDocker, youmust selectLinux or Windows.43 +[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-setting-up-failover-deploy-phase-deployment-plan.png]] 47 47 48 - [[image:Main.Images.Microlearning.WebHome@emagiz-runtime-management--intermediate-runtime-management-os-selection.png]]45 +== 3.4 Deploy Release == 49 49 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]] 47 +Once you have configured your Deployment Plan, then it is time to create a new release for your updated flows in the Deploy>Release page. As you might have noticed in the Deploy>Architecture earlier when opening the "Failover" tab in your machines' "Details", there are properties regarding the machines' "Internal IP address" and "Failover port". Thus, you first need to fill in these property values in the environment that you are working on at the moment (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. 53 53 54 - Once the agentisinstalled,eMagiz canmanagethemachinetodeploynewruntimesorupdate runtimesasneeded.Also,thecontainerruntime canbecontrolledwithstart,stop,andresetcommands.Pleaseconsult this[[microlearning>>doc:Main.eMagiz Academy.Microlearnings.IntermediateLevel.eMagizRuntimeManagement.intermediate-emagiz-runtime-management-interpret-on-premise-logging.WebHome||target="blank"]]to inspecttheon-premises runtimelogs.49 +The idea here is that you fill in the IP address and the (open) port of the external machines. Thus, based on the example in the screenshot above, you can search for 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. 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. 55 55 51 +[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-setting-up-failover-deploy-phase-failover-properties.png]] 52 + 53 +When you are done, then you can save your changes, and proceed with creating a new release. For this, you will need to create a new release from your "Create phase", to include all configurations that eMagiz has provided in your now failover-enabled Create phase. Once you have done this, give the release a name and save it, then you can proceed with activating the release and deploy it. 54 + 55 +== 3.3 Trigger Failover == 56 + 57 +Once you have successfully deployed and run your release with the failover connector runtimes, then you can observe the follower and leadership status of your failover connector runtimes in your Deploy>Architecture. There, if you right-click your external machines (which have the failover connector runtimes) 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"]], under the "Groups" tab, you will find the "Group name", "Failover status", as well as the "State" the connector runtime is in at that moment (whether it is now On or Off). See the screenshot below as an example. 58 + 59 +[[image:Main.Images.Microlearning.WebHome@grouping-and-failover--intermediate-grouping-and-failover-setting-up-failover-deploy-phase-start-stop.png]] 60 + 61 +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. 62 + 56 56 == 4. Key takeaways == 57 57 58 -* The eMagiz Docker agent needs to be installed to allow runtime to be installed on the on-premises server 65 +* 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. 66 +* 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. 67 +* 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. 68 +* 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. 59 59 60 60 == 5. Suggested Additional Readings == 61 61 62 -There are no suggested additional readings for this microlearning.))) 72 +If you are interested in this topic and want more information, please read the help text provided by eMagiz and check out these links: 73 + 74 +* [[Crash Course (Menu)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.WebHome||target="blank"]] 75 +** [[Crash Course Platform (Navigation)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Platform.WebHome||target="blank"]] 76 +*** [[Understanding Deploy Architecture - Basic (Explanation)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Platform.crashcourse-platform-deploy-understanding-deploy-architecture-basic||target="blank"]] 77 +* [[Intermediate Level (Menu)>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.WebHome||target="blank"]] 78 +** [[eMagiz Runtime Management (Navigation)>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.eMagiz Runtime Management.WebHome||target="blank"]] 79 +*** [[Start/Stop Flows (Explanation)>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.eMagiz Runtime Management.intermediate-emagiz-runtime-management-start-stop-flows.WebHome||target="blank"]] 80 +*** [[eMagiz Deploy agent (Explanation)>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.eMagiz Runtime Management.intermediate-emagiz-runtime-management-start-stop-flows.WebHome||target="blank"]] 81 +* [[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"]] 82 +))) 63 63 ((( 64 64 {{toc/}} 65 65 )))