Angel Jones - The Shift to OpenShift: A look at Red Hat OCP

Automatic Summary

Understanding the Digital Evolution: Containers vs VMs and Red Hat Openshift

About The Author

The author, Angel Jones, is the offering leader for Services Government with Redhead Openshift on the IBM platform. She's a dedicated professional part of IBM's Global Business Services Federal Organization, with a rich experience in handling the digital revolution in today's world.

Containers and Red Hat: A Historical Overview

Digital development has come a long way, especially with the rapid evolution of coding methods. From the rigid waterfall planning procedure to the flexible and fast agile, and of course, the orchestrated chaos of DevOps. In this blog, we delve into a brief history of this rapid digital evolution and focus on Containers, VMs (Virtual Machines), and Red Hat Openshift.

Let’s start with a fun fact – the initial development of the Red Hat software started when founding member, Mark Ewing, constantly donned his grandfather's coral college lacrosse, red cap. Thus, the software was aptly named "Red Hat".

Transition in Application Architecture and Infrastructure

The transition from monolithic applications, through the three-tier model to microservices was initiated by the necessity to break down dependent components. It led to more manageable 'chunks' of code that could be debugged, tested, and deployed independently. Along with this significant development, changes in infrastructure from individual data centers to managed hosting phases and finally, the cloud, revolutionized the deployment and packaging of applications.

Deciphering Containers

In the past, applications were hosted on bare metal servers then VMs (Virtual Machines). However, Containers are the new cost-effective, high-security kid on the block. They are essentially application packages with all of its dependencies and consist of four layers:

  1. The base layer - Contains Red hat enterprise Linux
  2. The OS update layer - Harden the settings
  3. The middleware layer - Ensures the smooth running of applications
  4. The application layer - Specific to developers for implementation of projects

Gartner predicts that by 2023, 70% of organizations will be running multiple production applications in containers.

VMs vs Containers

Though VMs have served us well, containers have merits of their own. The primary difference is the isolation of hardware versus process in containers leading to clear ownership and less resource usage. Whereas, changes in VMs tend to impact the entire system leading to higher resource usage and lower portability.

Managing and Deploying Containers with Kubernetes

While the benefits of containers are clear, the need for an efficient management system is evident. Enter Kubernetes – an open-source container orchestration platform offering scalability, automation, and efficient management. Despite its advantages, Kubernetes does present a unique set of challenges in the form of deployment, post-deployment hardening, and resource demands.

Introducing Red Hat Openshift

Building on Kubernetes, Red Hat Openshift takes it a step further by incorporating features like automation of OS integration, inclusion of validated integrations, and certified container ecosystem. This makes Red Hat the go-to solution for managing containers and reducing the complexity of adopting Kubernetes.

Real World Examples of Red Hat Openshift

Red Hat Openshift has proven its effectiveness with use cases across various industries like ANZ Bank (speeding up deployment time by 98%), UPS (providing high scalability during peak demand), and BMW Group (managing 1 billion requests per week from 12 million connected cars).

Conclusion

From the advent of containers to the continuous contribution of the Kubernetes community and the impressive strides made by Red hat Openshift – the digital evolution is on an exciting path. With the possibilities of cost-effective, high-security, less resource usage, and highly portable containers, the future of digital development is promising. As Angel Jones has clearly demonstrated, we are on the brink of an exhilarating digital age.


Video Transcription

I am Angel Jones on the IBM platform, Services Government with Redhead openshift offering leader. I work for the IBM Global Business Services uh Federal Organization. Uh Today we are gonna go over a high level evolution of the digital air. What brought us to containers?Uh What the containers are, uh V MS versus containers. And then I'm gonna give you a high level overview of Red Hat openshift. Um and what that is what the benefits are and some high level customer use cases from Red Hat. Also, I'll be giving you a few fun facts. Uh If you're like me like some trivia, um these be useful facts only in a very small circle um maybe at a bar trivia game. But uh here's one, our first one is Red Hat. Got its name from the founding uh member, Mark Ewing, uh who always wear his grandfather's Cornell College Lacrosse, Red Cap. And people would say if you need help, go look for the guy with the red hat. Hence Red Hat. So the evolution of the Digital Age, the development process started with waterfall which was a lot of planning, architecting building, failing, possibly and starting that all over. And there was a long process drawn out process that led us into the agile development process, which is more of a an iterative process um going, moving and failing fast and being able to adjust and move forward.

Agile then developed into the DEV ops where it and Dev and the developers work together and we have a constant motion of agile of the development and it process where we can fell fast, fell often and keep things going and moving as we need to and improving as it goes along along that way.

Along the way with it, we also improved the application architecture. Originally, the application architecture were monolithic. So we had the applications going into one server, the mainframe days where if something had to be done or something failed, it all failed. Then we went to the, the, the the the tier model where we had the web app, the servers, the the application servers, the database servers. But in reality, if one of those failed, your application still came down, now we're moving into micro services where that is more of a individual components where it's not as dependent and that it is very um the architecture style is it's a collection of services that are easy to be separated and tested.

Um And independently deployed. At the same time, infrastructure change, we had the, the view of each individual um customer base had their own data centers where these huge buildings of um power and racks and racks of servers and hard uh physical infrastructure. Then it moved into more managed hosting phases where everyone was um able to take advantage of a multi managed model and and take more advantage of um virtualization. Now, we're into the cloud model where we have a much more flexibility and portability and virtualization and connectivity across the world. Same time, the deployment and pack uh the deployment and packaging of applications changed went from physical hard servers where everything was on physical servers that aligned with that data center model to virtualization where we have more of the VM type models to containers and that brings us to where we are today or what containers are.

So what is a container? Sa is a packaged application with all of its dependencies. So containers have layers and the basically it's four layers and you have your base ra layer with your red hat enterprise Linux and then you have your OS update layers. This is a layer to get from your it department. This is the the layer that says this is how harden this is my settings that I need to meet whatever requirements I have. You have your middleware layer you're gonna get from your enterprise architect. This is gonna be what is needed in order for your application to continue to run. Then you have your application level for your develop that you get from your developers, you're all entered the independent levels within the container. So containers have a lot of benefits. Um They are application process are shared on a kernel. They have less overhead and costs. Um The speed of an application deployment, there's higher security because you can do rapid security patching. Uh Using the container layers, each layer is not impacted by changes around it.

Um There's increased portability simply because you can take a layer and not impact other parts of the other layers and move it and change it. And we'll talk more about that. Um They're cloud native and it's more consistent operations because you can take the base uh of each one of these layers say for example, the OS update and you can make it same across each one of your containers um across the board. It is just uh better for agile dependencies, uh efficiencies, consistencies and so that just benefits all the way around. And Gardner predicting that by 2023 70% of organizations will be running multiple production applications in their in containers. So that's a big number.

So another fun fact uh 1979 was when the first container technology could be traced back to using the UNIX uh V seven. when ch root system uh first began to do process oscillation and they did that by uh the root directory uh call that uh allowed the directory to move the process and its Children to a new location. So another another fun fact, you may never need to know someday. So what is the difference between a VM and a container? V MS? We know very well containers. We we're, we're starting to learn, right? So one of the largest differences in what makes the, the, the the major benefits of a container is the isolation of the hardware versus the process. The process is where we win a lot of benefits here. So and the VM you have the complete OS is connected through the systems. It's static compute static memory, high resource use usage. So anytime you need to make any changes in that VM, it impacts the entire system, the entire application everything is is is is impacted in a container.

Any time that you need to make a change within one of the layers, it doesn't necessarily need to impact the other layers. You can make the individual changes because you do have um isolation. You also have ability to burst compute in memory and use lower resources because you are doing shared kernels and you are, you are not dependent across the board in that one use of the resources, the other dependency or the other uh benefit of container over a virtual machine is it is clear ownership um where it gets very mushy and this is where you have some of your DEV ops it issues.

Um If it is not clearly laid out in the world of it and development is in the virtual machine world applications and OS dependency operating systems um is very murky because it does cross the lines on who owns what in the container world. It is very clear in where it and D in DEV ops ends and owns operations. And we can, you can easily determine um whose responsibility it is and where we have the stability and agility for deve development in it ops. This also then leads us to portability. Um V MS are not easily portable and would not be portable across different types of infrastructure. A lot of times you have to refactor your application altogether, um which is very hard, expensive, time consuming uh to do and sometimes not even worth it. And so in a container world, you can simply pick up that piece of the container and move it over um to your new contain your new realm of instance. So the ability to move across and have those dependencies, uh you save time, effort, money. Um and, and whatever you might need to do this makes you a a much more flexible, portable and ability to be higher faster in the market, right? So once we have all this knowledge and we know that we need containers, what next? How do we manage and deploy these containers? That's the, that's the trick. Um Obviously, we, we see the benefits of containers, but what's next, right? That's why the world of smart people have invented Kubernetes. So, Kuber Nandy is the leading open source container orchestration platform.

There are a lot of benefits to Kubernetes. It's open source, it's got a lot of, it's one of the largest open source projects on github. Lots of smart people adding to, to, to the knowledge base. Um It's got workload portability. It allowed a lot of the automation automation of a lot of the manual steps it takes to create containers to deploy them, to manage them. Uh And it it automated that it took care of the separation of concerns and the um it development world of uh its is looking for that stability. But developers are looking for that agility and it it took care of that pro problem. It allowed for scalability where you can um up upscale your um scale out for your containers. There were a lot of benefits but in order for that to happen, Tuber Neti had to be deployed properly, had to be sustained, had to have high skilled resources to do it. So it came with a lot of challenges. So your OS integration and when you're deploying um your OS integration had to be uh validated with and still has to be validated that they write steps and settings and everything is being set up properly for whatever your company may need or your your instance may need for your OS your deployment.

You need to make sure that everything that is is required for um your storage network um within your environment is there and is set up properly and integrated properly. After deployment, your post deployment, your harding needs to be done and the security of the management, the monitoring aspects that I need to be set up as well. Um The operational aspects, there's no portals, there's no um hands on aspects that make it easy for a tier one engineer or, or a DEV ops person to support it. There's no out of the box DEV ops tools and app services. Um So you have to build that and you have to know how to manage it from there. There's no infrastructure integration into network storage, you have to bring your own and you have to know how to manage it. And so you still need um that knowledge as well and there's no C I CD or, or de workflows out of the box. So you must know how to manage and handle that as well. So 75% of enterprises cite complexity as a blocker to adopting certis. And that's a, that's one of the biggest challenges. Little fun fact here, Google originally developed K Kubernetes and they still are the largest contributor. They generate more than 2 billion containers a week um on their internal platform named Borg for re Star Trek fans. Um and a bonus.

Uh The seven spokes that are on their logo are actually uh named after the original project name, which is project seven of nine. So there are, there's your b fun fact for Kubernetes. OK. So we have these great containers. We have a way to solve it with Kubernetes. But then Cober Netti has some challenges for us. So how do we solve these challenges? Well, that's where Red Hat Openshift comes into play. So what is Red Hat? It is actually a Kubernetes enterprise platform. So they took Kubernetes and they determine they built out an entire past system. So a platform as a service system that provides you the container host to Kubernetes and the application life cycle management. Um using the infrastructure of choice. There's an integrate in Linux which um with the Red Hat openshift for dot X, it comes with a Red Hat um Enterprise Linux for CO OS. Um and that contains also the container run time, your network, your monitoring, your container registry authentication and authorization solutions.

So it took care of a lot of the challenges we saw in the Ker Neti is that took a lot of manual or high skilled resources um and a lot of additional tools and and management that is all now in packages in one deal in the open shift. They also what Red Hat does is because Cerne is open source, there's no one managing and maintaining it on a uh outside of the, the resources that exist out in the world. Um Red Hat takes it and it, it does fix hundreds of defects and performance issues. Um Before it actually puts it into openshift. Um There are also 200 plus validated integrations that Red Hat supports uh error validates and it is a certified container ecosystem. So, and then there is nine year enterprise lifecycle management that is, that comes with the Openshift Container platform.

And then also Red Hat is uh one of the leading contributors um to Ker not since day one. So they have been there alongside Google. Uh making sure that they have um continued to improve, continue to help fix it, continue to grow it and make it what it is today. So there are a lot of benefits that come along with just the improvements it made on being able to deploy and manage Kubernetes uh at Kernes Enterprise platform, um then continue to grow up for customers, make it easier, better to deploy uh manage your containers. But it also has automated installers, uh push button over there updates. So all the upgrades that it reduces your vulnerabilities um reduces your ability or the downtime that it takes to upgrade and, and patch. Uh There's more secure, validated container content and services from worldwide partner uh ecosystem.

There's consistent foundation for an on premises and public workloads. Um And then there's user friendly console and then we'll we'll look at the console in a minute. But the console is a huge plus for um the it teams, the administrators, the those non developer resources that have to do work in, in the environments as well. The managers, the CIO S the CTO S the, the, the just the everyday project managers that may need to understand and know what's going on in the environment and control the resources, control what's happening um and or manage and monitor it. Um And then the integrated container registry um that there's management around what is being uh brought down as images and how the images are used and what what images are allowed to be used. So um that all can be managed on top of that, it provided the developers a much easier way to get their work done, get it done faster, get it done in a more secure managed, get it done consistently. Um by providing the operators uh for anti deve dev ops. Um The C I CD pipelines are that can be built in or are built in and this allowing uh overall simpler installations and upgrades. So lots of benefits from the redhead openshift and deployments. Fun fact here.

Uh IBM was started in 1896 as tabulated machine company by inventor Herman Hoitz, whose invention was used to count the US census in 1890. Um It was later incorporated as computing ta uh tabulated recording company in 1911. And that's when it officially became IBM. Um And then it was renamed in 1924 to IBM, which is international business Machine. Here's a red hat openshift overview. Um What we just talked through, but this is the stack that you'll see looking. Um as you see, uh you can bring um your own infrastructure, whether it's physical virtual um private cloud or public cloud. Um on the edge, you the connection up onto your rail systems. Um We use the Kubernetes orchestration and then there's many benefits um that come with the platform services, application services, data service, and developer services. So it just took all of the the existing benefits that you had for Cooper. And then it took care of the challenges that were left over and then improved upon that and gave the users uh whether they were network um users administrators, uh the managers, the developers, they gave them tools to work from to make it easier and to be make it more manageable.

So the console, we talked a little bit bit about a few minutes ago. But um this is an example of a log in for the console. And this is one of the biggest benefits of the openshift container platform, in my opinion, because I managed it from both, both sides of the house um as a developer, engineering manager, as a engineer myself um and having a console that you can do almost everything from. Um And you can also, if for those who do not like uh the UIs, you can also do almost everything from the cl if you want to do command line. Um You can uh but this does make it easier um And does make it more user friendly. Uh For those who don't. Um This is an example um as the of a container portal, uh platform portal. And when you log in as admin, this is an administrator and you can actually switch between administrator and developer depending on your access. Um And then the access that you were given will provide will, will determine what you were able to see. But you could go through and you de determine or see all of the different as aspects and change or update depending on your your access, the different levels of your cluster. It is uh very user friendly.

Um Again, you can do uh many things through the command line as well through the CLI, but it um also allows you to do a ma majority of the ta task through the portal. Here's an example of what the developer may see if they switch in between the developer and the administrator. Um They could go on here and start a project and pull from the catalog and what they need and then go from there as they build out their project or their name space. So talk quickly about some uh customers and from red hat, these are red hats use cases. So uh here's a use case in the banking industry and everything is mobile, 89% of the customers are using mobile banking regularly. So uh this is a NZ Bank and deployed a container application platform, speed development, uh keep pace. Uh As you see, they got 98% accelerated deployment time at 98% and improved developer productivity and collaboration. This is uh reported um in, in, in there, we reports back to deploying openshift the flexibility to adapt and become mandatory uh for the shipping industry.

Um The shipping industry is a big obviously, as everybody knows as we come out of 2020 2021 shipping became very, very important as we were all stuck at home. Um And this became um very uh the ability to get applications uh up to date and any and more, more and more of their applications grew and more demand was needed. Uh We did see an increase in the need here. So uh ups built a new application platform for stability and availability and they gain high scalability and availability support peak demand. So we'll continue to see this. We are continuing to see this across uh ecommerce uh and, and cloud infrastructure uh or the cloud infrastructure needs across all of these are are continuing to grow. Um So data, uh this is an example in the automotive industry uh BMW group. Uh it's used to do BMW group connected drive platform um scales as the data scales. So that's 12 million connected cars as 1 billion requests per week that is being handled through Openshift. So that is a very good returns there. And then we got um this is the examples of or this is the, the ways that you can purchase openshift if um you're interested in learning about any of them. Um There's a consistent platform and so you can either ma have someone else manage Red Hat for you.

Um So they do partner with Aws, Azure IBM um or Google uh or you can do it yourself. And so these are the just options they had. It's very flexible. Um If you want to go down the route, route of having them, someone else manage it for you. And these are um just like if you are an Aws or your or IBM customer, now you do it through the portals, you do it through their s er teams. Um just like you would your cloud services today and, or you can do it. Um You could go to the cloud services and then deploy your own openshift or you can do it on prem, it's very flexible um in, in whatever way you want to manage it. And then I do have um my, some helpful le um within the deck for you if you want to take a look at those. Um I think these will all be shared and that way you can have resources to go and learn more about openshift and containers uh out there in the world today.