Kubernetes introduction

Kubernetes (commonly stylized as K8s) is an open-sourcecontainer-orchestration system for automating computer application deployment, scaling, and management. It was originally designed by Google and is now maintained by the Cloud Native Computing Foundation. It aims to provide a “platform for automating deployment, scaling, and operations of database management systems”. It works with a range of container tools and runs containers in a cluster, often with images built using Docker. Kubernetes originally interfaced with the Docker runtime through a “Dockershim”; however, the shim has since been deprecated in favor of directly interfacing with the container through containerd, or replacing Docker with a runtime that is compliant with the Container Runtime Interface (CRI) introduced by Kubernetes in 2016.

Many cloud services offer a Kubernetes-based platform or infrastructure as a service (PaaS or IaaS) on which Kubernetes can be deployed as a platform-providing service. Many vendors also provide their own branded Kubernetes distributions.

Kubernetes API

The design principles underlying Kubernetes allow one to programmatically create, configure, and manage Kubernetes clusters. This function is exposed via an API called the Cluster API. A key concept embodied in the API is the notion that the Kubernetes cluster is itself a resource / object that can be managed just like any other Kubernetes resources. Similarly, machines that make up the cluster are also treated as a Kubernetes resource. The API has two pieces – the core API, and a provider implementation. The provider implementation consists of cloud-provider specific functions that let Kubernetes provide the cluster API in a fashion that is well-integrated with the cloud-provider’s services and resources.

Kubernetes uses

Kubernetes is commonly used as a way to host a microservice-based implementation, because it and its associated ecosystem of tools provide all the capabilities needed to address key concerns of any microservice architecture.

DevOps preface

If you’re old, don’t try to change yourself, change your environment. —B. F. Skinner

One view of DevOps is that it helps take on that last mile problem in software: value delivery. The premise is that encouraging behaviors such as teaming, feedback, and experimentation will be reinforced by desirable outcomes such as better software, delivered faster and at lower cost. For many, the DevOps discourse then quickly turns to automation. That makes sense as automation is an environmental intervention that is relatively actionable. If you want to change behavior, change the environment!

In this context, automation becomes a significant investment decision with strategic import. DevOps automation engineers face a number of design choices. What level of interface abstraction is appropriate for the automation tooling? Where should you separate automation concerns of an infrastructure nature from those that should be more application centric?

These questions matter because automation tooling that is accessible to all can better connect all the participants in the software delivery process. That is going to help fos‐ ter all those positive teaming behaviors we are after. Automation that is decoupled from infrastructure provisioning events makes it possible to quickly tenant new project streams. Users can immediately self-serve without raising a new infrastructure requisition.

We want to open the innovation process to all, be they 10x programmers or citizen developers. Doing DevOps with makes this possible, and this blog will show you how.

This is a practical guide that will show how to easily implement and automate powerful cloud deployment patterns using. The container management platform provides a self-service platform for users. Its natively container-aware approach will allow us to show you an application-centric view to automation.

FUTURE OF DEVOPS

THE EARLY MAJORITY
MOVES TO THE CLOUD

of business:

60% + 80%
DevOps world have raised the bar on collaboration, cross-organizational visibility,
of businesses are adopting or expanding DevOps culture and processes
of businesses are now operating in the cloud

DEVOPS AND THE CLOUD— A NATURAL PAIR
Let’s start with DevOps.
Forrester Research dubbed 2018 the year of DevOps. And it’s no wonder, with over half of enterprises implementing or expanding existing DevOps practices. So why are they doing that? Here are a few good reasons to consider it:
DEVOPS OFFERS YOUR ORGANIZATION:
• Greater productivity and faster delivery of products
• Greater visibility and collaboration across projects,
departments, and individuals
• Less siloing
So, DevOps removes friction; and as a practical environment for DevOps, the cloud just makes sense.
HOW THE CLOUD ENHANCES YOUR DEVOPS ORGANIZATION

• Rapid deployment of new environments
• Reduced IT costs through subscription and SaaS (pay as you go) payment structures
• Moving from CapEx expenditures for hardware to OpEx expenses for SaaS
• Fast, agile scalability
So why the urgency to make these innovations? The truth is, they’re not really innovative anymore. it’s already happened.
The bar has been raised and you need a new edge.

GAUGE YOUR DEVOPS PROGRESS
Institute Agile practices that focuses on communication, collaboration, customer feedback, and small and rapid releases. Agile operations remove rigidity from your processes and allow for greater innovation, while keeping accountability and increasing goal focus
Deploy a multi-cloud strategy with Kubernetes or other intermediary layer for cloud-agnostic and resilient infrastructure
Build cloud-native systems for core products, with lift-and-shift for systems that don’t require much scalability
Create microservices in containers over monolithic apps to increase your agility and your ability to innovate with less downtime