Hi! Welcome to 'This is My Architecture.'
My name is Liz, and today I am here with Bashira
from IHS Markit.
-Hey Bashira, how's it going? -Doing great.
-Well thanks for joining us today. -Happy to be here.
Can you tell me a little bit about IHS Markit?
Yeah, IHS Markit offers information, analytics, technology,
and expertise to our customers, so they can be operationally efficient
and make well-informed decisions.
Excellent, and today we are going to be talking
about a virtual software training, right? -Yep.
So basically, we have a product called Kingdom.
It's a PETRA technical application.
And it's a very-- It requires high-end configurations
with GPU support to make it run.
And what we're doing is we're using AppStream
to deliver that software.
And, basically, whenever it's time for class
students just click on a streaming URL.
And that's it. It's ready to go.
So they can one-click, log in to AppStream
from pretty much any lightweight, end user device?
Yep, actually they don't even have to log in.
It's a streaming URL, so it's just Kingdom on the browser right there.
So what does that architecture look like, then?
Okay, so in order for Kingdom to run,
it has a license server, and we're using an EC2 for that.
And for Kingdom projects,
the storage for that, we are using a file system,
FSx for the file system, and then RDS for the database.
And basically all of that together makes Kingdom run.
So if an instructor is going to set up one of these classes,
what does the instructor need to do?
Okay, so these three resources
is what gets created for every single class, right?
And we wanted to give the instructors a very easy way
to have those running quickly without starting days in advance
and just, you know, accruing cost when it's not needed.
So we've provided them with CloudFormation templates
so that they can customize the images the way they need to,
and also create the resources very quickly.
So you mentioned that there are a few different kinds of classes.
What are in those CloudFormation templates?
Okay, so we are using--
Well obviously, these resources that we see, RDS and FSx
And, in addition to that,
you know, the images need to be customized, right?
And we need to get that as part of the CloudFormation template.
So we have introduced a custom resource.
And basically what this does
is it triggers a Lambda function.
And we want to be able to 'remote enter' the AppStream's image builder
and make the customizations that we need, wait for the image to be created,
and that can take about 20 to 45 minutes.
But with Lambda we can do that
for the 15-minute execution time max, right?
Yes, 15 minutes.
And we're using Systems Manager.
So basically, Lambda uses Systems Manager
to run a command on the EC2 right here.
And that does all the magic: it runs a script,
remotes into the AppStream image builder.
One of the customizations that's really important
is we have to modify a session script in the image builder.
Which will make sure that the FSx that just got provisioned in CloudFormation
is mounted whenever the customer logs onto AppStream
so that they can have access to their project.
Once that's done, the EC2 will send a signal back to CloudFormation
and we have a wait condition and handle over here.
So once one meets those requirements,
then AppStream is provisioned using the image we just created.
So it sounds like that's a great way
to ensure a really high quality user experience.
Are there any design considerations that have been made
for this architecture?
Yeah, so like I mentioned,
when we're recommending configurations to customers
when they're running Kingdom on their desktops,
we ask for very sophisticated, GPU-supported, CPUs, right?
But for classes, we don't need to use that for every single workflow.
It's going to be really expensive.
So unless a customer is doing 3D visualizations
on billions of data points,
we are sizing our fleet accordingly.
So the CloudFormation template gives the instructors parameters
to customize those as well.
That's a great way to align with cost optimization.
Andy other cost optimization moves you guys have made?
Yeah, so that's like a very easy switch we made with RDS.
Usually we have a full SQL server that's running there,
but we realized that our projects are very small for the training purposes.
So just switching from a full SQL server to a SQL express engine
reduced our cost by like 80%. -Wow.
Well thank you for walking me through the architecture, Bashira.
It's been very interesting to learn how IHS Markit
is enabling virtual, instructor-led training
for the Kingdom PETRA technical application.
Thank you for joining us on 'This is My Architecture.'
I look forward to catching you next time.