Getting Started With Kubernetes

Containers weighing you down? Kubernetes can scale them. To build a reliable, scalable containerized application, you need a place to run containers, scale them, update them, and provide them with networking and storage. Kubernetes is the most popular container orchestration system. It simplifies deploying, monitoring, and scaling application components, making it easy to develop flexible, reliable applications. This updated Refcard covers all things Kubernetes, exploring core concepts, important architecture considerations, and how to build your first containerized application.

Threat Detection for Containers

With the exponential increase in container adoption, it's more critical than ever for teams to ensure that proper security and threat management infrastructure and practices are in place. This Refcard presents a comprehensive examination of threat detection for containerized environments, spanning several focus areas such as common cloud security architectures and Kubernetes hardening guidelines. And central to this Refcard are the fundamentals of container threat detection, including concepts like resource limits, static image vulnerability scanning, configuration validation, and much more.

Run Containers and VMs Together With KubeVirt

Although many enterprises have deployed Kubernetes and containers, most also operate virtual machines. As a result, the two environments will likely co-exist for years, creating operational complexity and adding cost in time and infrastructure.

Without going into the pros and cons of one versus the other, it’s helpful to remember that each virtual machine or VM contains its instance of a full operating system and is intended to operate as if it were a standalone server—hence the name. By contrast, in a containerized environment, multiple containers share one instance of an operating system, almost always some flavor of Linux.

How to Move IBM App Connect Enterprise to Containers

This article is part of a series and follows the previous article, Deploying a Queue Manager from the OpenShift Web Console.

IBM App Connect Enterprise was initially created at a time when much integration was performed using messaging, and specifically IBM MQ. Indeed, despite the popularity of more recent protocols such as RESTful APIs, there are still many integration challenges that are better suited to messaging. Today, IBM App Connect Enterprise is used to mediate various protocols, but nearly all existing customers will have some MQ-based integration in their landscape.

How to Use Shipa to Make Kubernetes Adoption Easier for Developers

Kubernetes offers developers tremendous advantages… if they can overcome the platform’s inherent complexities. It can be a big "if." Without additional tooling, developers aren’t able to simply develop their applications on Kubernetes, but must also become experts in writing complex YAML templates to define Kubernetes resources. A relatively new tool called Shipa provides an application management framework that largely relieves developers of this burden, enabling dev teams to ship applications with no Kubernetes expertise required.

Having recently put the tool to the test, this article will demonstrate how to install and utilize Shipa to simplify Kubernetes and ease some common developer frustrations.

Getting Started With Kubernetes Policy Management, Kyverno on OpenShift Container Platform

Red Hat® OpenShift is a widely adopted Container Platform powered by Kubernetes. As the enterprise adoption of OpenShift grows, operators are often faced with the need to automatically update or generate configuration as well as ensure security and enforce best practices. Essentially they are looking to provide guardrails so that developers can continue to use OpenShift without impacting other applications or introducing security vulnerabilities via misconfigurations. Kyverno, a Kubernetes-native policy engine, is perfect for this task and is often being used to address the above-mentioned challenges. In this post, I will discuss how you can get started with Kyverno on the OpenShift Container Platform.

Red Hat OpenShift

Red Hat® OpenShift® Container Platform is the industry-leading hybrid cloud platform powered by containers and Kubernetes. Using the OpenShift Container Platform simplifies and accelerates the development, delivery, and lifecycle management of a hybrid mix of applications, consistently anywhere across on-premises, public clouds, and Edge. OpenShift Container Platform is designed to deliver continuous innovation and speed at any scale, helping organizations to be ready for today and build for the future.

Openshift Sandbox/Kata Containers

In this article, I will walk you through Openshift Sandbox containers based on Kata containers and how this is different from the traditional Openshift containers. 

Sandbox/kata containers are useful for users for the following scenarios: 

Docker: How to Stop and Remove All Containers at Once

It’s an understatement to say that Docker is a game-changer for systems engineers and developers. You can run almost any application with a single command and customize it for your environment via a consistent container-based interface. But as containers proliferate, controlling them gets more complicated, too. Managing containers from the command line can be painful, but setting up an orchestration tool like Kubernetes or Docker Swarm is overkill for smaller systems.

Stopping and removing a container from the command line takes two steps. Stopping and removing two containers is four. And stopping and removing 10 containers is — well, you get the idea. Let’s look at how to make the Docker command line easier to use. We’ll focus on stopping and removing containers. Then, we’ll look at Docker Compose, another tool that makes managing smaller collections of containers easier.

CodeReady Containers – Beginners guide to OpenShift Container Platform 4.9.10 with business automation tooling

Some time ago, back in December of 2020, I shared with you how to get started with business automation tooling on your developer machine using CodeReady Containers.

In this four part series you were familiarised with the OpenShift Container Platform, the business automation operators, and given a project to install the developer tooling needed to begin designing processes, rules, and much more.

How to Connect Two Containers From Different docker-compose Files

Working with Docker containers allows developers to create encapsulated applications that are independent of the host machine and contain all the necessary libraries and dependencies. In practice, docker-compose is often used to configure and manage containers. When several containers are built in a docker-compose file, they are automatically connected to a common network (which is created by default) and can communicate with each other. 

In most cases, however, each project will have its own docker-compose file. In such configurations, the containers from one docker-compose will not be able to connect to those from the other unless we have previously created and configured a shared network. In such cases, it is necessary to use a docker networking in compose. In this article, we’ll take a look at a sample method/example, how to set up networks in different docker-compose files, so that individual projects and the containers/services in them can be connected in a single network when running on a local machine.

Spinning up a Node.js Server in a Container on AWS with EC2

For a project at work, I needed to get a Node.js Express server running in a Docker container, then deploy that container to an EC2 instance on AWS. I took notes along the way because I was sure I'd need to do something like this again someday. Then, I figured—since I took notes—I might as well share my notes.

You can generalize my use case for your own needs. It doesn't have to be a Node.js server. It can be any Docker container image that you need to deploy to AWS EC2, as long as you know what port(s) on the container you need to expose to the outside world.

Containers are Here to Stay

Containers are not a fad. They’re never overkill for any project and they simplify many aspects of development, even when running locally. With a wide selection of relevant tools and resources, there has never been a better time than now to implement containers in your organization and get ahead of the curve.

What Are Containers?

Containers are portable, self-sufficient, standardized units that store all code, assets, and dependencies of a program. They can be shared and run on virtually any hardware. Containerization has been around for years, although it has recently been gaining more traction with the advent of Docker. Many organizations are recognizing the value of managing their code in a simplified, shareable, and maintainable way. What does this mean for you and your organization?

Beginners Guide to Installing Decision Management Tooling in a Local Container using Podman

Recently the open source community project called Podman announced that there was solid support for using its container tooling to replace docker on your local development machine. Ring in the joyous music and off we go to explore how we can get back to basics without the issues of licensing around the developer desktop container tooling.

Note, the rest of this tutorial will be based on the current version of Podman at the time of publication, v3.3.1.

Beginners Guide to Installing Process Automation Tooling in a Local Container using Podman

Recently the open source community project called Podman announced that there was solid support for using its container tooling to replace docker on your local development machine. Ring in the joyous music and off we go to explore how we can get back to basics without the issues of licensing around the developer desktop container tooling.

Note, the rest of this tutorial will be based on the current version of Podman at the time of publication, v3.3.1.

LXC vs. Docker – What Do You Need For IoT?

Containers are at the center of agile software development. They’ve shifted from being a fringe open source technology to the building blocks that power modern software systems. With the Internet of Things (IoT), pioneering companies in the space are now looking to containers to extend the benefits of DevOps to the unique requirements of embedded systems. 

As enterprises look to scale up the capabilities of their IoT environments, popular container technologies like LXC or Linux Containers and Docker top the list. You may have heard of these two technologies, but may not know what the differences are. 

Do You Really Need Kubernetes?

These days, it seems Kubernetes is a topic that is never too far from people's lips.  The tool, and the associated tools built around it, are talked about so often it seems it's the only subject important to developers these days - especially as the IT world becomes increasingly orientated towards cloud and microservices.

But in spite of all the conversation around Kubernetes... do you really need Kubernetes for your environment? Or is it just another case of the next 'new and shiny' object,  with people distracted by the novelty and possibility, rather than the facts? In this blog, I'll take a closer look at why Kubernetes might be a case of the hype outweighing the helpfulness in most cases.