Skip to content

leopoldodonnell/kubernetes-easyway

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Kubernete, the Easy Way

UNDER CONSTRUCTION Come back later or watch this repo for updates

While there are many reasons you may want to install Kubernetes the hard way, it doesn't have to be that hard. Google Cloud and Azure already have easy solutions to deploying a Kubernetes cluster with Amazon soon to join them.

Kubernetes, the Easy Way is a project to provide an Infrastructure As Code solution to managing your clusters via code and git.

  • Supports GKE and AKS (will support EKS when available)
  • Provides a central manifest of your clusters
  • Offers Prometheus/Grafana monitoring from an Ops Node Group
  • Offers Elasticsearch/Fluentd/Kibana Log Monitoring from an Ops Node Group

TL;DR

Design

Cluster YML

  • kind
  • apiVersion
  • metadata
  • region
  • backend
  • provider
  • kubernetes

metadata

backend

provider

kubernetes

NOTES

az aks get-credentials --resource-group=myResourceGroup --name=myAKSCluster -f - > kubeconfig

Use it

export KUBECONFIG=$PWD/kubeconfig kubectl get nodes

Access the dashboard at http://localhost:8001/api/v1/namespaces/kube-system/services/http:kubernetes-dashboard:/proxy/#!/overview?namespace=default

# Don't run this from inside multi-tool since localhost won't be the same as what your browser is using
export KUBECONFIG=$PWD/kubeconfig kubectl proxy

** Google KUBECONFIG **

To setup KUBECONFIG for google you need to make the cluster project current

multi-tool gcloud config set project {cluster project id}

Then you can setup the config file using

multi-tool gcloud container clusters get-credentials {CLUSTER NAME} --zone={PRIMARY ZONE}

Set KUBECONFIG if you want to use a file other than ~/.kube/config for the credentials

Both CLUSTER_NAME and PRIMARY_ZONE can be retrieved as follows:

cd clusters/{cluster dir}
multi-tool terraform output cluster_name
multi-tool terraform output primary_zone

Releases

No releases published

Packages

No packages published