Tip:
Highlight text to annotate it
X
Hello everyone I am Joydeep Biswas from Kaavo. In today’s
webinar I will give you an overview of how to easily port applications to different cloud
providers or to different cloud regions of the same provider using Kaavo’s IMOD. Starting
version 4.4 of Kaavo IMOD, using Kaavo System Definition users can define in detail how
their application should be deployed and managed on various cloud providers or regions. This
gives users full control over the behavior of their multi-tier distributed applications
on different clouds. This is especially useful in two use cases:
First: ISVs looking to make their applications available on all clouds:
Second: Disaster Recovery: In the first use-case ISVs can publish or
configure their applications once and users can run them on any cloud or region without
having to worry about the differences among clouds and regions. In the second use case
‘Disaster Recovery’ users can bring online their applications on the alternate cloud
provider using the same System Definition. Before showing you how these use-cases can
be performed, I will give you a brief overview of different IMOD functionalities that enable
them. An N-Tier system in IMOD consists of a number of server roles under different tiers.
Usually every role is assigned exactly one provider. But starting with this release,
it is possible to have multiple providers in a role. However, at any point of time only
one provider can be active. What I will show next is how we can edit provider assignment
to a role that is switch, add, and remove providers in a role.
So let me log into my IMOD account. This new feature is available on both the design and
manage page. Let me go to the design page first. I have to bring up the configuration
page where the UI for the new feature is available. And for that I am using the wizard for creating
a new system. Let me give the system an arbitrary name and click next. This brings up the system
configuration wizard. To access the feature I am talking about I have to click on the
‘Edit Provider’ icon here. The top item ‘Switch Provider’ switches to a different
provider defined in the selected server role. In other words, it makes an inactive provider
active. This role has only one provider defined so there is no provider to switch to. So,
If I click on it, it will give me an error message. However, using the second item ‘Add
Provider’, we can add new provider to the role. Let me just try that. I have to choose
from this list which particular provider I want to add. Let me choose ‘Rackspace’
which is the default and click add. This adds rackspace to the server role and also makes
rackspace the active provider for the role. This 3 letter text indicates the currently
active provider. Now as the role also has EC2 in it we can now switch to it. I’ll
bring up the Edit options again and then click ‘Switch Provider’. This time, instead
of giving an error it is allowing me to switch to Amazon which is the only alternate provider
for the role. I’ll click switch to actually switch to EC2. Now, if I want, I can also
remove a provider as there are two of them. I bring up the option again and choose ‘Remove
Provider’. The list is showing all the inactive providers. Only inactive providers can be
removed. I will not actually remove it; I will go back to the configuration page by
clicking this link here; btw the top link goes back to the option page. Now let me go
to the manage page. In the manage page, where we see only configured systems, only ‘switch
provider’ feature is available and it allows to switch to only configured providers. This
system has EC2 as an active provider for all roles and rackspace as an inactive provider.
Both EC2 and Rackspace are fully configured in the system. So, I can switch provider to
Rackspace. However, if rackspace was unconfigured then the switch would not be allowed.
Now I will move to the first use-case I mentioned which was ISVs being able to make their applications
available on multiple clouds and regions. Let’s discuss how that works. I have created
a multi-cloud template that runs the phpCollab application on both EC2 and Rackspace. And
this is the template here. It also runs EC2 in two regions .This is sufficient for demonstration
purposes but it is possible to extend the template to include other providers such as
IBM and also other EC2 regions or IBM locations. This template is available in the IMOD catalog
but it is not public yet ; I will make the template public after the webinar. I will
first show how a user can use such a template. To use a template a user has to configure
it and then deploy it. So, let me configure the template first. There are four server
roles in this template. Each role contains EC2 and Rackspace part. In each role exactly
one of the providers is active. In this template EC2 is active. If I configure the template
now only the EC2 part will get configured. But to configure a multi-cloud template, though
it is not mandatory, each part has to be configured to be useful. So, I have to configure say
EC2 first; then switch to Rackspace and configure it. Let me configure the EC2 part first by
following these blue prompts. This template has been tested for two EC2 regions, namely,
US-EAST-1, and US-WEST-1. And it remembers the imageId’s those regions were tested
with. US-WEST-1 is the currently chosen region. If I want to switch to US-EAST-1 IMOD will
automatically pick the imageid tested for that region. I will demonstrate this feature
later. So for now let me
click on this link to start the configuration. Select an EC2 account; select a keypair; select
a group; select ‘Apply this configuration to all servers in the System’ down here
and click configure. This configures EC2 for all roles in the template. Now, I will configure
Rackspace by first switching all the server roles to Rackspace. So, Edit Provider, Switch
Provider,Rackspace,Switch; second one, Edit Provider, Switch Provider, Rackspace, Switch
and so on and so forth. Now all roles have been switched to rackspace. In a future release
of IMOD, we will allow users to switch all roles together by a single click, in cases
where it is meaningful off-course. Now I’ll click on this blue link here to start rackspace
configuration; select an account; also select ‘Apply this configuration to all servers
in the System’; and then click configure. This finishes configuration for both EC2 and
Rackspace. I will click ‘I will deploy later’ to view the system in the manage page. Now
the template is fully configured to run on both EC2 and Rackspace. Rackspace is currently
the active provider. If I deploy the system as it is the deployment would be in rackspace.
If I want to deploy it in EC2, I have to switch the system to EC2. I will do that by switching
all the roles in it to EC2. First one,Second one. Now the system is ready to deploy in
EC2 instead of rackspace. Region-wise, this system has US-WEST-1 as the active region.
But it is also designed and tested to run in US-EAST-1. Let me switch the system to
US-EAST-1 region. To do that I have to bring up edit/configuration window and go to regions
tab and switch the region to US-EAST-1 and then reconfigure it. I will double-check this one
and also this one. Now all the regions are switched to
the US-EAST-1. Now let me deploy the system by clicking on the start button here. The
system is deploying in EC2 US-EAST-1 region. But I could deploy them in EC2 US-WEST-1 or
Rackspace very easily too. It is evident that the second use-case ‘Disaster Recovery’
can be easily performed by switching to an alternate cloud or region using the same method
described here. That is how a user can use a multi-cloud template.
I will briefly go over how an ISV can create such a template. For that I have to use the
wizard for creating a system which is on the design page. Let me create a two tier system.
Using this wizard only one provider can be assigned to a server role. So I will choose
EC2 as one of the providers and add rackspace later from the configuration page by adding
a new provider. Now, I will add Rackspace as an alternate provider. So Edit provider,
Add Provider,rackspace, add;Same for the second role. Next I have to configure all the providers
and choose appropriate images while doing so. If a provider has multiple regions, we
can test one image for each region so that user can use the system in those regions without
difficulty. We can configure multiple regions with appropriate images for those regions
by configuring the server roles multiple times. To show that let me first switch to EC2; then
configure for region US-EAST-1 with say this image. Then reconfigure for US-WEST-1 for
some other image. IMOD is now querying EC2 to fetch a list of available images. Let me
select this image and configure. IMOD remembers which image works for which region.
After this I have to create necessary actions and events depending on the behavior of the
system using these links here. How exactly to do that is out of scope for this webinar;
so, I will not go into details. However, I would like to mention two important points
here. First One; while creating actions try to use common server attributes as much as
possible while referring to server objects in your actions. That will make it easier
for you to share actions among multiple providers. For details refer to this url here. Second;
while editing standard event only the ones for the currently active provider gets edited.
So, currently active provider here is ec2 so if I edit a standard event here the changes
would be reflected in the ec2 part of the template not the rackspace part. For more
details on how this new feature works under the cover refer to this link here.
With this I will move to the Q&A section of the webinar. Attendees, please ask you questions
in the questions window. I will wait for a couple of minutes.
There is a question. In the manage page only ‘Switch Provider’ option is allowed; How
to add a new provider to a system in the manage page. That’s a good question. So adding
new provider is allowed in the configuration page under the design page. So, we have to
move the system to there. To do that, export your system by clicking on ‘export system’
button in the definition tab. Let me go to the manage page, definitions tab and here
is the ‘export system’ button so by clicking here you will be able to export your system
definition to your local hard drive. I have already done so before so I will not do that
again. Then go to the design page and select this option then click on ‘import system’
and select the template you exported to your local hard drive. And it will import your
system to IMOD and also will bring up this page. Where from you can access the ‘Edit
Provider’ feature’ and your new provider and also configure it as I discussed before
in the webinar. I think that answers that question. I will wait for some time. Seems
that no more questions. With this I will end my part of the webinar.
Thanks everyone for attending this. I hope you found it useful.