Sunday, March 31, 2019

Ever thought there is a way for Self healing & hassle free highly available maximo infrastructure  with AWS?

Prerequisites to understand this architecture you should be able to correlate the basics of aws terminologies and the quick launch instances associate security groups and access them.
Lets start now !!

High level componets overview:
Final outcome of infrastructure would be like below.

The Steps to create this Highly Available Websphere DMGR on AWS Cloud:
If your client plans for a private subnet and doesn’t need the maximo to be exposed to the internet boot a bastion host which is exposed to internet and associate a private subnet to it.
Now boot a instance which we will call it as Base AMI to provision the rest infrastructure.
Create a VPC associate a privatesubnet,security group to allow all WAS specific ports.
ftp to the instance and upload the WAS software on it. Just install WAS with no creation of the profiles and other configurations. Once done take an AMI out of this and name it as Base AMI.
Which can be later moulded to DMGR or node at later stages.
Now boot another server from the created Base AMI which will be used to create the DMGR profile.Now create the required clusters for the Maximo isolation of functionalities.
Once its done make the DMGR as a service on startup. Create an AMI out of this instance and name that as DMGR-AMI. Create a Launch Configuration/ ASG( Auto Scaling group) with scaling policy of min-max of 1.

Now lets start the Node configurations :
Boot an instance out of  BASE AMI and start the node configurations. If you wish to automate this creation just script it with the handy shell scripts. Process goes like this.
In this case we require two scripts which will be taking care of on boot and on terminate should have the following functionalities
a.create a was node profile
b. federate the node to the DMGR
c. Add it to the WAS cluster
d. Add the node startup and shutdown as a service on startup should have the following functionalities
a.      Remove the nodes
b.      Delete the Cluster
c.      Grace shutdown services
d.      If you have the leverage to use all services of AWS you can also achieve the terminate scripts using AWS lambda functions. Create a lambda function to do a grace cleanup of all the necessary commands and do a final terminate signal to the instance in the ASG.
Its done now !! Lets take an AMI out of this and Name this as Node AMI.
Now do the same steps as DMGR. Create a  Launch Configuration/ ASG( Auto Scaling group) with scaling policy of min-max of 2.
Upon Creation of Node ASG In the WAS admin console you should see a new node federated and a new server added to the Cluster.
Upon shutdown you should see the node and server removed from the WAS admin console.
If you have a expertise skills with aws cfn templates you can still do granular infrastructure automation via templating them for future spinup of environments.
We have a fully functional HA Self healing Maximo Infrastructure in AWS !! Now all we need to do is just deploy the applications and start working.
By default IBM DB2 provides Disaster recovery functionality if you are using DB2. So we are 99.99% fail proof in both app servers and database.