Skip to content

Instantly share code, notes, and snippets.


Matt Dennie mattsdni

  • San Jose, CA
Block or report user

Report or block mattsdni

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile

Kubernetes Bare Metal

This guide shows how to install Kubernetes on a bare metal device.

Initial package installation

sudo apt-get update && sudo apt-get install -y apt-transport-https
curl -s | sudo apt-key add -
sudo touch /etc/apt/sources.list.d/kubernetes.list 
echo "deb kubernetes-xenial main" | sudo tee -a /etc/apt/sources.list.d/kubernetes.list
View fix-rbac.yaml
# Wide open access to the cluster (mostly for kubelet)
kind: ClusterRole
name: cluster-writer
- apiGroups: ["*"]
resources: ["*"]
verbs: ["*"]
- nonResourceURLs: ["*"]
View k8s-cluster.json
"Resources": {
"AWSAutoScalingAutoScalingGroupmasteruseast1amastersmyfirstclusterk8slocal": {
"Type": "AWS::AutoScaling::AutoScalingGroup",
"Properties": {
"AutoScalingGroupName": "master-us-east-1a.masters.myfirstcluster.k8s.local",
"LaunchConfigurationName": {
"Ref": "AWSAutoScalingLaunchConfigurationmasteruseast1amastersmyfirstclusterk8slocal"
"MaxSize": 1,
View quine.go
package main
import (
func main() {


Helm allows us to bundle together many Kubernetes resources into Charts

Main Concepts


A Chart is a Helm package. It contains all of the resource definitions necessary to run an application, tool, or service inside of a Kubernetes cluster. Think of it like the Kubernetes equivalent of a Homebrew formula, an Apt dpkg, or a Yum RPM file.


A Repository is the place where charts can be collected and shared. It’s like Perl’s CPAN archive or the Fedora Package Database, but for Kubernetes packages.

View bash_profile
export PS1="\[\033[36m\]\u\[\033[m\]@\[\033[32m\]\h:\[\033[33;1m\]\w\[\033[m\]\$ "
export CLICOLOR=1
export LSCOLORS=GxFxCxDxBxegedabagaced
export PATH=~/Library/Python/2.7/bin:$PATH
export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/
if [ -f ~/.git-completion.bash ]; then
You can’t perform that action at this time.