hi everyone my name is sai venom and I'm
with the IBM cloud team today we want to
talk about kubernetes and OpenShift
now it's not exactly fair for me to
compare those two directly because
kubernetes is an open source project
whereas OpenShift on the other hand is
an offering by Red Hat but underneath
the covers OpenShift is actually powered
by something called okd or origin
kubernetes distribution and this
includes kubernetes as well as a number
of other open-source projects so we've
got kubernetes maybe your favorite
container run time something like docker
and if you want to take advantage of
service machine capabilities have
integrations with sto and a number of
other open source projects that we'll
talk about but let's talk about a few
different ways that kind of highlights
the differences between working with
your apps whether they're running you
know strictly kubernetes or if you're
using open shift to start we'll talk
about deploying an application so
deploying an application in kubernetes
can actually be a little bit
time-consuming so first let's assume
that you have your code up on something
like github so you'll pull that code to
your local machine maybe spin up a
container once you've got that container
you'll have to figure out where you want
to actually host it so the registry so
maybe you want to use something like
docker hub or if you want a private
registry you'll have to figure that out
one thing I want to mention if you take
advantage of manage kubernetes so
something from like kubernetes from your
favorite cloud provider generally they
have options to have a registry or a
private registry directly in that
experience next you know once it's on
that registry you'll actually have to
figure out your CI CD story and this is
where things get complicated because
there's so many different options for
deploying your applications on the
openshift side of things on the other
hand they have an opinionated approach
so all you really have to do is create
an application and a project at which
point open ship does the heavy lifting
on the back end so it's going to create
those pipelines it's going to create all
of that automation that you need to do
things like dev tests and prod for your
applications so really it makes it a lot
easier and you can get started maybe
using something like
Jenkins approach or source to image
capabilities but one thing I do want to
mention here you have a lot more
flexibility on the kubernetes side of
things as you know you don't have an
opinionated prescribed way of doing this
so for power users and teams that are
you know kind of influenced by legacy
architectures kubernetes might be more
effective for teams that really just
want to be told how to get everything
done and have a streamlined approach for
their DevOps and pipeline approach the
open the open ship side of things makes
things quite easy next let's talk about
managing your applications so the two
sides of the puzzle here first let's
start with how managing your apps looks
like in kubernetes so you can take
advantage of the default dashboards that
comes with any kubernetes distribution
but unfortunately for most operations
teams that's not quite enough so they'll
have to take it a step further and
install additional dashboards so maybe
they'll use something like an Alex stack
maybe they want to use Griffin I instead
maybe sto the options are kind of
endless
so essentially you know it's a lot of
digging around to figure out the exact
solution that fits their use case on the
open ship side of things again there's
an opinionated and proscribed way of
doing this in addition they have an
awesome web console that builds on the
kubernetes api and makes it and comes
with a lot of different capabilities for
sres and operations teams to really
manage their workloads in addition
there's prescribed and kind of
opinionated ways to do those dashboards
that we talked about so they suggest an
efk stack and have different ways to
integrate capabilities like sto if you
wanted to use it so again by taking
advantage of some of their automated
installers and ansible playbooks
managing applications is a little bit
easier with the kind of caveat that you
give up some of that flexibility as they
do have prescribed approaches next let's
talk about node configuration or you
know day-to-day operations
so a cluster is going to be made up of a
number of VMs whether they're you know
virtualized or bare-metal whatever it
might be
clusters gonna have some VMs within it
the kubernetes way of adding additional
kind of VMs into that cluster can be
kind of time-consuming so setting up
self registration or kind of the
different cloud automation of setting up
or creating new VMs and bringing them
into the cluster this is time consuming
and requires scripts to be developed on
the open shift side of things it's a
little bit easier
they have ansible playbooks and
installers to bring in new VMs into your
cluster so it's a fairly straightforward
process and they even have ways to do or
in handle auto scaling or spinning up
you know new VMs in response to load the
last thing I want to highlight is
security so open shipped and Red Hat
kind of tries to fill the gaps where the
open source community maybe hasn't done
so so by working with real enterprise
customers they've realized that by kind
of creating best security practices from
scratch they they're really able to
tackle some of the problems that some of
the customers need to be able to use
kubernetes so let's talk about a few
different things here so in the
kubernetes side of things you know
chances are you're not working on a
project by yourself there's a team of
people each of which have to have
different permissions so in the
beginning kubernetes didn't even have
something like our back which open
should've kind of solved but you know
now we can take it for granted that they
have our back they're gonna have some
other capabilities to do things like you
know I am but you know at the end of the
day this is these are all things that
you have to build out and are time
consuming on the openshift side of
things these kind of all come out of the
box so when you create that project you
get access to all of these you really
just have to add the users and it'll
handle things like kubernetes
namespacing and creating different kind
of security policies with the best
practices and you kind of get all of
that from scratch however there's a
small trade-off so for example in
kubernetes you can pretty much take any
image out there in docker hub and
expect that we'll run as you know as
expected but on the open ship side of
things there's kind of restricted
permissions the containers don't run its
route so sometimes images don't run as
expected so it's kind of a small caveat
for having those best practices of
security kind of instilled from the
get-go so it's something that you kind
of have to balance at the end of the day
open shift is not a one-size-fits-all
solution it's very important to
understand the fundamentals of
kubernetes that power OpenShift for
individuals and small IT teams open ship
really streamlines a lot of those very
difficult tasks if you want to learn
more check out the description for more
links if you had any questions be sure
to drop a comment and if you like this
video be sure to subscribe and stay
tuned for more videos in the future
thank you