Setting up Failover - Deploy Phase
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.
Should you have any questions, please get in touch with academy@emagiz.com.
1. Prerequisites
- Intermediate knowledge of the eMagiz platform.
2. Key concepts
This microlearning describes what configuration that you will have to do in the Create phase, based on what you have configured in the Design 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.
3. Create Phase Configuration
3.1 Settings
After finishing up your configuration in the Design phase, you can then go to the Settings page on the top right corner of the Create phase. In this page, under the "Failover systems" tab in the "Transfer settings from design" section, you will find the system connector(s) that you can transfer the failover settings from Design. Please check the screenshot below as an example.
By pressing the "Transfer failover" button, eMagiz will regenerate the connector infra flow of that system as well as update the exit and entry flows connected to that system with the required settings. We will discuss these required settings and what components are affected in the following section.
3.2 Flow Configurations
As mentioned just now, by pressing that button in Create>Settings, eMagiz will configure the correct settings for you, so then you do not have to configure them manually by yourself. With that being said, this section focuses on showing you the components that are affected and keep you informed of the required components for the failover functionality to work correctly.
The first setting that eMagiz configures for you takes place in the connector infra flow of the system that you enable for failover from the previous step. The configuration in this infra flow requires of at least three separate support objects. Two support objects will be added here, which are the Infinispan Cache Manager and Clustered Lock Registry. From the screenshot below, you can see that eMagiz, by default, will give the "Cluster name" in the Infinispan Cache Manager as failover-<system technical name>. The other one that is also added is the Leader Initiator support object, which is required per unique group that you will have within the context of your runtime. eMagiz also automatically provides the "Role" name in this support object. It will be filled in with the same value as the "Cluster name" later when you have moved to the Deploy phase (e.g., failover-xctnln in the example below).
The second setting that eMagiz configures for you happens in the exit and entry flows that are connected to that system. Here, eMagiz configures for you (parts of) your flow(s) with the required setting to enable grouping for the failover functionality on the flow level. The configurations for grouping consist of the "Group" name and "Auto startup", which are available for all inbound components. See the screenshot below as an example of an inbound component that has its "Group" name and "Auto startup" configured by eMagiz automatically when enabling the failover functionality.
Again, in this part, you do not have to make any changes yourself. Once you are satisfied with the settings that eMagiz has configured for you, then you are finished in the Create phase and can move on to the Deploy phase that will be discussed in the next microlearning.
4. Key takeaways
- Grouping is beneficial when external systems go through maintenance or downtime.
- 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.
- The role naming in both grouping and failover is crucial. The whole name needs to be matched fully to make it work.
- For the infra configuration of the failover setup, we have a store item that you can use.
5. Suggested Additional Readings
If you are interested in this topic and want more information, please read the help text provided by eMagiz and check out these links: