In our third and final installment (see: part one & part two), let’s take a look at some high-level use cases for Linux containers as well as finally (finally) defending what I like to call “pet” containers. From a general perspective, we see three repeated high-level use cases for containerizing applications:
- The fully orchestrated, multi-container application as you would create in OpenShift via the Red Hat Container Development Kit;
- Loosely orchestrated containers that don’t use advanced features like application templates and Kubernetes; and
- Pet containers.
Continue reading “In Defense of the Pet Container, Part 3: Puppies, Kittens and… Containers”
In Architecting Containers Part 4: Workload Characteristics and Candidates for Containerization we investigated the level of effort necessary to containerize different types of workloads. In this article I am going to address several challenges facing organizations that are deploying containers – how to patch containers and how to determine which teams are responsible for the container images. Should they be controlled by development or operations?
In addition, we are going to take a look at
Continue reading “Architecting Containers Part 5: Building a Secure and Manageable Container Software Supply Chain”
Many development and operations teams are looking for guidelines to help them determine what applications can be containerized and how difficult it may be. In Architecting Containers Part 3: How the User Space Affects Your Applications we took an in depth look at how the user space affects applications for both developers and operations. In this article we are going to take a look at workload characteristics and the level of effort required to containerize different types of applications.
The goal of this article is to provide guidance based on current capabilities and best practices within
Continue reading “Architecting Containers Part 4: Workload Characteristics and Candidates for Containerization”
In our previous posts, we’ve explored the Red Hat container ecosystem, the Red Hat Container Development Kit (CDK), OpenShift as a local deployment and OpenShift in production. In this final post of the series, we’re going to take a look at how a team can take advantage of the advanced features of OpenShift in order to automatically move new versions of applications from development to production — a process known as Continuous Delivery (or Continuous Deployment, depending on the level of automation).
Continue reading “Continuous Delivery / Deployment with OpenShift Enterprise”
In a previous blog post we took a look at the Red Hat Container Development Kit (CDK) and how it can be used to build and deploy applications within a development environment that closely mimics a production OpenShift cluster. In this post, we’ll take an in-depth look at what a production OpenShift cluster looks like — the individual components, their functions, and how they relate to each other. We’ll also check out how OpenShift supports scaling up and scaling out applications in a production environment.
Continue reading “OpenShift Enterprise in Production”
There is a lot of confusion around which pieces of your application you should break into multiple containers and why. I recently responded to this thread on the Docker user mailing list which led me to writing today’s post. In this post I plan to examine an imaginary Java application that historically ran on a single Tomcat server and to explain why I would break it apart into separate containers. In an attempt to make things interesting – I will also aim to
Continue reading “Container Tidbits: When Should I Break My Application into Multiple Containers?”
Setting up a local development environment that corresponds as close as possible to production can be a time-consuming and error-prone task. However, for OpenShift deployments, we have the Red Hat Container Development Kit (CDK) which does a good job at solving this and also provides a great environment for experimenting with containers and the Red Hat container ecosystem in general.
In this blogpost we will cover deploying applications using the OpenShift Enterprise PaaS that comes with the CDK. The whole process will be driven via the OpenShift CLI, in contrast to our last post which focused on OpenShift’s web interface. If you haven’t yet installed the CDK, check out the previous blog post for instructions.
By the end of this article you will know how to build existing applications on OpenShift, whether they already use
Continue reading “Test Driving OpenShift with the Red Hat Container Development Kit (CDK)”
Over the last couple years, microservices and containers have started to redefine the software development landscape. The traditional large Java or C# application has been replaced with multiple smaller components (microservices) which coordinate to provide the required functionality. These microservices typically run inside containers, which provide isolation and portability.
This approach has numerous benefits including being able to scale and replace microservices independently as well as reducing the complexity of individual components. However, it also brings more complexity to the system level; it takes extra effort and tooling to manage and orchestrate the microservices and their interactions.
This post will describe how Red Hat technology and services can be used to develop, deploy and run an effective microservice-based system.
Continue reading “The Red Hat Ecosystem for Microservice and Container Development”
Woah. 2015 went by really quickly. I do suppose it’s not all that surprising as time flies… especially when you’re having fun or… getting older (you pick). In fact, we’ve already put 2 percent of 2016 behind us! That said, before we get too deep into “the future”, and in consideration of Janus having not one but two faces, let’s take a quick trip down memory lane…
Without a doubt, 2015 was an exciting year for all things “container”, especially here at Red Hat.
To recap, the year started off with a bang when we announced the general availability of Red Hat Enterprise Linux Atomic Host alongside Red Hat Enterprise Linux 7.1. Then – less than two months later
Continue reading “Looking Back on Containers in 2015”
Next week, hundreds of Kubernetes enthusiasts are heading to San Francisco for KubeCon 2015, the first Kubernetes community conference. Why should you attend?
- Witness a variety of expert deep technical talks on containers and orchestrating them with Kubernetes. For example, OpenShift architect Clayton Coleman is presenting “Application Development on a Cloud-Native Platform” at 1:50 p.m. PST, on Monday, November 9, 2015. In the session, Clayton will cover workflow and tooling for application developers using Kubernetes as a development platform while still allowing developers to manage the lower level components of the system. This talk will show enhancements to core Kubernetes objects, and how they are being moved into the Kubernetes core over time.
- Learn about the future of Platform-as-a-Service.
PaaS isn’t static; it involves a constantly progressing set of technologies to enable a better approach to building and running applications. Ashesh Badani, general manager, OpenShift at Red Hat, is being joined by Google’s Craig McLuckie and others for a panel discussion around the future of Platform-as-a-Service (PaaS). Ashesh is responsible for Red Hat’s PaaS business. Check it out on Tuesday, November 10, 2015 at 11:30 a.m. PST.
- Get inspired about building highly scalable microservices-based applications.
KubeCon is your opportunity to dig deeper into how to implement microservices. Red Hatter Christian Posta helps you to make microservices a reality with “Microservices aren’t just for unicorns: meet fabric8.io”. At 9 a.m. PST on Wednesday, November 11, 2015, Christian will walk attendees through building microservices with Fabric8 on top of Kubernetes.
- Connect with other Kubernetes enthusiasts, including Red Hatters. Come by Red Hat’s booth (#1) connect with us on container security, orchestration, storage, management, and more. In addition, events outside the main conference track will allow attendees to interact with other Kubernetes enthusiasts.
If you are passionate about building highly scalable microservices-based apps, containerizing traditional apps, and/or are just getting started with Kubernetes, this is an event you won’t want to miss. For more information on KubeCon or to register for the event, please visit https://kubecon.io/.