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. 

What is DevOps? A DevOps Tutorial in Plain English

DevOps… CI/CD… Docker… Kubernetes… I'm sure you've been bombarded with these words a lot the past year. Seems like the entire world is talking about it. The rate at which this segment is progressing, it won't be long before we reach the stage of NoOps.

Don’t worry. It’s okay to feel lost in the giant sea of tools and practices. It's about time we break down what DevOps really is.

Managing Kubernetes Environments Using Namespaces and Terraform

In the last several years, Kubernetes has become the “go-to” standard for managing and orchestrating containerized workloads. Thanks to its vendor-agnostic nature, you can easily run Kubernetes almost anywhere, and in fact, all the major cloud vendors offer a managed Kubernetes service (AWS EKS, Google GKE, and Azure AKS).

With Kubernetes, one of the key advantages is the ease of managing multiple environments and workloads in a single cluster, by separating the cluster into logical areas using namespaces. This post will dive into how we can manage this by using Terraform to manage the cluster provisioning as well as manage the namespaces.

Linux Container CPU: How to Optimize Real-Time and I/O-Intensive Environments

Ideally, highly-threaded I/O intensive Linux containers running on Kubernetes would have all the CPU time they need. But just how compatible is that goal with reality? To find the answer – and optimize Linux containers – application developers and DevOps teams must understand how Linux schedules tasks and allocates them CPU time.

The goal behind “real-time” containers is enabling your most important containers – those with mission-critical requirements around time-sensitive performance and reliability – to share the same hardware as non-real-time containers. But before committing to this strategy, it’s important to first determine how practical and achievable this is. In a strategy reliant on real-time containers, under-resourcing those containers could produce application performance shortfalls and hamper security efforts.