Skip to content

Instantly share code, notes, and snippets.

@jetro157
jetro157 / install-k8s.sh
Created November 1, 2019 00:02 — forked from chukaofili/install-k8s.sh
K8s on DigitalOcean
#!/bin/bash
sudo su
echo "Initializing docker service ..."
systemctl enable docker && systemctl start docker
echo "Docker service initialized successfully."
echo "Installing CNI ..."
CNI_VERSION="v0.6.0"
mkdir -p /opt/cni/bin
@jetro157
jetro157 / ingress-nginx.sh
Created November 1, 2019 00:02 — forked from chukaofili/ingress-nginx.sh
Nginx Ingress
#!/bin/bash
kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/namespace.yaml
kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/default-backend.yaml
kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/configmap.yaml
kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/tcp-services-configmap.yaml
kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/udp-services-configmap.yaml
kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/rbac.yaml
kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/with-rbac.yaml
kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/provider/baremetal/service-nodeport.yaml
@jetro157
jetro157 / digitalocean-sc.yml
Created November 1, 2019 00:02 — forked from chukaofili/digitalocean-sc.yml
DigitalOcean storage class
kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
name: [name-goes-here]
annotations:
storageclass.kubernetes.io/is-default-class: "true"
parameters:
zone: [region-goes-here]
provisioner: external/digitalocean
@jetro157
jetro157 / do-blockstorage-pv.sh
Created November 1, 2019 00:02 — forked from chukaofili/do-blockstorage-pv.sh
Block storage script
#!/bin/bash
sudo su
mkdir -p /etc/kubernetes/kubelet-plugins/volume
## Uncomment line 8 and comment out line 7 below if you are using kubernetes 1.11+.
sed -i -e 's#\(KUBELET_EXTRA_ARGS=\)#\1--volume-plugin-dir=/etc/kubernetes/kubelet-plugins/volume #' /etc/systemd/system/kubelet.service.d/10-kubeadm.conf
# echo "KUBELET_EXTRA_ARGS=--volume-plugin-dir=/etc/kubernetes/kubelet-plugins/volume " > /etc/default/kubelet # Use /etc/default/kubelet config file instead
systemctl daemon-reload
@jetro157
jetro157 / digitalocean-pv-example.yml
Created November 1, 2019 00:02 — forked from chukaofili/digitalocean-pv-example.yml
DigitalOcean persistent volume exammple
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: pv1
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
apiVersion: v1
kind: ServiceAccount
metadata:
name: admin-user
namespace: kube-system
---
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRoleBinding
metadata:
name: admin-user
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: monitoring-influxdb
namespace: kube-system
spec:
replicas: 1
template:
metadata:
labels:
@jetro157
jetro157 / helm-rbac-config.yaml
Created November 1, 2019 00:01 — forked from chukaofili/helm-rbac-config.yaml
Helm rbac config
apiVersion: v1
kind: ServiceAccount
metadata:
name: tiller
namespace: kube-system
---
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRoleBinding
metadata:
name: tiller
apiVersion: certmanager.k8s.io/v1alpha1
kind: ClusterIssuer
metadata:
name: letsencrypt-staging
spec:
acme:
server: https://acme-staging.api.letsencrypt.org/directory
email: [your-email-goes-here]
privateKeySecretRef:
name: letsencrypt-staging
@jetro157
jetro157 / echo-server-tls.yaml
Created November 1, 2019 00:00 — forked from chukaofili/echo-server-tls.yaml
echo-server-tls.yaml
apiVersion: v1
kind: Namespace
metadata:
name: echoserver
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: echoserver
namespace: echoserver