Last active
March 1, 2019 03:52
-
-
Save yv84/d03ed5353b4368fdc3feb0c62e3e8cc7 to your computer and use it in GitHub Desktop.
try kube
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| https://www.youtube.com/watch?v=wHyRnO4UI5E | |
| https://www.youtube.com/watch?v=6xJwQgDnMFE | |
| https://blog.alexellis.io/kubernetes-in-10-minutes/ | |
| Install Docker | |
| https://docs.docker.com/install/linux/docker-ce/ubuntu/#install-using-the-repository | |
| Install Kubernetes apt repo | |
| $ sudo apt-get update \ | |
| && sudo apt-get install -y apt-transport-https \ | |
| && curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add - | |
| OK | |
| $ echo "deb http://apt.kubernetes.io/ kubernetes-xenial main" \ | |
| | sudo tee -a /etc/apt/sources.list.d/kubernetes.list \ | |
| && sudo apt-get update | |
| CNI stands for Container Networking Interface which is a spec that defines how network drivers should interact with Kubernetes | |
| $ sudo apt-get update \ | |
| && sudo apt-get install -y \ | |
| kubelet \ | |
| kubeadm \ | |
| kubernetes-cni | |
| $ sudo swapoff -a | |
| $ sudo vi /etc/fstab | |
| sudo kubeadm reset | |
| sudo hostnamectl set-hostname k8s-master | |
| sudo vi /etc/hostname | |
| sudo kubeadm init --pod-network-cidr=10.244.0.0/16 --apiserver-advertise-address=192.168.100.4 --kubernetes-version stable-1.12 | |
| # https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-token/ - 24h | |
| # kubeadm token create | |
| # kubeadm token list | |
| sudo kubeadm join 192.168.100.4:6443 --token xqm72p.2vl2xdpufxfufrni --discovery-token-ca-cert-hash sha256:38b976c0ef3d62fc03d1432f6e456b8842491af209ecb223635ed7e11fc696d3 | |
| from HELP | |
| mkdir -p $HOME/.kube | |
| sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config | |
| sudo chown $(id -u):$(id -g) $HOME/.kube/config | |
| https://kubernetes.io/docs/setup/independent/create-cluster-kubeadm/ (Installing a pod network add-on) | |
| sysctl net.bridge.bridge-nf-call-iptables=1 | |
| #kubectl apply -f "https://cloud.weave.works/k8s/net?k8s-version=$(kubectl version | base64 | tr -d '\n')" | |
| kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/bc79dd1505b0c8681ece4de4c0d86c5cd2643275/Documentation/kube-flannel.yml | |
| #kubectl apply -f https://raw.githubusercontent.com/romana/romana/master/containerize/specs/romana-kubeadm.yml | |
| sudo hostnamectl set-hostname k8s-slave1 | |
| sudo kubeadm join 192.168.100.4:6443 --token kxi3ch.8wf6qo4t5z40lxo3 --discovery-token-ca-cert-hash sha256:7f8b4646da7a45a891044b79ee037ae6a110046b8aa9561452477fee27dec33f | |
| kubectl get all --namespace=kube-system | |
| NAME READY STATUS RESTARTS AGE | |
| pod/coredns-576cbf47c7-dn6rb 1/1 Running 0 11m | |
| pod/coredns-576cbf47c7-vk4d4 1/1 Running 0 11m | |
| pod/etcd-k8s-master 1/1 Running 0 11m | |
| pod/kube-apiserver-k8s-master 1/1 Running 0 11m | |
| pod/kube-controller-manager-k8s-master 1/1 Running 0 11m | |
| pod/kube-proxy-c7g9g 1/1 Running 0 11m | |
| pod/kube-proxy-ws254 1/1 Running 0 5m53s | |
| pod/kube-scheduler-k8s-master 1/1 Running 0 11m | |
| pod/weave-net-6pk5k 2/2 Running 0 9m15s | |
| pod/weave-net-98r4s 2/2 Running 0 5m53s | |
| NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE | |
| service/kube-dns ClusterIP 10.96.0.10 <none> 53/UDP,53/TCP 12m | |
| NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE | |
| daemonset.apps/kube-proxy 2 2 2 2 2 <none> 12m | |
| daemonset.apps/weave-net 2 2 2 2 2 <none> 9m15s | |
| NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE | |
| deployment.apps/coredns 2 2 2 2 12m | |
| NAME DESIRED CURRENT READY AGE | |
| replicaset.apps/coredns-576cbf47c7 2 2 2 11m | |
| kubectl get nodes | |
| NAME STATUS ROLES AGE VERSION | |
| k8s-master Ready master 7m32s v1.12.0 | |
| k8s-slave1 Ready <none> 69s v1.12.0 | |
| kubectl get pods | |
| # https://medium.com/@claudiopro/getting-started-with-kubernetes-via-minikube-ada8c7a29620 | |
| kubectl create hello-minikube --image=gcr.io/google_containers/echoserver:1.4 --port=8080 | |
| kubectl expose deployment hello-minikube --type=NodePort | |
| $ kubectl get services | |
| NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE | |
| hello-minikube NodePort 10.101.16.0 <none> 8080:30330/TCP 38s | |
| kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 39m | |
| navigate -> http://192.168.100.4:30330 | |
| kubectl delete service,deployment hello-minikube | |
| # https://kubernetes.io/docs/reference/kubectl/docker-cli-to-kubectl/ | |
| kubectl expose deployment nginx-app --name=nginx-http --port=80 --nodePort=9980 --type=NodePort | |
| kubectl get events | |
| # Create or modify /etc/docker/daemon.json on the client machine | |
| # { "insecure-registries":["myregistrydomain.com:5000"] } | |
| # DOCKER_OPTS="$DOCKER_OPTS --insecure-registry myregistrydomain.com:5000" | |
| sudo service docker restart | |
| sudo docker login -u admin -p admin https://myregistrydomain.com:5000 | |
| sudo cp ~/.docker/config.json /var/lib/kubelet/config.json | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment