47 KiB
- Kubernetes
- Certified Kubernetes Offerings
- Operators
- Tools for multi-cloud kubernetes management
- GKE vs EKS vs AKS
- Kubenetes Tutorials
- Kubernetes Cheat Sheets
- Kubernetes Patterns
- Kubernetes Networking
- Kubernetes Sidecars
- Kubernetes Storage
- Local Installers
- Production Cluster Installers
- VMware Kubernetes
- Rancher: Enterprise management for Kubernetes
- Helm and Kubernetes
- Other tools
- Demos
- Spring PetClinic Sample Application
- SpringBoot with Docker
- Troubleshooting
- Security
- AWS EKS
- Docker in Docker
- Serverless
- Container Ecosystem
- Container Flowchart
- Videos
Kubernetes
-
stackify.com: The Advantages of Using Kubernetes and Docker Together 🌟🌟🌟
-
kubedex.com 🌟🌟🌟 Discover, Compare and Share Kubernetes Applications
-
medium.com: A Year Of Running Kubernetes at MYOB, And The Importance Of Empathy
-
labs.mwrinfosecurity.com: Attacking Kubernetes through Kubelet
-
blog.doit-intl.com: Kubernetes and Secrets Management in the Cloud
-
techbeacon.com: Why teams fail with Kubernetes—and what to do about it 🌟🌟🌟
-
itnext.io: Kubernetes rolling updates, rollbacks and multi-environments 🌟🌟🌟
-
learnk8s.io: Architecting Kubernetes clusters — choosing a worker node size 🌟🌟🌟
-
medium.com: Kubernetes NodePort vs LoadBalancer vs Ingress? When should I use what? 🌟🌟🌟
-
sysdig.com: Understanding Kubernetes limits and requests by example 🌟🌟🌟
-
youtube: Kubernetes 101: Get Better Uptime with K8s Health Checks
-
learnk8s.io: Load balancing and scaling long-lived connections in Kubernetes 🌟🌟🌟🌟🌟
-
itnext.io: Successful & Short Kubernetes Stories For DevOps Architects
-
kind of a handy way to see all thing things you can affect with Kubernetes RBAC. This will list all resources and sub resources that you can constrain with RBAC. If you want to see just subresources append "| grep {name}/":
kubectl get --raw /openapi/v2 | jq '.paths | keys[]' -
blog.alexellis.io: Get a LoadBalancer for your private Kubernetes cluster
-
share a configMap in kubernetes between namespaces:
kubectl get configmap --namespace=<source> <configmap> --export -o yaml | sed "s/<source>/<dest>/" | kubectl apply --namespace=<dest> -f - -
returngis.net: Pruebas de vida de nuestros contenedores en Kubernetes
-
itnext.io: K8s prevent queue worker Pod from being killed during deployment How to prevent a Kubernetes (like RabbitMQ) queue worker Pod from being killed during deployment while handling a message?
-
youtube: deployment strategies in kubernetes | recreate | rolling update | blue/green | canary
-
sysdig.com: Understanding Kubernetes limits and requests by example 🌟🌟🌟
-
learnk8s.io: Architecting Kubernetes clusters — how many should you have? 🌟
-
magalix.com: Capacity Planning 🌟🌟🌟 When we have multiple Pods with different Priority Class values, the admission controller starts by sorting Pods according to their priority. What happens when there are no nodes with available resources to schedule a high-priority pods?
-
enterprisersproject.com: Kubernetes: Everything you need to know (2020) 🌟🌟🌟
-
learnk8s.io: Provisioning cloud resources (AWS, GCP, Azure) in Kubernetes 🌟🌟🌟
-
padok.fr: Kubernetes’ Architecture: Understanding the components and structure of clusters 🌟🌟🌟
Certified Kubernetes Offerings
Operators
- kruschecompany.com: What is a Kubernetes Operator and Where it Can be Used?
- kruschecompany.com: Prometheus Operator – Installing Prometheus Monitoring Within The Kubernetes Environment
- redhat.com: Kubernetes operators - Embedding operational expertise side by side with containerized applications
- hashicorp.com: Creating Workspaces with the HashiCorp Terraform Operator for Kubernetes
- banzaicloud.com: Kafka rolling upgrade made easy with Supertubes
- devops.com: Day 2 for the Operator Ecosystem 🌟🌟🌟
- KUDO: The Kubernetes Universal Declarative Operator 🌟🌟 KUDO is a toolkit that makes it easy to build Kubernetes Operators, in most cases just using YAML.
Tools for multi-cloud Kubernetes management
GKE vs EKS vs AKS
- medium.com: Kubernetes Cloud Services: Comparing GKE, EKS and AKS
- stackrox.com: EKS vs GKE vs AKS - Evaluating Kubernetes in the Cloud
Kubernetes Tutorials
- katacoda.com 🌟🌟🌟🌟 Interactive Learning and Training Platform for Software Engineers
- kubernetesbyexample.com 🌟🌟🌟
- Play with Kubernetes 🌟🌟🌟🌟 A simple, interactive and fun playground to learn Kubernetes
- devopscube.com: Kubernetes Tutorials For Beginners: Getting Started Guide 🌟🌟🌟
- Intoduction to Kubernetes (slides, beginners and advanced) 🌟🌟🌟🌟🌟
- medium.com: Kubernetes 101: Pods, Nodes, Containers, and Clusters
- medium.com: Learn Kubernetes in Under 3 Hours: A Detailed Guide to Orchestrating Containers
- kubernetestutorials.com: Install and Deploy Kubernetes on CentOs 7
- medium.com: Simplifying orchestration with Kubernetes
- aquasec.com: 70 Best Kubernetes Tutorials 🌟🌟🌟🌟 Valuable Kubernetes tutorials from multiple sources, classified into the following categories: Kubernetes AWS and Azure tutorials, networking tutorials, clustering and federation tutorials and more.
- cloud.google.com: kubernetes comic 🌟🌟🌟 Learn about kubernetes and how you can use it for continuous integration and delivery.
- magalix.com: Kubernetes 101 - Concepts and Why It Matters
- Google Play: Learning Solution - Learn Kubernetes 🌟🌟🌟
- Google Play: TomApp - Learn Kubernetes
- Dzone refcard: Getting Started with Kubernetes
- udemy.com: Learn DevOps: The Complete Kubernetes Course 🌟🌟🌟🌟
- udemy.com: Learn DevOps: Advanced Kubernetes Usage 🌟🌟🌟🌟
- Famous Kubernetes resources of 2019:
- wardviaene/kubernetes-course 🌟🌟🌟🌟
- wardviaene/advanced-kubernetes-course 🌟🌟🌟🌟
- dzone: The complete kubernetes collection tutorials and tools 🌟🌟🌟🌟
- dzone: kubernetes in 10 minutes a complete guide to look
- magalix.com: The Best Kubernetes Tutorials 🌟🌟🌟
- 35 Advanced Tutorials to Learn Kubernetes 🌟🌟🌟
- javarevisited.blogspot.com: Top 5 courses to Learn Docker and Kubernetes in 2020 - Best of Lot
Kubernetes Cheat Sheets
- developers.redhat.com: Kubernetes Cheat Sheet 🌟
- kubernetes.io 🌟🌟🌟
- linuxacademy
- fabric8 - kubectl
- intellipaat.com 🌟🌟
- dzone: kubectl commands cheat sheet
- jimmysong.io: kubectl cheat sheet 🌟🌟
- cheatsheet.dennyzhang.com: kubectl kubernetes free cheat sheet 🌟🌟🌟
Kubernetes Patterns
- redhat.com: Kubernetes Patterns e-book 🌟🌟🌟🌟
- github.com/k8spatterns/examples 🌟🌟🌟 Examples for "Kubernetes Patterns - Reusable Elements for Designing Cloud-Native Applications"
- kubernetes.io: container design patterns
- magalix.com: Kubernetes Patterns - The Service Discovery Pattern 🌟🌟🌟
- gardener.cloud: Kubernetes Antipatterns
- dzone.com: Performance Patterns in Microservices-Based Integrations 🌟🌟🌟🌟🌟
Kubernetes Networking
- dzone: how to setup kubernetes networking
- AWS and Kubernetes Networking Options and Trade-Offs (part 1)
- AWS and Kubernetes Networking Options and Trade-Offs (part 2)
- AWS and Kubernetes Networking Options and Trade-Offs (part 3)
- ovh.com - getting external traffic into kubernetes: clusterip, nodeport, loadbalancer and ingress
- youtube: Kubernetes Ingress Explained Completely For Beginners
- stackrox.com: Kubernetes Networking Demystified: A Brief Guide
- medium.com: Fighting Service Latency in Microservices With Kubernetes
Kubernetes Sidecars
Kubernetes Storage
Local Installers
- Minikube A tool that makes it easy to run Kubernetes locally inside a Linux VM. It's aimed on users who want to just test it out or use it for development. It cannot spin up a production cluster, it's a one node machine with no high availability.
- kind Kubernetes IN Docker - local clusters for testing Kubernetes
- store.docker.com: Docker Community Edition EDGE with kubernetes. Installing Kubernetes using the Docker Client Currently only available in Edge edition.
- medium.com: Local Kubernetes for Linux — MiniKube vs MicroK8s
- itnext.io: Run Kubernetes On Your Machine Several options to start playing with K8s in no time
Production Cluster Installers
-
- Minikube and docker client are great for local setups, but not for real clusters. Kops and kubeadm are tools to spin up a production cluster. You don't need both tools, just one of them.
- On AWS, the best tool is kops
- At some point AWS EKS (hosted kubernetes) will be available, at that point this will probably be the preferred option. (You won't need to maintain the masters).
- For other installs, or if you can't get kops to work, you can use kubeadm
- kubeadm is an alternative approach, kops is still recommended (on AWS) - you also have AWS integrations with kops automatically
- Setup kops in your windows with virtualbox.org and vagrantup.com . Once downloaded, to type a new linux VM, just type in cmd/powershell:
- Spin up ubuntu via vagrant:
C:\ubuntu> vagrant init ubuntu/xenial64 C:\ubuntu> vagrant up [...] C:\ubuntu> vagrant ssh-config C:\ubuntu> vagrant ssh- Runt kops installer:
curl -LO https://github.com/kubernetes/kops/releases/download/$(curl -s https://api.github.com/repos/kubernetes/kops/releases/latest | grep tag_name | cut -d '"' -f 4)/kops-linux-amd64 chmod +x kops-linux-amd64 sudo mv kops-linux-amd64 /usr/local/bin/kops -
Kubernetes Cluster with Kubeadm It works on any deb / rpm compatible Linux OS, for example Ubuntu, Debian, RedHat or CentOS. This is the main advantage of kubeadm. The tool itself is still in beta (Q1 2018), but is expected to become stable somewhere this year. It's very easy to use and lets you spin kubernetes cluster in just a couple of minutes.
-
A Comparative Analysis of Kubernetes Deployment Tools: Kubespray, kops, and conjure-up
-
wecloudpro.com: Deploy HA kubernetes cluster in AWS in less than 5 minutes
-
infoq.com: WKSctl: a Tool for Kubernetes Cluster Management Using GitOps
-
napo.io: Terraform Kubernetes Multi-Cloud (ACK, AKS, DOK, EKS, GKE, OKE)
-
linecorp.com: Building Large Kubernetes Clusters with Caravan
-
k8s-tew Kubernetes is a fairly complex project. For a newbie it is hard to understand and also to use. While Kelsey Hightower’s Kubernetes The Hard Way, on which this project is based, helps a lot to understand Kubernetes, it is optimized for the use with Google Cloud Platform.
VMware Kubernetes
- blogs.vmware.com: Introducing Project Pacific (vSphere with Kubernetes)
- VMware vSphere 7 with Kubernetes - Project Pacific
- VMware Kubernetes Tanzu
- cormachogan.com: A first look at vSphere with Kubernetes in action
- cormachogan.com: Building a TKG Cluster in vSphere with Kubernetes
- blogs.vmware.com: VMware Tanzu Service Mesh, built on VMware NSX is Now Available!
Rancher: Enterprise management for Kubernetes
- rancher.com Rancher is enterprise management for Kubernetes, an amazing GUI for managing and installing Kubernetes clusters. They have released a number of pieces of software that are part of this ecosystem, for example Longhorn which is a lightweight and reliable distributed block storage system for Kubernetes.
- Rancher 2
- Rancher 2 RKE Rancher 2 that runs in docker containers. RKE is a CNCF-certified Kubernetes distribution that runs entirely within Docker containers. It solves the common frustration of installation complexity with Kubernetes by removing most host dependencies and presenting a stable path for deployment, upgrades, and rollbacks.
- k3s Basic kubernetes with automated installer.
- K8s vs k3s "K3s is designed to be a single binary of less than 40MB that completely implements the Kubernetes API. In order to achieve this, they removed a lot of extra drivers that didn't need to be part of the core and are easily replaced with add-ons. K3s is a fully CNCF (Cloud Native Computing Foundation) certified Kubernetes offering. This means that you can write your YAML to operate against a regular "full-fat" Kubernetes and they'll also apply against a k3s cluster. Due to its low resource requirements, it's possible to run a cluster on anything from 512MB of RAM machines upwards. This means that we can allow pods to run on the master, as well as nodes. And of course, because it's a tiny binary, it means we can install it in a fraction of the time it takes to launch a regular Kubernetes cluster! We generally achieve sub-two minutes to launch a k3s cluster with a handful of nodes, meaning you can be deploying apps to learn/test at the drop of a hat."
- k3d k3s that runs in docker containers.
- k3OS k3OS is a Linux distribution designed to remove as much OS maintenance as possible in a Kubernetes cluster. It is specifically designed to only have what is needed to run k3s. Additionally the OS is designed to be managed by kubectl once a cluster is bootstrapped. Nodes only need to join a cluster and then all aspects of the OS can be managed from Kubernetes. Both k3OS and k3s upgrades are handled by the k3OS operator.
- k3sup (said 'ketchup') is a light-weight utility to get from zero to KUBECONFIG with k3s on any local or remote VM. All you need is ssh access and the k3sup binary to get kubectl access immediately.
- rancher.com: Custom alerts using Prometheus queries
- Fleet Management for kubernetes a new open source project from the team at Rancher focused on managing fleets of Kubernetes clusters.
- Announcing Hosted Rancher with Rancher 2.4 🌟🌟🌟
- zdnet.com: Rancher Labs closes $40M funding round to "run Kubernetes everywhere" The six year-old startup is going after new markets that want to run Kubernetes clusters at the edge.
- rancher.com/blog: Deploy Kubernetes Clusters on Microsoft Azure with Rancher
- rancher.com/blog: Getting Started with Longhorn Distributed Block Storage and Cloud-Native Distributed SQL
![]() |
![]() |
|---|---|
![]() |
Helm and Kubernetes
- helm.sh
- GitHub: Helm, the Kubernetes Package Manager Installing and managing Kubernetes applications
- Helm and Kubernetes Tutorial - Introduction
- Delve into Helm: Advanced DevOps
- Continuously delivering apps to Kubernetes using Helm
- Zero to Kubernetes CI/CD in 5 minutes with Jenkins and Helm
- DevOps with Azure, Kubernetes, and Helm
- dzone: the art of the helm chart patterns
- dzone: 15 useful helm chart tools
- dzone: create install upgrade and rollback a helm chart - part 1
- dzone: create install upgrade and rollback a helm chart - part 2
- dzone: cicd with kubernetes and helm
- dzone: do you need helm?
- dzone: managing helm releases the gitops way
- codefresh.io: Using Helm 3 with Helm 2 charts
- Helm Charts:
- Jenkins
- Codecentric Jenkins 🌟 Helm 3 compliant (Simpler and more secure than helm 2)
- Nexus3
- Choerodon Nexus3 🌟 Helm 3 compliant (Simpler and more secure than helm 2)
- Sonar
- Selenium
- Jmeter
- bitnami: create your first helm chart
- Helm Charts repositories:
Other tools
- VMware octant A web-based, highly extensible platform for developers to better understand the complexity of Kubernetes clusters.
- octant.dev Visualize your Kubernetes workloads. Octant is an open source developer-centric web interface for Kubernetes that lets you inspect a Kubernetes cluster and its applications.
- KSS - Kubernetes pod status on steroid
- kubectl-debug
- kubectl-tree kubectl plugin to browse Kubernetes object hierarchies as a tree
- The Golden Kubernetes Tooling and Helpers list
- kubech (kubectl change) Set kubectl contexts/namespaces per shell/terminal to manage multi Kubernetes cluster at the same time.
- Kubecle is a web ui running locally that provides useful information about your kubernetes clusters. It is an alternative to Kubernetes Dashboard. Because it runs locally, you can access any kubernetes clusters you have access to
- Permission Manager is a project that brings sanity to Kubernetes RBAC and Users management, Web UI FTW
- developer.sh: Kubernetes client tools overview
- kubectx Faster way to switch between clusters and namespaces in kubectl
- go-kubectx 5x-10x faster alternative to kubectx. Uses client-go.
- kubevious is open-source software that provides a usable and highly graphical interface for Kubernetes. Kubevious renders all configurations relevant to the application in one place.
- Guard is a Kubernetes Webhook Authentication server. Using guard, you can log into your Kubernetes cluster using various auth providers. Guard also configures groups of authenticated user appropriately.
- itnext.io: arkade by example — Kubernetes apps, the easy way 🌟🌟🌟
- Kubei is a flexible Kubernetes runtime scanner, scanning images of worker and Kubernetes nodes providing accurate vulnerabilities assessment.
- Tubectl: a kubectl alternative which adds a bit of magic to your everyday kubectl routines by reducing the complexity of working with contexts, namespaces and intelligent matching resources.
- Kpt: Packaging up your Kubernetes configuration with git and YAML since 2014 (Google)
- Krew 🌟🌟🌟 is the plugin manager for kubectl command-line tool.
- kubernetes-common-services These services help make it easier to manage your applications environment in Kubernetes
- k8s-job-notify Kubernetes Job/CronJob Notifier. This tool sends an alert to slack whenever there is a Kubernetes cronJob/Job failure/success.
- kube-opex-analytics 🌟🌟🌟🌟 Kubernetes Cost Allocation and Capacity Planning Analytics Tool. Built-in hourly, daily, monthly reports - Prometheus exporter - Grafana dashboard.
- kubeletctl is a command line tool that implement kubelet's API. Part of kubelet's API is documented but most of it is not. This tool covers all the documented and undocumented APIs. The full list of all kubelet's API can be view through the tool or this API table. What can it do ?:
- Run any kubelet API call
- Scan for nodes with opened kubelet API
- Scan for containers with RCE
- Run a command on all the available containers by kubelet at the same time
- Get service account tokens from all available containers by kubelet
- Nice printing :)
- inspektor-gadget Collection of gadgets for debugging and introspecting Kubernetes applications using BPF kinvolk.io
- K8bit — the tiny Kubernetes dashboard 🌟 K8bit is a tiny dashboard that is meant to demonstrate how to use the Kubernetes API to watch for changes.
Demos
- kubernetesbyexample.com 🌟🌟🌟
- github.com/eon01/kubernetes-workshop
- github.com/wardviaene (kubernetes, terraform, ansible, docker, etc) 🌟🌟🌟
- github.com/kubernetes-course/container_workshops
- Mautic
- bitbucket.org: setting up a cicd pipeline with spring mvc and kubernetes on aws
- codeburst.io: getting started with kubernetes, deploy a docker container in 5 minutes
- Medium.com - Simple Spring Boot microservice deployed in Kubernetes using Docker and Nexus 🌟🌟🌟:
- kublr.com: cicd pipeline with jenkins nexus kubernetes
- Kubernetes workshop in a box
Spring PetClinic Sample Application
- spring-petclinic.github.io
- github.com/spring-projects/spring-petclinic
- deors/deors-demos-petclinic jenkinsfile
- liatrio.com: building with docker using jenkins pipelines
- stackoverflow: How to define BuildConfig object with Jenkins and openshift
- cloudogu.com: CD with Jenkins, Nexus and cloudogu
- experfy.com e-learning: Effective Jenkins - Continuous Delivery and Continuous Integration
- Modular Pipeline Library: 4. Petclinic Pipeline 🌟🌟🌟🌟
- PetClinic on Kubernetes:
- PetClinic Docker images:
- OpenShift.io Samples 🌟🌟🌟🌟🌟
SpringBoot with Docker
- spring.io: spring boot with docker
- spring.io: Creating Docker images with Spring Boot 2.3.0.M1
- learnk8s.io: Developing and deploying Spring Boot microservices on Kubernetes
Troubleshooting
- Kubernetes troubleshooting diagram 🌟🌟🌟
- Understanding Kubernetes cluster events 🌟🌟
- nigelpoulton.com: Troubleshooting kubernetes service discovery - Part 1
- medium: 5 tips for troubleshooting apps on Kubernetes
Security
- cilium.io
- openpolicyagent.org 🌟🌟🌟
- Dzone - devops security at scale
- searchitoperations.techtarget.com: kubernetes policy project
- Dzone - Kubernetes Policy Management with Kyverno
- Dzone - OAuth 2.0
- Kubernetes Security Best Practices 🌟🌟🌟🌟
- Pod Security Policy (SCC in OpenShift) 🌟
- EKS Security:
- magalix.com: kubernetes authentication 🌟🌟
- magalix.com: kubernetes authorization 🌟🌟
- kubernetes login
- Kubernetes Certs
- jeffgeerling.com: Everyone might be a cluster-admin in your Kubernetes cluster
- rancher.com: Enhancing Kubernetes Security with Pod Security Policies, Part 1
- Microsoft.com: Attack matrix for Kubernetes 🌟🌟🌟
- codeburst.io: 7 Kubernetes Security Best Practices You Must Follow
AWS EKS
- dzone: kops VS EKS
- udemy.com: amazon eks starter kubernetes on aws
- eksworkshop.com
- eksctl: EKS installer
- Deploy example microservices on EKS:
- medium: Implementing Kubernetes Cluster using AWS EKS (AWS Managed Kubernetes)
- Amazon EKS Security Best Practices
- thenewstack.io: Install and Configure OpenEBS on Amazon Elastic Kubernetes Service
Docker in Docker
- Building Docker images when running Jenkins in Kubernetes
- itnext.io: docker in docker
- code-maze.com: ci jenkins docker
- medium: quickstart ci with jenkins and docker in docker
- getintodevops.com: the simplest way to run docker in docker
- Docker in Docker on EKS:
Serverless
- itnext.io: Deploy your first Serverless Function to Kubernetes
- FaaS arquitecture:
Container Ecosystem
Container Flowchart
Assess managed Kubernetes services for your workloads. Managed services from cloud providers can simplify Kubernetes deployment but create some snags in a multi-cloud model. Follow three steps to see if these services can benefit you.






