Transcript
This transcript was autogenerated. To make changes, submit a PR.
Hello, everyone.
Welcome to cloud native 2025 from conf 40 to conference.
I'm Gayatri Jehanmohan.
I am going to talk about Kubernetes for industrial IOT ecosystem.
I'm a software engineer at Microsoft and we'll get into the talk today.
So the first thing I want to talk about is what are the different architecture that
is out there for industrial ecosystem?
So the first one that I want to talk is the monolithic architecture.
So in monolithic architecture, as you can see in this diagram, that every layer in
the architecture is very tightly coupled.
So they are all deployed in one single unit.
So what it does is all these, layers like the device layer, which is the one which
closer to the devices and sensors, and the second layer is the data tion layer.
And then the third layer is the business logic unit, the actual processing.
Part of it, and then the UI layer, all these are very tightly coupled.
So what happens is when anything goes wrong, it affects the whole application.
So this is an example of a monolithic, architecture.
Let's talk about the other architecture, which is famous out there, which is
getting more popularity these days.
And it was also implemented in a lot of technological industrial technological
solution is microservice architecture.
So microservice architecture is very different from monolithic.
You can see in this, in this diagram that each of the microservice, you can
think of it as a simple, small program, which is running and it does, it has
have a single responsibility principle.
So all of these microservices are independently deployable services.
So meaning that if this is.
doing one operation, it doesn't affect the other microservices
that is running parallelly.
So all these, microservices are loosely coupled.
And say if one microservice is using another tech stack, it doesn't necessarily
have to follow the same tech stack.
So every person can develop that, develop their microservices with the tech
stack that they are comfortable with.
So because of this, architecture, these microservices application can be scaled
because if you want to add another microservice, you can pretty much add
that, which makes it more resilient because if this microservices goes down,
then you can pretty much add another one and the resilience is very good.
It also makes the fault isolation.
So if this microservices is not running properly, or if there is some issues,
it's not going to affect the entire system like the monolithic architecture.
It is also very DevOps and continuous integration and
continuous deployment friendly.
you can keep on deploying new versions of the microservices very easily.
now that we have seen both the type of architecture, let's see which one is
better for the industrial IoT ecosystem.
first let's talk about the monolithic part.
In the monolithic, there is a single point of failure.
if say for example, the business logic is no longer working, then what happens
is it doesn't it does affect the whole thing, so it doesn't give time to recover.
So you need to wait for the whole system to recover.
which makes it, not a comfortable situation for large industrial ecosystem.
So you have to wait.
There's a lot of downtime.
And also there is very, less chance for scalability because in order to add
another app or another new technology, you have to wait for the downtime.
So also it makes it very difficult to integrate with any modern solutions.
For example, if you want to add a, an app to use the AI models, then you have
to ensure that you have to test it and ensure that everything works and make
sure that the application is down for some time, add it and then get it back.
It is only suitable for small scale operations, but for industrial operations,
it's not at all profitable because the scale of the number of devices in the
industry and the number of factories that you want to add, if it's a lot,
then monolithic will definitely fail.
And also latency is very critical in industrial ecosystem.
If any of the machine goes down, you want to be notified very
quickly and with no downtime, which is not supported in monolithic.
So that's why monolithic is not.
going to work for industrial ecosystem.
So what works then?
Which is the microservice architecture.
The reason I'll get into it later, but before that we should
look into what are the different architecture in the microservice
architecture itself available.
So one is the Kubernetes based microservice architecture and other is
serverless and other is traditional VMs.
These are the top three ones.
We'll get into the features of each of them.
So first is the Kubernetes, powered microservice architecture.
The feature of it is pretty much, you can imagine like an opera concert where the
person is standing and understanding who has to go first, the guitarist or pianist.
The similar is like the Kubernetes environment.
It is a very, automated orchestration for container deployment.
So it's an open source one, open source software.
So it also gives automatic scaling and self healing features.
So it is widely used during, during a large scale industrial application, and
also most of the apps are cloud native.
And also, it's good to use Kubernetes environment when you need high
resilience as well as high observability.
So the next, type of architecture is serverless.
The serverless, you can imagine like a small serverless function
running the cloud, just like Azure Functions or AWS Lambda.
So those functions are mostly event driven.
So whenever some changes happens in the database or the user interface, then
those serverless functions get deployed.
So they are very fully managed and also it scales automatically,
but it is very lightweight.
So you don't have to wait for the whole service to run.
It can do its function and then finish it off.
So only when there is an event.
So this is a serverless type of microservice architecture,
which is also widely used.
And also now we have the traditional VMs, which is, like you can
deploy all your services in a VM.
But, you have direct control of your hardware.
You want to ensure.
That, hardware resources are fully optimized and you go for this method.
And, also these, the solution is widely preferred during, legacy constraints.
So you have an old software running and you want to keep them in that VM.
And also there's security reasons because you cannot deploy it in the cloud.
So you have it in the traditional VM, bare metal software.
So understanding all these three microservice architecture,
let's get into the detail of.
Why kubernetes environment is really good for the industrial IoT ecosystem.
So we'll get into five reasons why it is really good.
So let's talk about the first one, which is scalability and resilience.
So as I said, kubernetes is an open source container deployment and orchestrator.
So it's, it's open source is developed by Google in the beginning
and then it was open source.
Now it's very widely used.
So some of the properties of Kubernetes is it has auto scaling
feature, which means that it can support horizontal or vertical pods.
Like you can add pods whenever you have a high workload.
So it can adjust the workload dynamically.
So if you don't have that much workload, you can scale it down as well.
So scaling up and scaling down is such a good feature, which makes it very
easy for industrial ecosystem because things are changing very quickly.
As well as it has self healing properties, which is.
Automatically, it restarts if any of the failed services are
not working as per expectation.
So that it can have zero downtime.
You will pretty much not even notice that there's something, some services have gone
down because Kubernetes will ensure that the resources are moved automatically.
Because it makes it a very compelling reason for critical
industrial applications, right?
and also multi node failover.
In, Kubernetes, if one node fails over, then the other nodes takes over because
it creates multiple redundancy across and also ensures that the, that it is in the
device on prem as well as in the cloud.
So it makes it a very good, solution for scalability and resilience purpose.
The second is.
For IoT, for industrial IoT, you have a lot of devices running on
the edge, cloud, as well as on prem.
which all these scenarios are supported by Kubernetes.
And also there are lightweight Kubernetes like K3S and micro kubernetes.
They can run on very low power industrial gateways.
Because you need some gateways very close to the industry.
And this Kubernetes is capable, this lightweight Kubernetes
are capable of running.
in the industrial gateways as well.
And there is also multi cloud support.
for example, you can deploy in AWS as well as in Azure.
You don't have to go for all or nothing cloud scenarios.
that makes it a very compelling reason for industry because you might, you might
want to use one cloud for one purpose and another cloud for another purpose.
this all makes it a very compelling reason to also go for, given it
is microservice architecture.
And the third one, which is a more important one in today's world, because
this is security is getting more traction.
So in Kubernetes, it has like role based access control.
So only person who needs to get the access will get the access and other
person have either a read or a, very fine grained control access can be also given.
with RBAC support in Kubernetes.
And also we have network policies, autologging and monitoring.
All these are taken care by the Kubernetes orchestration itself.
So the industry don't have to go and look for it and do extra stuff.
And the fourth one, which is another important aspect, is the observability.
We want to know what's going on in the industry, whether if you need
a maintenance, if you need, if you need immediate action into something
like The machines are heating up and we need to ensure the cool down.
All these things can be really done real time and Kubernetes
makes a very compelling reason.
The reason because it supports Prometheus, Grafana, all these advanced logging
metrics and alerting system, which makes it much, much easier for industrial
ecosystem to take actions immediately and then serve the customers in the right way.
Which is for the developer aspects.
So anytime you want to deploy a new version and ensure that you want to
deploy it very quickly, test it out.
Then the continuous integration and continuous deployment
support in Kubernetes is amazing.
Also, you can roll any updates, for example, if the new version is not
supporting, then you can go back to the older version in a minute of time.
And also there is blue green deployment, which is basically A B testing, where you
can test out blue, another solution, a green, another solution, and ensure that
Which one is working fine before going to production you can check it out and
ensure that everything is smooth So this kind of gives no downtime scenario because
everything is tested out before you go into the production environment So all
these five are reasons are very compelling to go into the kubernetes So now I'll
get into the benefits of it, right?
Because we have seen all these things, but what does it mean in numbers?
What does it actually do?
So we have four, big numbers.
One is first is the faster deployment cycle.
As I mentioned, right?
It has Kubernetes and it enables continuous delivery.
So you can roll updates.
in a matter of, less time than you would imagine.
And also, if there is any security patches that need to be applied,
it can be done very seamlessly.
we also, you will have no downtime, which makes it very
easy to do faster deployments.
And also, if you want to deploy only one, component and you want
to not affect the other one, then also it is a pretty good, solution.
making it overall 40 percent faster than the monolithic, architecture.
So the next one is the uptime, which is one of the favorite part, because you will
not even notice if anything goes down.
So the self healing capabilities are amazing.
And also Kubernetes has this way of offloading the workloads
across different nodes.
It makes it well balanced.
So when one node goes down, the other node takes over, making
it a very quick healing time.
And also it reschedules the workloads based on node availability.
Making sure we have very less, impact on any things that go wrong.
And third one is the reduction in cost.
So the cost part is, can be looked into the optimization, right?
Whenever we don't use much, we want to make sure that we
are scaling it down, right?
in the monolithic, it's not possible.
The whole full fledged architecture needs to be running all the time
in order to serve the customers.
But in the case of kubernetes, then if you don't have that much
workload, then you can tone it down or tone it up based on your needs.
And also you can set the node to occupy a certain type of memory
and resources, making it a very constrained environment for the node
so that you're not over utilizing it so that your budget is not crossing.
And also the same goes for agent cloud environment.
You can dynamically scale up and down, making it a very.
A good reason to switch because it can give you a lot of money that is, that
gets saved in the operational cost.
And the fourth and the main important thing is fault isolation.
we talked about like how much, Kubernetes can actually move the workloads around
so that you don't see the impact at all.
So the entire system is intact and still running.
And also there is another feature in kubernetes, which is namespace
isolation as well as pod isolation.
So ensuring all the services are managed, separately, so that if one thing is
changed, it doesn't affect the other one.
So overall it gives like 3x improvement in fault isolation.
And finally, I have a case study for you, which is Azure IoT Operation.
All this theory and concepts is actually implemented in an actual product.
Microsoft has recently launched this product called as Azure IoT Operation.
And we're going to touch base on the architecture a little bit.
So here you can see in the left most side is the factory.
So the factory is going to have all these cameras, IP cameras and
different standard of cameras.
And then there is something called as OPC UA.
It's also another standard where it can, get details of the
edge devices in different ways.
Like it can be a truck, it can be a gateway.
Excuse me.
So all these are the different, devices that exist in the camera.
And all these workloads needs to be managed using Kubernetes environment.
So Azure IoT operation is not just a microservice architecture of Kubernetes,
but it also has an event driven mechanism of using a highly available
and highly scalable MQTT broker.
So you can also use Azure Arc services like machine learning, app services, etc.
And also it is, you can use the different Azure infrastructure services like
Defender, Monitor, etc. So this is the whole Azure IoT operation which is
enabled by Azure Arc. And also it has the highly available broker as well as
data flows, which converts your data format from one to another format so
that you can process in the cloud.
So once this data comes through from the broker, you can manage it in the cloud
using different cloud, data visualization and pipeline like fabric, even grid and
hub storage, data explorers and so on.
So these are all cloud based application and you can use also
Power BI to look into the data in a way that you like, filter it.
And also there is an operational support where the operator can see
the whole deployment end to end.
So this is an example of, Kubernetes orchestration in action.
This is actually getting deployed in industries today.
And the main features of it is like it's built up recent
Kubernetes native application, which is what we talked about.
We are seeing that live in action.
It's highly scalable, resilient, as well as extensible and making
it all secure from end to end.
Also, it lets you manage Edge services and resources from the cloud, as I talked
about, using Azure Arc. And also, it can integrate the customer workloads, to a
platform to create a unified solution.
it also supports GitOps, so making it easy for deployment and also rolling updates.
And it integrates with, as I said, the data service pipeline like
Event Hub Grid, making it very easy to integrate with the cloud and
ensure post processing is easier.
And as I said, it includes a highly industry grade, edge native MQTT broker.
So it powers even the event driven architecture.
So you're using a kind of like a hybrid, Kubernetes as well as event
driven in the Azure IoT operation.
So yeah, that's all for this talk.
If you have any questions, please reach out to me on LinkedIn.
Thank you so much.