Skip to content

Instantly share code, notes, and snippets.

@damianknopp
damianknopp / hosts.yml
Created February 29, 2020 21:51
hosts.yml
# kubespray v2.12.2 hosts.yml
all:
hosts:
ip-10-0-0-113.ec2.internal:
ansible_host: 3.80.xx.xxx
ip: 10.0.0.113
access_ip: 10.0.0.113
ip-10-0-0-138.ec2.internal:
ansible_host: 18.204.2xx.xxx
ip: 10.0.0.138
@damianknopp
damianknopp / aws-eks-pv-steps.txt
Last active March 1, 2020 21:29
aws-eks-pv-steps.txt
# these steps work with AWS EKS kubernetes v1.14 and kubespray v2.12.2 kubernetes v1.16.7 cloud:aws
kubectl apply -f ebs-gp2-storageclass.yml
# if using kubespray cloud aws then you need to set storageclass, eks has this set by default
# gp2-storageclass.yml
kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
name: gp2
annotations:
@damianknopp
damianknopp / watch-iostat.sh
Created February 28, 2020 19:39
watch-iostat.sh
watch -t -n 0.1 iostat -d -t -y 5 1
@damianknopp
damianknopp / kubespray-aws.sh
Created February 28, 2020 17:04
kubespray-aws.sh
aws_kubernetes_cluster_tag=k8s
aws_kubernetes_cluster_id=k8s
aws_zone=us-east-1b
aws_vpc=vpc-xxxxxx
aws_role_arn=arn:aws:iam::xxxxxxxxx:instance-profile/kube-ec2-role
aws_region=us-east-1
aws_subnet_id=subnet-xxxxx
aws_route_table_id=rtb-xxxx
aws-vault exec api-profile -- ansible-playbook -i inventory/kube01/inventory.ini -u ubuntu \
@damianknopp
damianknopp / main.tfvars
Created February 28, 2020 17:02
main.tfvars
region = "us-east-1"
availability_zone = "us-east-1b"
worker_instance_type = "t3.xlarge"
pem_name = "kube01"
subnet_id = "subnet-xxxxxx"
security_group_id = "sg-xxxxxx"
iam_role_name = "kube-ec2-role"
@damianknopp
damianknopp / user_data.sh
Created February 28, 2020 17:01
modules/ec2/user_data.sh
#!/bin/bash
sudo apt update
# sudo apt upgrade
sudo apt install chrony -y && chronyc activity
sudo apt install python3-pip -y
sudo pip3 install --user awscli
sudo ~/.local/bin/aws configure <<EOF
@damianknopp
damianknopp / main.tf
Created February 28, 2020 17:00
modules/ec2/main.tf
# boiler plate ec2 instances for kubespray
# #!/bin/bash
# terraform init
# terraform plan
# terraform apply -var-file="main.tfvars" modules/ec2
provider "aws" {
region = "us-east-1"
}
@damianknopp
damianknopp / kube-ebs-dynamic.txt
Created February 26, 2020 14:43
kube-ebs-dynamic.txt
# ebs-gp2-storageclass.yml
kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
name: ebs-gp2
annotations:
storageclass.kubernetes.io/is-default-class: "true"
provisioner: kubernetes.io/aws-ebs
parameters:
type: gp2
@damianknopp
damianknopp / kube-ebs-static-volumes.txt
Created February 26, 2020 14:38
kube-ebs-static-volumes.txt
root@node1:~/kube# cat ebs-static-pv.yml
# kubectl apply -f <this-pv>.yml
kind: PersistentVolume
apiVersion: v1
metadata:
name: task-pv
spec:
capacity:
storage: 10Gi
accessModes:
@damianknopp
damianknopp / main.tf
Last active February 22, 2020 00:13
main.tf
# boiler plate ec2 instances for kubespray
# #!/bin/bash
# terraform init
# terraform plan
# terraform apply -var-file="main.tfvars" modules/ec2
provider "aws" {
region = "us-east-1"
}