Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Awesome Kubernetes

Download as pdf or txt
Download as pdf or txt
You are on page 1of 33

Table

of Contents
Introduction 1.1

2
Introduction

Awesome-Kubernetes

A curated list for awesome kubernetes sources Inspired by @sindresorhus' awesome

"Talent wins games, but teamwork and intelligence wins championships."

-- Michael Jordan

Without the help from these amazing contributors, building this awesome-repo would never
has been possible. Thank You very much guys !!

Thanks to Gitbook.This awesome list can now be downloaded and read in the form of
a book.Check it out --> https://www.gitbook.com/book/ramitsurana/awesome-
kubernetes/ .Keep Learning Keep Sharing !!

If you see a package or project here that is no longer maintained or is not a good fit,
please submit a pull request to improve this file. Thank you!

What is Kubernetes? :ship:


Kubernetes is an open-source system for automating deployment, scaling, and
management of containerized applications. It groups containers that make up an
application into logical units for easy management and discovery.

3
Introduction

Source: What is Kubernetes

History:
Kubernetes is known to be a descendant of Google's system BORG

The first unified container-management system developed at Google was the system
we internally call Borg. It was built to manage both long-running services and batch
jobs, which had previously been handled by two separate systems: Babysitter and the
Global Work Queue. The latter’s architecture strongly influenced Borg, but was focused
on batch jobs; both predated Linux control groups.

Source: Kubernetes Past

Date of Birth:
Kubernetes celebrates its birthday every year on 21st July. Kubernetes 1.0 was released on
July 21 2015, after being first announced to the public at Dockercon in June 2014.

Roadmap
The awesome-kubernetes will now soon be available in the form of different releases and
package bundles, It means that you can download the awesome kubernetes release up to a
certain period of time, The release for awesome kubernetes 2015 bundle is released.
Checkout the releases column for more info.

Menu
Awesome-Kubernetes
What is Kubernetes? :ship:
History:
Date of Birth:
Roadmap
Menu
Starting Point
Installers
Main Resources

4
Introduction

Release Notes
Useful Articles
Cloud Providers
Logging
Monitoring
Security
Authentication
Networking
CI/CD
Deep Learning
Certifications
Devops Tools
Others
Managed Kubernetes
Interactive Learning Environments
MOOC Courses / Tutorials
Case Studies
Persistent Volume Providers
Container Storage Interface Plugins
Developer Libraries/ Scripts
Projects
Related Software
Package Managers
Monitoring Services
Testing
Continuous Delivery
Serverless Implementations
Operators
Custom Schedulers
Container Support
Database
Networking
Service mesh
RPC
Secret generation and management
Web applications
Desktop applications
Mobile applications
API/CLI adaptors
Application deployment orchestration

5
Introduction

Configuration
Security
Load balancing
Big Data
Machine Learning
Service Discovery
Operating System
YAML/JSON Config
Tuning
Backup and Disaster Recovery
Plugins
Raspberry Pi
Books
Certifications
Slide Presentations
Videos
Main Account
Other Useful Videos
CI/CD Videos
Interesting Twitter Accounts
Amazing People
Meetup Groups
Connecting with Kubernetes
Conferences
Contributing
License

Starting Point
A place that marks the beginning of a journey

Kubernetes Community Overview and Contributions Guide by Ihor Dvoretskyi


Are you Ready to Manage your Infrastructure like Google?
Google is years ahead when it comes to the cloud, but it's happy the world is catching
up
An Intro to Google’s Kubernetes and How to Use It by Laura Frank
Getting Started on Kubernetes by Rajdeep Dua
Kubernetes: The Future of Cloud Hosting by Meteorhacks

6
Introduction

Kubernetes by Google by Gaston Pantana


Key Concepts by Arun Gupta
Application Containers: Kubernetes and Docker from Scratch by Keith Tenzer
Learn the Kubernetes Key Concepts in 10 Minutes by Omer Dawelbeit
Top Reasons Businesses Should Move to Kubernetes Now by Mike Johnston
The Children's Illustrated Guide to Kubernetes by Deis
The ‘kubectl run’ command by Michael Hausenblas
Docker Kubernetes Lab Handbook by Peng Xiao
Curated Resources for Kubernetes
Kubernetes Comic by Google Cloud Platform
Kubernetes 101: Pods, Nodes, Containers, and Clusters by Dan Sanche
An Introduction to Kubernetes by Justin Ellingwood
Kubernetes and everything else - Introduction to Kubernetes and it's context by Rinor
Maloku
Installation on Centos 7
Setting Up a Kubernetes Cluster on Ubuntu 18.04
Cloud Native Landscape

Installers
Bootkube - CoreOS - Cloud Agnostique
Breeze - CentOS - Cloud Agnostique
Conjure-up - Ubuntu - Cloud Agnostique
Docker for MAC - Run Kubernetes and Docker locally on your MAC (Edge Channel)
Docker for Windows - Run Kubernetes and Docker locally on your Windows PC (Edge
Channel)
Juju - Ubuntu - Cloud Agnostique
k3s - Lightweight Kubernetes. Easy to install, half the memory, all in a binary less than
40mb
kind - A tool for running local Kubernetes clusters using Docker container “nodes”
Kops - OS Agnostique - AWS
Kube-ansible - OS Agnostique - Cloud Agnostique
Kube-aws - CoreOS - AWS
Kube-deploy
Kubeadm - OS Agnostique - Cloud Agnostique
KubeNow - Ubuntu - Cloud Agnostique
Kubernetes-Saltstack - systemd OS - Cloud Agnostique
Kubespray - OS Agnostique - Cloud Agnostique
Kubicorn - OS Agnostique - Cloud Agnostique

7
Introduction

Kublr - OS Agnostique - On-Prem - Cloud Agnostique


Linode - CoreOS - Linode
matchbox - CoreOS - Network boot and provision Container Linux clusters (e.g. etcd3,
Kubernetes, more).
MetalK8s - CentOS - On-Prem - Cloud Agnostique - Apache-2.0
MicroK8s - A single package of k8s that installs on 42 flavours of Linux
Minikube - Run Kubernetes locally
RKE - OS Agnostique - Cloud Agnostique
sealos - Simple kubernetes HA installer
Simplekube - systemd OS - Cloud Agnostique
Supergiant - CoreOS - Cloud Agnostique
Terraform - CoreOS - AWS
Typhoon - Container Linux - Cloud Agnostique

Main Resources
Official resources from the Kubernetes team

Kubernetes Documentation
Kubernetes Source
Kubernetes Troubleshooting

Release Notes
Official release notes from the Kubernetes team on Stable Kubernetes Releases

Kubernetes-1.14
Kubernetes-1.13
Kubernetes-1.12
Kubernetes-1.11
Kubernetes-1.10
Kubernetes-1.9
Kubernetes-1.8
Kubernetes-1.7
Kubernetes-1.6
Kubernetes-1.5
Kubernetes-1.4
Kubernetes-1.3
Kubernetes-1.2

8
Introduction

Useful Articles
A piece of writing included with others in a newspaper, magazine, or other publication

Cloud Providers
Kubernetes on AWS by CoreOS
AWS Advent 2014 - CoreOS and Kubernetes on AWS by Tim Dsyinger
Kubernetes and AWS VPC Peering by Ben Straub
Testing Kubernetes on AWS by Alan Will
Kubernetes: First steps on Amazon AWS by Remco
Manage Kubernetes Clusters on AWS Using Kops
Production grade Kubernetes on AWS: Primer (Part 1) by Guy Maliar
Production grade Kubernetes on AWS: 4 tools that made our lives easier (Part 2) by
Guy Maliar
Production grade Kubernetes on AWS: 3 tips for networking, ingress and microservices
(Part 3) by Guy Maliar
Production grade Kubernetes on AWS: 3 lessons learned scaling a cluster (Part 4) by
Guy Maliar
Continuous Deployment with Google Container Engine and Kubernetes
Creating a Kubernetes Cluster on DigitalOcean with Python and Fabric
Deploy a Kubernetes development cluster with Juju! by Matt Bruzek
Containers at Scale with Kubernetes on OpenStack by Keith Tenzer

Logging
Logging in Kubernetes with Fluentd and Elasticsearch by Jon Langemak
Logging - Kafka topic by namespace by Michael Ward

Monitoring
Kubernetes Monitoring Guide by JM Saponaro
Installing cAdvisor and Heapster on bare metal Kubernetes by Jon Langemak
How to Monitor Kubernetes: A 4-Part Series

Security
Kubernetes Security Guide - RBAC, TLS, Security policy, Network policy, etc.
Handling Sensitive Data In A Docker Application with Kubernetes Secrets by John
Kariuki

9
Introduction

How to Create and Use Kubernetes Secrets by Mohamed Ez Ez


Kubernetes Security Best Practices by Peter Benjamin
Running Vault and Consul on Kubernetes by Michael Herman

Authentication
Kubernetes Authentication plugins and kubeconfig by Jon Langemak
Kubernetes Authentication - OpenID Connect by Michael Ward
Kubernetes authentication via GitHub OAuth and Dex by Amet Umerov

Networking
Enable IPv6 on Kubernetes with Project Calico by Valentin Ouvrard
Kubernetes in IPV6-only by Valentin Ouvrard
Kubernetes 101 – Networking by Jon Langemak
Kubernetes with OpenStack Cloud Provider: Current state and upcoming changes (part
1 of 2)
Comparison of Networking Solutions for Kubernetes

CI/CD
GitOps: High-Velocity CI/CD for Kubernetes
Achieving CI/CD with Kubernetes by Ramit Surana
Jenkins declarative pipelines with Kubernetes
Adding CI/CD to your Spring Boot app with Jenkins X and Kubernetes by Matt Raible
using Jenkins X
Continuous Delivery with Amazon EKS and Jenkins X by Henryk Konsek using Jenkins
X
Continuous Integration and Delivery to AWS Kubernetes using Semaphore
CI/CD for Microservices on DigitalOcean Kubernetes using Semaphore
CircleCI

Deep Learning
Automate deep learning training with Kubernetes GPU-cluster

Certifications
How to pass the Certified Kubernetes Administrator (CKA) exam on the first attempt

10
Introduction

Devops Tools
Deploying Kubernetes with Ansible and Terraform
Kubernetes with SaltStack revisited by Jon Langemak
Try Kubernetes with Vagrant by Christoph Hartmann
Cluster Consul using Kubernetes API
Dynamic Kubernetes installation/configuration with SaltStack by Jon Langemak
Deploying Kubernetes with SaltStack by Jon Langemak

Others
Packaging Multiple Resources together
Scaling Docker with Kubernetes by Carlos Sanchez
Creating a Kubernetes Cluster to Run Docker Formatted Container Images by Chris
Negus
Containerizing Docker on Kubernetes !! by Ramit Surana
Quay: Introducing an Application Registry for Kubernetes by Antoine Legrand
Play With Kubernetes Quickly Using Docker
1 command to Kubernetes with Docker compose by Sebastien Goasguen
Nginx Server Deployment using Kubernetes by Rajdeep Dua
What even is a kubelet? by Kamal Marhubi
Kubernetes from the ground up: the API server by Kamal Marhubi
CoreOS + Kubernetes Step By Step by Coreos
Deploying to Kubernetes with Panamax by Brian DeHamer
Deploy Kubernetes with a Single Command Using Atomicapp by Jason Brooks
Deploying a Bare Metal Kubernetes Cluster by James Kyle
Kubernetes clusters with Oh-My-Vagrant by James
Fleet Unit Files for Kubernetes on CoreOS by Michael Hamrah
Kubernetes Container Orchestration through Java APIs by Keith Tenzer
Docker Clustering Tools Compared: Kubernetes vs Docker Swarm
Why Docker and Google Kubernetes Are Like PaaS Done Right
Kubernetes Production Patterns (and Anti-Patterns)
Introducing Kubic Project
Three post learn k8s
Kubernetes tips & tricks
Running Flask on Kubernetes
Deploying Node Apps the "Right" Way by Dan Pastusek

Managed Kubernetes

11
Introduction

Platform9
OpenShift Online
Eldarion Cloud
StackPoint Cloud
Hasura
ELASTX

Cluster Managers
Cisco Container Platform

Gardener - Alibaba, AWS, Azure, GCP, and OpenStack cluster manager


Gravity - Formerly Telekube
Kqueen
Kubermatic
Kublr - AWS, Azure, GCP, vSphere, vCloud Director, and On-Prem cluster manager
PKS - Cluster manager by Pivotal, VMWare and Google
Rancher

Developer Platform
DevSpace - Build, test and run code directly inside any Kubernetes cluster

Draft - a tool for developers to create cloud native applications with Kubernetes
Eclipse Che - cloud development workspaces with SSH and multi-user support
Garden - Orchestrates your development workflows to make developing microservices
faster and easier.
goPaddle
Knative - Platform to build, deploy, and manage modern serverless workloads
Mantl
Spring Cloud integration
VAMP

Enterprise Kubernetes Products


Canonical Distribution of Kubernetes - CDK

Docker EE - Docker Enterprise Edition 2.0


IBM Cloud Private
Kublr - Kubernetes for the Enterprise - multi-cloud and on-prem Kubernetes operations
center
NetApp Kubernetes Service

12
Introduction

OpenShift - Container Platform


SUSE Container as a Service

Public/Private Cloud
Alibaba Cloud - Alibaba Cloud Container Service for Kubernetes
AWS EKS - Amazon Elastic Container Service
Azure AKS - Azure Kubernetes Service
DigitalOcean - DigitalOcean Kubernetes
GKE - Google Kubernetes Engine
IKS - IBM Cloud Kubernetes Service
OKE - Oracle Kubernetes Engine
OVH Managed Kubernetes - OVH Managed Kubernetes
Rackspace - Rackspace
VMware Cloud PKS

PaaS
Kubernetes Platform as a Service providers

Alauda Container Platform

Containerum
Eldarion Cloud
Hasura
Kel
KubeSail - An easy, free way to try Kubernetes
OpenShift Online/Dedicated/Container Platform
OpenShift Origin (OKD)
Rancher
teresa - Simple PAAS that runs on top of Kubernetes.
WSO2

Interactive Learning Environments


Learn Kubernetes using an interactive environment without requiring downloads or
configuration

Katacoda
Kubernetes Bootcamp
Magic Sandbox

13
Introduction

Play with Kubernetes

MOOC Courses / Tutorials


List of available free online courses(MOOC) and tutorials

Courses
Scalable Microservices with Kubernetes at Udacity
Introduction to Kubernetes at edX

Tutorials
Kubernetes Tutorials by Kubernetes Team

Kubernetes By Example by OpenShift Team


Kubernetes Tutorial by Tutorialspoint
Imperative vs. Declarative — a Kubernetes Tutorial by Adrien Trouillaud

Case Studies
Study of Various different case studies

Building a Bank with Kubernetes


Bringing Pokemon Go to Google Cloud
Monitoring Kubernetes at Wayblazer
Major League Soccer Monolith to Kubernetes Transition
Using Kubernetes on AWS
Kubernetes at Github
Kubernetes the hard way (installation from scratch)
Kubernetes Failure Stories

Persistent Volume Providers


List of some Persistent Volume Providers for Kubernetes.Check out Persistent Volume
Providers for more info

AWS
CephRBD

14
Introduction

GCE
Glusterfs
Hitachi
HPE
Kube-Aliyun
Linode
Microsoft
NetApp Trident
OpenEBS
OpenStack Cinder
Portworx
Pure Storage
QuoByte
Rancher Longhorn
Rook
StorageOS
Stork

Container Storage Interface Plugins


List of some Container Storage Interface plugins for Kubernetes. Check out Kubernetes-CSI
for more info

AWS EBS
AWS EFS
AWS FSx for Lustre
Ceph
Cloudscale
DigitalOcean
DriveScale
Ember
Gluster
Google Compute Engine Persistent Disk
Hostpath
Inmemory
Intel PMEM-CSI
Linode Block Storage
Mesos
MooseFs
NetApp Trident

15
Introduction

Nexenta
NFS
Nutanix
OpenSDS
OpenStack Cinder
Portworx
Quobyte
ScaleIO
Virtual Filesystem
VMware vSphere

Developer Libraries/ Scripts


List of some libraries & scripts for executions and good referrals

Python
Pykube

Jenkins
Jenkinsfile with Helm, Go, Docker, Kubectl, JNLP

Projects
Kubernetes-related projects that you might find helpful

Related Software
Projects built to make life with Kubernetes even better, more powerful, more scalable

Ambassador - API Gateway built on the Envoy Proxy


Argo - The Workflow Engine for Kubernetes
Bitnami Kubernetes Production Runtime
Client Libraries
Fission Workflows - Workflow-based serverless function composition
Forecastle - A dashboard which dynamically discovers and provides a launchpad to
access applications deployed on Kubernetes

16
Introduction

Git Webhook Proxy - A proxy to let webhooks reach running services behind a firewall
Hypernetes
Ingress Monitor Controller - Watches ingress endpoints and automatically registers
liveness alerts on the configured uptime checker
kmachine
KEDA - Kubernetes-based Event Driven Autoscaling
kube-fledged - A K8S add-on for creating and managing a cache of container images
directly on cluster worker nodes
kube-openvpn
Kubeform
Kubefuse
Kubefwd - Bulk port forwarding Kubernetes services for local development.
Kubernetes Cluster Federation (previously Ubernetes)
Kubernetes Ec2 Autoscaler
Kubic-Project
Reloader - Auto-load updates of ConfigMaps and Secrets into pods for Deployments,
StatefulSets and DaemonSets
Telepresence - Locally develop/debug services against a remote Kubernetes cluster

Package Managers
CNAB - CNABs facilitate the bundling, installing and managing of container-native apps
- and their coupled services.
Helm - For further information, please check out - Awesome Helm.
Cloudsmith - A fully managed package management SaaS, with first-class support for
public and private Kubernetes registries (Docker + Helm Charts, plus many others).

Monitoring Services
To maintain regular surveillance over kubernetes

Console
BotKube - App that helps you monitor your Kubernetes cluster, debug critical
deployments & gives recommendations for the standard practices
Datadog
eventrouter - simple introspective kubernetes service that forwards events to a specified
sink.
Goldpinger display, monitor and alert on inter-cluster connectivity
Grafana Kubernetes App

17
Introduction

Heapster
Instana
kail - Kubernetes Log Viewer. Streams logs from all containers of all matching pods.
Kubebox - Terminal console for Kubernetes
Kubedash
Kubernetes Operational View - read-only system dashboard for multiple K8s clusters
Kubespy - Tools for observing Kubernetes resources in real time, powered by Pulumi.
Kubetail
Kubewatch
Netsil
New Relic - Kubernetes monitoring and visualization service.
NexClipper - An open source software for monitoring Kubernetes and containers.
Outcold Solutions - monitoring Kubernetes, OpenShift and Docker in Splunk Enterprise
and Splunk Cloud (metrics and log forwarding)
Prometheus
Searchlight
Sysdig Monitoring
Sysdig Open Source
The Elastic Stack - An open-source solution for monitoring and visualising K8s metrics,
logs, application traces and more.
Weave Scope

Testing
Test your applications running on Kubernetes

chaoskube - periodically kills random pods in your Kubernetes cluster


k8s-testsuite - Helm chart for network and loadtesting of a Kubernetes cluster
kboom - The Kubernetes scale & soak load tester
kind - A single node cluster to run your CI tests against thats ready in 30 seconds
kube-monkey - Chaos Monkey for Kubernetes clusters
Kubeadm-dind-cluster - multi-node test cluster based on kubeadm
Litmus - Chaos engineering for stateful workloads on Kubernetes
PowerfulSeal - kills targeted pods and machines to test your software reliability
Sonobuoy - Diagnostic tool that runs Kubernetes conformance tests
Test-Infra
KubeInvaders - Gamified Chaos engineering tool for Kubernetes Clusters. It is like
Space Invaders but alien ships are pods.

18
Introduction

Continuous Delivery
Build-test-deploy automated workflow software designed to make production environments
more stable and life better for engineers

Jenkins
Jenkins-Kubernetes Plugin by Carlos Sanchez
Automated Image Builds with Jenkins, Packer, and Kubernetes
On-demand Jenkins slaves with Kubernetes and the Google Container Engine
Jenkins setups for Kubernetes and Docker Workflow
Lab: Build a Continuous Deployment Pipeline with Jenkins and Kubernetes
Jenkins Operator - Kubernetes native Jenkins operator
Jenkins X - automated CI/CD for Kubernetes with GitOps Promotion and Preview
Environments on Pull Requests using best of breed OSS tools like: Jenkins, Helm,
Skaffold, Kaniko, Knative Build, Knative Pipeline and Prow
Apollo - Open Source application providing teams with self service UI for creating and
deploying their services to Kubernetes.
Argo CD - Declarative continuous deployment for Kubernetes.
Buildkite - Lean CI/CD cloud hosted control plane with agents on your infrastructure.
Codefresh - Kubernetes CI/CD platform (with private Docker and Helm Chart
repositories)
GitLab
k8s-deploy-helper - Framework to easily deploy Kubernetes applications via GitLab.
kb8or
Keel
Kit
Kontinuous
KubeCI
Razee
Shippable
Shipper - Kubernetes native multi-cluster canary or blue-green rollouts using Helm.
Spinnaker
Vili
Weave Flux – GitOps reconcoliation operator
Wercker

Serverless Implementations
FaaS-netes
Fission

19
Introduction

Funktion
Iron.io
Kubeless
Nuclio
OpenFaaS
OpenWhisk
Virtual Kubelet - Allows nodes to be backed by other services and providers.

Operators
Cert manager
Cert Operator
cert-manager
Container Linux Update Operator
Couchbase
DB Operator
Elasticsearch
etcd
Istio
K8s Operator Workshop
Kafka
Kong API
kooper - Simple Go library to create Kubernetes operators and controllers
Kubernetes Operators
KubeVirt
Kured - Kured (Kubernetes Reboot Daemon) is a Kubernetes daemonset that performs
safe automatic node reboots
Memcached
MongoDB
MySQL
Operator Kit
Operator SDK
OperatorHub.io - A new home for the Kubernetes community to share Operators
PostgreSQL
PostgreSQL - manage PostgreSQL clusters using StatefulSets and Patroni.
Prometheus

Custom Schedulers

20
Introduction

bashScheduler - Written in bash


escheduler - Written in elixir
firmament
ksched - Experimental flow based scheduler
Scheduler - Cost based scheduler
Sticky Node Scheduler

Container Support
A list of linux containers supported by kubernetes.

Docker
Rkt
Rktnetes
rktlet - Rkt implementation of a Kubernetes
containerd
cri-containerd - Containerd-based implementation of Kubernetes Container Runtime
Interface
CRI-O
Hyper.sh/frakti - Hypervisor-based container runtime
virtlet - Kubernetes CRI implementation for running VM workloads
infranetes
Kata Containers

Database
Apache Ignite - Memory-centric distributed database, caching, processing platform
Cassandra / DataStax
CockroachDB
Crate
Hazelcast
Minio
MongoDB
RDS - Provision RDS databases via CRD from Kubernetes
Vitess - Horizontal scaling of MySql by Youtube

Networking

21
Introduction

AWS VPC CNI - Networking plugin using Elastic Network Interfaces


Calico
Canal by Tigera
Cilium
Cisco ACI - CNI plugin from Cisco support ACI fabrics
CNI-Genie
cni-ipvlan-vpc-k8s
Contiv
External DNS - To control DNS records dynamically via Kube resources
Goldpinger display, monitor and alert on inter-cluster connectivity
Infoblox
Kube-router
kubernetes-network-policy-recipes
Kuryr
Linen
Multus-cni - Multi-homed pod cni
Network-Controller - Open vSwitch, Multiple network interfaces that associate with
Kubernetes pods
NSX-T - CNI plugin supporting load balancing and distributed firewalls.
Nuage
OpenContrail
OpenVSwitch
Romana
Weave Net

Service mesh
Consul
Envoy
Istio
Linkerd
Weave Mesh

RPC
gRPC
Micro

22
Introduction

Secret generation and management


CyberArk Conjur Kubernetes Authenticator - Secure your Kubernetes-deployed
applications with CyberArk Conjur
k8sec
Kamus - A GitOps, zero-trust solution for secrets encryption/decryption solution.
kube-lego
kubernetes-vault
kubesec - Secure Secret management
Sealed Secrets
Secure GitOps Using Weave Cloud Deploy And Bitnami's Sealed Secrets
Vault auth plugin backend: Kubernetes
Vault controller

Web applications
Kubernator
Kubeapps - A web-based UI for deploying and managing applications in Kubernetes
clusters
Polaris - An open source dashbord for Kubernetes best practices

Desktop applications
Kubernetic

Mobile applications
Cabin
Cockpit

API/CLI adaptors
click - A CLI focused REPL for quickly interacting with Kubernetes objects.
Ksql
kube-prompt - Interactive kubernetes client built using go-prompt.
kube-ps1 - Kubernetes prompt helper for bash and zsh.
Kube-shell - Integrated shell for working with the Kubernetes CLI

23
Introduction

kube-tmux - Kubernetes tmux plugin to display the current context and namespace
Kubectl Aliases - Aliases for Kubectl
kubectl-plugins - A collection of kubectl plugins handling everything from easy context
switches to connecting to a container as any user (root included) via exec. Slightly
tailored towards GKE users.
kubectl-trace - Schedule bpftrace programs on your kubernetes cluster using this
kubectl plugin
kubectld
kubectx - switch between clusters on kubectl
Kubefuse
kubens - switch between namespaces on kubectl
kubensx - Simpler Cluster/User/Namespace switching for Kubernetes (featuring
interactive mode and wildcard/fuzzy matching).
kubeplay
Kubesh - Work around kubectl
StackStorm
stern - Multi pod and container log tailing
Vikube - Kubernetes operations from Vim, in Vim

Application deployment orchestration


AppController
Brigade - Event Based Scripting using JavaScript
Deployment manager
ElasticKube
Gitkube - Build and deploy docker images on Kubernetes using git push .
IBM UrbanCode
Kb8or
Nulecule
Psykube
Skaffold - Command line tool that facilitates continuous development for Kubernetes
applications.

Configuration
Ansible
Chef
Habitat
Jsonnet

24
Introduction

K8comp
kapitan - Manage complex deployments using jsonnet and jinja2
kenv
Kompose
Konfd
Ktmpl
kubecfg - Combines jsonnet and kubectl to let you declare systems in an easy to
override way
kubediff
kubegen
kustomize - Customization using partial specs
Pulumi - Provides a SDK for k8s deployments targeting on-premises clusters and major
cloud vendors' managed services.
Puppet
Saltstack
thesus - A command-line utility and importable package for comparing sets of
Kubernetes objects
Cue - A data constraint language which aims to simplify tasks involving defining and
using data. Cue is a superset of JSON

Security
Aquasec
Authenticator - A tool for using AWS IAM credentials to authenticate to a Kubernetes
cluster
Calico Network Policy (from Tigera) - Widely adopted open source implementation
unifying Kubernetes Network Policy and Istio Application Policy.
Dex - OpenID and OAuth for Kubernetes
Guard - Authenticaton webhook server with support for Github, Gitlab, Google, Azure
and LDAP (AD) as identity providers.
kiam - Allows cluster users to associate AWS IAM roles to Pods.
kube-bench - The Kubernetes Bench for Security is a Go application that checks
whether Kubernetes is deployed according to security best practices.
kube-hunter - Hunt for security weaknesses in Kubernetes clusters.
kube-psp-advisor - Help building an adaptive and fine-grained pod security policy.
kube2iam - Provides different AWS IAM roles for pods running on Kubernetes
Kubesec.io
Pomerium - a zero-trust identity-aware access proxy inspired by BeyondCorp.
Rakkess - Kubectl plugin to show an access matrix for all available resources.

25
Introduction

Sysdig Falco
Sysdig Secure
Tigera Secure Cloud Edition
Tigera Secure Enterprise Edition
Trireme
Twistlock

Load balancing
Avi Networks - Software Load Balancer | Intelligent WAF | Elastic Service Mesh
AWS ALB Ingress Controller
Cloudflare Warp Ingress
Contour - Kubernetes ingress controller for Lyft's Envoy proxy
F5 Big IP Controller
Gimbal - Platform capable of routing traffic to multiple Kubernetes and OpenStack
clusters
Gloo - Envoy-based API gateway and ingress controller
HAProxy Ingress
Linode NodeBalancer Ingress
MetalLB - load-balancer implementation for bare metal Kubernetes clusters, using
standard routing protocols.
NGINX Ingress Controller
Nginx Plus
Skipper - HTTP router and reverse proxy for service composition, including use cases
like Kubernetes Ingress
Traefik
Voyager - Secure HAProxy based Ingress Controller
Yggdrasil - Envoy Control Plane for Kubernetes Multi-cluster Ingress

Big Data
Kube-Yarn
Spark

Machine Learning
FfDL - Deep Learning Platform offering TensorFlow, Caffe, PyTorch etc. as a Service on
Kubernetes

26
Introduction

kubeflow - Machine Learning Toolkit for Kubernetes.


MLT - Machine Learning Container Templates: easy to use container and kubernetes
object templates.
mxnet-operator - Tools for ML/MXNet on Kubernetes.
Polyaxon - An open source platform for reproducible machine learning and deep
learning on kubernetes
seldon-core - Open source framework for deploying machine learning models on
Kubernetes
TensorFlow k8s

Service Discovery
Consul
Kelsey Hightower Consul
Bridge between Kubernetes and Consul

Operating System
CoreOS
GCI
k3OS
Kurma
LinuxKit
Talos

YAML/JSON Config
kompose
ksonnet-lib
kube-libsonnet - Generic library of Kubernetes objects for Jsonnet/Kubecfg with object
to array mapping for painless overrides.
kubegen
kubeval

Static Analysis
kube-score - Kubernetes object analysis with recommendations for improved reliability

27
Introduction

and security
popeye - Kubernetes cluster resource sanitzer

Tuning
Ktune

Backup and Disaster Recovery


Velero - Utility for managing backup and restore of Kubernetes clusters. Formerly
Heptio Ark.
K8up - Kubernetes and OpenShift Backup Operator based on restic
burry.sh - Cloud Native backup and recovery for etcd, zookeeper and consul
kube-backup - Sync kubernetes state to git.

Plugins
Krew - Plugin Manager

Raspberry Pi
Some of the awesome findings and experiments on using Kubernetes with Raspberry Pi.

Check out Kubecloud


Setting up a Kubernetes on ARM cluster
Setup Kubernetes on a Raspberry Pi Cluster easily the official way! by Mathias Renner
and Lucas Käldström
How to Build a Kubernetes Cluster with ARM Raspberry Pi then run .NET Core on
OpenFaas by Scott Hanselman

Books
A written or printed work consisting of pages glued or sewn together along one side and
bound in covers that provide us with information

Cloud Native DevOps with Kubernetes by John Arundel, Justin Domingus (blog)
DevOps with Kubernetes by Hideto Saito, Hui-Chuan Chloe Lee, Cheng-Yang Wu

28
Introduction

Docker and Kubernetes Under the Hood (Chinese) by Harry Zhang, Jianbo Sun and
ZJU SEL lab
Docker in Action, Second Edition by Jeff Nickoloff and Stephen Kuenzli
Docker in Practice, Second Edition by Ian Miell & Aidan Hobson Sayers
Getting Started with Kubernetes by Jonathan Baier
Golden Guide to Kubernetes Application Development by Matthew Palmer
Kubernetes Book (OpenSource Book) by Leverege Developers
Kubernetes Cookbook - Second Edition by Hideto Saito, Hui-Chuan Chloe Lee, Ke-Jou
Carol Hsu
Kubernetes Design Patterns and Extensions by Onur Yilmaz
Kubernetes Handbook (OpenSource Book in Chinese) by Pengfei Ni
Kubernetes Handbook (OpenSource Book in Chinese) by Jimmy Song
Kubernetes in Action by Marko Lukša
Kubernetes: Scheduling the Future at Cloud Scale by Dave K. Rensin
Kubernetes: Up and Running by Kelsey Hightower
Mastering Kubernetes by Gigi Sayfan
OpenShift in Action by Jamie Duncan & John Osborne
Playing with Java Microservices on Kubernetes and OpenShift by Nebrass Lamouchi
The DevOps 2.3 Toolkit: Kubernetes by Viktor Farcic

Certifications
A list of some credible certifications to certify yourself as Kubernetes expert

Certified Kubernetes Administrator (CKA)

Slide Presentations
A slide is a single page of a presentation created with software such as PowerPoint or
OpenOffice Impress.

A brief study on Kubernetes and its components by Ramit Surana


Achieving CI/CD with Kubernetes by Ramit Surana
An Introduction to Kubernetes by Imesh Gunaratne
Architecture Overview by enakai00
Cluster management with Kubernetes by Satnam Singh
Kubernetes and CoreOS @ Athens Docker meetup by Mist.io
Kubernetes Scaling SIG (K8Scale) by Bob Wise
Moving to Kubernetes - Tales from SoundCloud by Tobias Schmidt

29
Introduction

Musings on Mesos: Docker, Kubernetes, and Beyond. by Timothy St. Clair


Package your Java EE Application using Docker and Kubernetes by Arun Gupta
Scaling Jenkins with Docker and Kubernetes by Carlos Sanchez
The Top 5 Metrics to Monitor in Kubernetes
Zero downtime-java-deployments-with-docker-and-kubernetes by Arjan Schaaf

Videos
A recording of moving visual images made digitally or on videotape.

Main Account
Google Developers
Kubernetes

Other Useful Videos


A Technical Overview of Kubernetes by Bredan Burns
Alpaca Kubernetes on AWS by Adrien Lemaire
Arun Gupta: Package your Java applications using Docker and Kubernetes by Arun
Gupta
Container Orchestration using CoreOS and Kubernetes by Kelsey Hightower
DevNation 2015 - Paul Bakker - Kubernetes: Beyond the basics by Paul Bakker
Docker Containers and Kubernetes with Brian Dorsey by Brian Dorsey
Google I/O 2014 - Containerizing the Cloud with Docker on Google Cloud Platform by
Google Developers
Kubernetes-Defined Monitoring
Kubernetes: The Journey So Far - Greg DeMichillie by Greg DeMichillie
Managing Containers at Scale with CoreOS and Kubernetes by Kelsey Hightower
Shanghai '18: KubeCon + CloudNativeCon
Testing Distributed Software on Kubernetes with PowerfulSeal at Kubecon 2017 Austin
by Mikolaj Pawlikowski

CI/CD Videos
Automating CI/CD on Kubernetes with Jenkins X by James Strachan using Jenkins X
with these slides

30
Introduction

Interesting Twitter Accounts


Twitter is quick, it’s easy to communicate on, and is a very valuable social channel for a
brand or business if you use it to its full potential, By following these news aggregators,
rolling news channels, and companies, you can get the inside scoop of a story long before it
hits the mainstream news outlets.

Apcera
CoreOS
DevOps Summit
Engine Yard
Google Cloud Platform
Kismatic
Kube Con
KubeFacts
Kubernetes
KubeWeekly
Learnk8s
Skippbox - Acquired by Bitnami
Sysdig

Amazing People
Ahmet Alp Balkan, Software Engineer at Google & Google Kubernetes Engine
Aparna Sinha, Group Product Manager - Kubernetes at Google
Arun Gupta, Principal Open Source Technologist at Amazon Web Services
Brandon Philips, CTO at CoreOS
Brendan Burns, Partner Architect at Microsoft
Brian Grant, Principal Engineer at Google, Lead Architect of Kubernetes
Carlos Sanchez, Senior Software Engineer, CloudBees
Chris Aniszczyk, Chief Operating Officer at Cloud Native Computing Foundation
Eric Tune, Senior Staff Engineer at Google
Ihor Dvoretskyi, Developer Advocate at Cloud Native Computing Foundation
Jessie Frazzelle, Cloud Developer Advocate at Microsoft
Joe Beda, Founder and CTO at Heptio
Joseph Jacks, Entrepreneur In Residence at Quantum Corporation
Kelsey Hightower, Staff Developer Advocate at Google
Kris Nova, Engineer at Heptio, Creator of Kubicorn
Michelle Noorali, Software Engineer at Microsoft

31
Introduction

Paris Pittman, Developer Relations Manager - Kubernetes at Google


Patrick Reilly, Office of the CTO at Cisco, Cisco board of member for CNCF
Tim Hockin, Senior Staff SW Engineer / Engineering Manager at Google

Meetup Groups
An awesome way to connect with kubernauts around the globe

Amsterdam
Amsterdam #2
Atlanta
Bangalore
Berlin
Boston
Hamburg
Hong Kong
London
Munich
New York
Paris
Pittsburgh
Pune
San Diego
San Francisco
Seattle
Tunisia
Worldwide

Connecting with Kubernetes


Blog
Community Q&A – The Office Hours
Community
Freenode
Google +
Mailing List (developer/contributor discussion)
Mailing List (user discussion and Q&A)
Reddit

32
Introduction

Slack
Stackoverflow
Twitter

Conferences
Some must to go and attend conferences on kubernetes

Container Camp
ContainerDays
Devoxx
Docker Con
GCP Next
Kubecon

Contributing
Contributions are most welcome!

This list is just getting started, please contribute to make it super awesome.

Check out the Contributing Guidelines.

License

awesome-kubernetes by Ramit Surana is licensed under a Creative Commons Attribution-


NonCommercial 4.0 International License.

33

You might also like