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!
If you are interested in becoming a maintainer for the awesome kubernetes list.Please drop me a mail at [email protected] with your name and github id.Thanks
What is Kubernetes? 🚢
Kubernetes is an open source orchestration system for Docker containers. It handles scheduling onto nodes in a compute cluster and actively manages workloads to ensure that their state matches the users declared intentions. Using the concepts of "labels" and "pods", it groups the containers which make up an application into logical units for easy management and discovery.
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.The project was born in the year 2015.
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.Stay tuned for more updates.
Menu
- Starting Point
- Installers
- Main Resources
- Useful Articles
- Managed Kubernetes
- Case Studies
- Persistent Volume Providers
- Related Projects
- Monitoring Services
- Continuous Delivery
- Serverless Implementation
- Operators
- Custom Schedulers
- Container Support
- Database/NoSQL
- Networking
- Service mesh
- RPC
- Secret generation and management
- Desktop applications
- Mobile applications
- API/CLI adaptors
- Application deployment orchestration
- Configuration
- Security
- Load balancing
- Developer platform
- Big Data
- Service Discovery
- Operating System
- YAML/JSON Config
- Raspberry Pi
- Books 📚
- Slide Presentations
- Videos 📺
- Interactive Learning Environments
- Interesting Twitter Accounts
- Amazing People
- Meetup Groups
- Connecting with Kubernetes
- Conferences
- Contributing
- License
Starting Point
A place that marks the beginning of a journey
- 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
- 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
Installers
- Minikube - Run Kubernetes locally
- Kops - OS Agnostique - AWS - Apache-2.0
- Kube-deploy
- Kubeadm - OS Agnostique - Cloud Agnostique - Apache-2.0
- Kargo - OS Agnostique - Cloud Agnostique - Apache-2.0
- Bootkube - CoreOS - Cloud Agnostique - Apache-2.0
- Kube-aws - CoreOS - AWS - Apache-2.0
- Kismatic - CentOS - Cloud Agnostique - Apache-2.0
- Juju - Ubuntu - Cloud Agnostique - Apache-2.0
- Terraform - CoreOS - AWS - MIT
- Supergiant - CoreOS - Cloud Agnostique - Apache-2.0
- Archon - OS Agnostique - Cloud Agnostique - Apache-2.0
Main Resources
Official resources from the Kubernetes team
Useful Articles
A piece of writing included with others in a newspaper, magazine, or other publication
- Installation on Centos 7
- Packaging Multiple Resources together
- An Introduction to Kubernetes by Justin Ellingwood
- 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
- Kubernetes 101 – Networking by Jon Langemak
- Dynamic Kubernetes installation/configuration with SaltStack by Jon Langemak
- Deploying Kubernetes with SaltStack by Jon Langemak
- Logging in Kubernetes with Fluentd and Elasticsearch by Jon Langemak
- Corekube: Running Kubernetes on CoreOS via OpenStack by Mike Metral
- Networking Kubernetes Clusters on CoreOS with Weave by Weaveworks
- 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
- AWS Advent 2014 - CoreOS and Kubernetes on AWS by Tim Dsyinger
- Kubernetes and AWS VPC Peering by Ben Straub
- Deploy a Kubernetes development cluster with Juju! by Matt Bruzek
- Try Kubernetes with Vagrant by Christoph Hartmann
- Keycloak on Kubernetes with OpenShift 3 by Marko Strukelj
- Kubernetes clusters with Oh-My-Vagrant by James
- Fleet Unit Files for Kubernetes on CoreOS by Michael Hamrah
- Kubernetes on AWS by CoreOS
- Testing Kubernetes on AWS by Alan Will
- Kubernetes: First steps on Amazon AWS by Remco
- Kubernetes Container Orchestration through Java APIs by Keith Tenzer
- Containers at Scale with Kubernetes on OpenStack by Keith Tenzer
- Installing cAdvisor and Heapster on bare metal Kubernetes by Jon Langemak
- Docker Clustering Tools Compared: Kubernetes vs Docker Swarm
- Comparison of Networking Solutions for Kubernetes
- Why Docker and Google Kubernetes Are Like PaaS Done Right
- Kubernetes Authentication plugins and kubeconfig by Jon Langemak
- Kubernetes with SaltStack revisited by Jon Langemak
- Kubernetes Authentication - OpenID Connect by Michael Ward
- How to Monitor Kubernetes: A 4-Part Series
- Logging - Kafka topic by namespace by Michael Ward
- Achieving CI/CD with Kubernetes by Ramit Surana
- Kubernetes Monitoring Guide by JM Saponaro
- Deploying Kubernetes with Ansible and Terraform
- Cluster Consul using Kubernetes API
- Continuous Deployment with Google Container Engine and Kubernetes
- Handling Sensitive Data In A Docker Application with Kubernetes Secrets by John Kariuki
- How to Create and Use Kubernetes Secrets by Mohamed Ez Ez
- Microservice Monitoring in Kubernetes with Netsil by Matt Baldwin
- Automate deep learning training with Kubernetes GPU-cluster
- Kubernetes Production Patterns (and Anti-Patterns)
Managed Kubernetes
Developer Platform
Enterprise Kubernetes Products
On Premise
- GCE - Google Compute Engine [default]
- GKE - Google Container Engine
- AWS - Amazon EC2
- Azure - Microsoft Azure
- Vsphere - VMWare VSphere
- Rackspace - Rackspace
Paas
Kubernetes Platform as a Service providers
- Deis Workflow
- [Gondor/Kel]
- WSO2
- Rancher
- Kumoru
- Open Shift Origin
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
Persistent Volume Providers
List of some Persistent Volume Providers for Kubernetes.Check out Kubernets Experimental for more info
Related Projects
Kubernetes-related projects that you might find helpful
Related Software
Projects built to make life with Kubernetes even better, more powerful, more scalable
- Hypernetes
- Ubernetes
- kmachine
- Kubefuse
- KubeSpray
- Kubernetes Ec2 Autoscaler
- Kubeform
- kube-openvpn
- Archon
- Client Libraries
Package Managers
Monitoring Services
To maintain regular surveillance over kubernetes
- Console
- Datadog
- Heapster
- Kubedash
- Kube-ui
- Netsil
- Prometheus
- Sysdig Open Source
- Sysdig Monitoring
- Weave Scope
Continuous Delivery
Build-test-deploy automated workflow software designed to make production environments more stable and life better for engineers
Serverless Implementations
Operators
Custom Schedulers
- Scheduler Example cost based scheduler by Kelsey Hightower
- Sticky Node Scheduler
- ksched Experimental flow based scheduler
- kronjob Scheduler for recurring jobs
- escheduler Example scheduler written in elixir
- bashScheduler Example scheduler written in bash
Container Support
A list of linux containers supported by kubernetes.
Database
- CockroachDB
- Cassandra / DataStax
- MongoDB
- Hazelcast
- Crate
- Minio
- Vitess - Horizontal scaling of MySql by Youtube
Networking
Service mesh
RPC
Secret generation and management
Desktop applications
Mobile applications
API/CLI adaptors
Application deployment orchestration
Configuration
Security
Load balancing
Big Data
Service Discovery
Operating System
YAML/JSON Config
- Kube.libsonnet - Currently Unstable
Raspberry Pi
Some of the awesome findings and experiments on using Kubernetes with Raspberry Pi.Checkout Kubecloud
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
- Kubernetes: Up and Running by Kelsey Hightower
- Docker and Kubernetes Under the Hood (Chinese) by Harry Zhang, Jianbo Sun and ZJU SEL lab
- Kubernetes: Scheduling the Future at Cloud Scale by Dave K. Rensin
- Kubernetes in Action by Marko Lukša
- Kubernetes Cookbook by Hideto Saito, Hui-Chuan Chloe Lee, Ke-Jou Carol Hsu
- Getting Started with Kubernetes by Jonathan Baier
- Kubernetes Handbook (OpenSource Book in Chinese) by Pengfei Ni
- Mastering Kubernetes by Gigi Sayfan
Slide Presentations
A slide is a single page of a presentation created with software such as PowerPoint or OpenOffice Impress.
- Architecture Overview by enakai00
- Package your Java EE Application using Docker and Kubernetes by Arun Gupta
- Scaling Jenkins with Docker and Kubernetes by Carlos Sanchez
- An Introduction to Kubernetes by Imesh Gunaratne
- Musings on Mesos: Docker, Kubernetes, and Beyond. by Timothy St. Clair
- Cluster management with Kubernetes by Satnam Singh
- A brief study on Kubernetes and its components by Ramit Surana
- Moving to Kubernetes - Tales from SoundCloud by Tobias Schmidt
- Kubernetes Scaling SIG (K8Scale) by Bob Wise
- Network oriented Kubernetes intro by Salv Orlando
- Zero downtime-java-deployments-with-docker-and-kubernetes by Arjan Schaaf
- Kubernetes and CoreOS @ Athens Docker meetup by Mist.io
- Achieving CI/CD with Kubernetes by Ramit Surana
- The Top 5 Metrics to Monitor in Kubernetes
Videos
A recording of moving visual images made digitally or on videotape.
Main Account
Other Useful Videos
- Google I/O 2014 - Containerizing the Cloud with Docker on Google Cloud Platform by Google Developers
- Container Orchestration using CoreOS and Kubernetes by Kelsey Hightower
- A Technical Overview of Kubernetes by Bredan Burns
- Docker Containers and Kubernetes with Brian Dorsey by Brian Dorsey
- Alpaca Kubernetes on AWS by Adrien Lemaire
- Arun Gupta: Package your Java applications using Docker and Kubernetes by Arun Gupta
- "Managing Containers at Scale with CoreOS and Kubernetes" by Kelsey Hightower by Kelsey Hightower
- Kubernetes: The Journey So Far - Greg DeMichillie by Greg DeMichillie
- DevNation 2015 - Paul Bakker - Kubernetes: Beyond the basics by Paul Bakker
- Kubernetes-Defined Monitoring
Interactive Learning Environments
Learn Kubernetes using an interactive environment without requiring downloads or configuration
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.
- Kubernetes
- Google Cloud Platform
- Kube Con
- Kismatic
- Engine Yard
- Apcera
- CoreOS
- DevOps Summit
- KubeWeekly
- KubeFacts
- Skippbox
- Sysdig
Amazing People
- Bredan Burns, Partner Architect at Microsoft
- Kelsey Hightower, Staff Developer Advocate at Google
- Arun Gupta, Vice President, Developer Relations at Couchbase
- Carlos Sanchez, Senior Software Engineer, CloudBees
- Joseph Jacks, Senior Director, Product Management: Kubernetes Platform Engineering at Apprenda
- Joe Beda, Co-founder and Technical Lead for Kubernetes
- Patrick Reilly, CEO at Kismatic, Inc. / Advisor at Mesosphere, Inc
- Brandon Philips, CTO at CoreOS
- Eric Tune, Senior Staff Engineer at Google
- Tim Hockin, Senior Staff SW Engineer / Engineering Manager at Google
- Brian Grant, System Software Architect at Google
Meetup Groups
An awesome way to connect with kubernauts around the globe
Connecting with Kubernetes
Conferences
Some must to go and attend conferences on kubernetes
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.