Welcome to 'This is My Architecture'.
Today I'm pleased to have Bastian Widmer from amazee.io.
Hi, Bastian.
Hey, thank you for having me.
Thank you for being here.
Okay, Bastian can you tell us a bit about amazee.io and Lagoon?
Certainly.
At amazee.io we built Lagoon,
which is our open source application delivery platform
where we help developers build their applications
and move it into Kubernetes
without actually needing too much knowledge on how communities work inside.
Okay, great.
And so maybe you can explain to us the flow
and how your developers can get an environment on your platform.
Yeah.
So here we have the developers.
They basically create code and push that into their Git repositories.
So in the Git repository, we have webhooks connected to Lagoon.
Lagoon listens on those repositories
and decides what needs to be done.
For example, as we are using infrastructure as a code, as a paradigm,
like everything you want to see deployed is defined in your Git repository.
So Lagoon sees, oh, you want a feature branch
or it says, oh, you opened a pull request,
so it will go to the hosting zones that we will talk into a bit
and then deploy everything we need.
Okay.
So I can see that you leverage EKS, both for Lagoon,
the core of your application and for the environment to provide to your developers.
Can you tell us a bit more about EKS and why you choose this service?
Yeah, so we started a few years ago with our journey into Kubernetes.
Back then Kubernetes didn't have all the features we needed
so we started out with the whole infrastructure in OpenShift
as over time, more and more features that we had in OpenShift
were reimplemented in Kubernetes, we started to move into Kubernetes.
So that's basically where we ended up, and it gives us much more flexibility
and the possibilities to stay on the bleeding edge of Kubernetes.
Great.
So here I can EC2 and EC2 Spots.
I can imagine that you leverage those instances from EKS, right?
Yes, so we have two things.
We have our base infrastructure is basically run
with normal EC2 instances.
So the whole base workload runs there.
We started our journey into Spot instances
for example, for development or non-productive infrastructure,
where we can tolerate a failure or termination of one of the pods.
Great, and what was the benefits of EC2 Spot?
What did you see?
EC2 versus EC2 Spot we see a cost benefit
between 70 and 90%.
Great, great.
Okay, great.
And at the bottom I can see several storage services.
Can you tell us a bit about those services?
Yeah.
So as I mentioned, Lagoon tries to understand what the developer wants to do.
What we do there is we try to be as transparent as possible
that people don't need to think which storage they need.
So on the EKS cluster, we have an operator running
that will figure out, oh, you need storage.
So it can be that you just start storing your files in EFS
because it's just normal assets that don't need anything specific,
or you have a workload that goes into an EBS volume
because it's more specialized, for example, a database
or search server, like OpenSearch or Solar.
Okay, talking about database
I can see Aurora here.
Yes.
We also use Aurora and that can be that the developer says, "Hey, I need a database."
So when you deploy during the deployment
Lagoon will through EKS tell you,
"Hey, I need a database" and an operator picks it up
and provisions a database for you and exposes it back to the project
as a set of secrets.
Okay, okay, great.
So on this database, I can see that you leverage the Graviton2 instances,
so the R6G.
Can you tell us a bit about this?
Yeah, so we were really stoked seeing ERM infrastructure
making its way into cloud.
And the logical first step for us was like starting where we see the least harm
or like the least problems.
And we started basically using it on non-production environments
to see, like, are there any regressions?
And we are fairly certain by now that there aren't,
so we start to move like more, more production workload into our R6Gs.
Great, great.
And another interesting point.
Yeah, you can use GP3, so it was announced last year in 2020.
When did you try and adopt this technology?
Yeah, so we basically jumped onto GP3
as soon as it got announced because GP3 gives us lower storage cost,
and it also helps us like with a better IOPS performance across the board.
So we started that mid-December with a few test workloads,
and then we used maintenance windows to just roll it out across every platform.
Great, great.
Very interesting.
Maybe what are your next challenges for this platform?
Our next challenges are basically tying everything back together.
So basically moving more from EC2 to EC2 Spot instances
that's something that we're already working on
using more of the new instances.
It's not everything on R6G yet,
but we are working on getting there.
And then making it like a well-rounded product
and lowering the costs,
but the new savings plans help us a lot doing that.
Okay, thank you.
Thank you for sharing Bastian.
You're welcome.
Thank you.
And thank you for watching 'This is My Architecture'.