User Tools

Site Tools


cloud:kubernetes:installation

This is an old revision of the document!


Basic installation

On Centos7, RPMs are from Ceontos7 extras repository

1 master, 2 nodes

RPM verisons

  • On master:
    • kubernetes-master, kubernetes-client - 1.5.2-0.2.gitc55cf2b.el7
    • etc - 3.1.0-2.el7
    • flannel - 0.7.0-1.el7
  • On nodes:
    • kubernetes-client, kubernetes-node - 1.5.2-0.2.gitc55cf2b.el7

Services

  • On master:
    • etcd
    • kube-apiserver
    • kube-controller-manager
    • kube-scheduler
    • flanneld
  • On nodes:
    • kubelet
    • kube-proxy
    • flanneld

Subnets, IP range

  • master and node IPs
    • master: 192.168.50.101/24
    • nodes: 192.168.50.102/24, 192.168.50.103/24
    • kubernetes cluster IP range: 10.254.0.0/16
    • flannel: 172.30.0.0/16, subnetLen:24, type: vxlan

Ports

  • etcd: 2379
  • kube-apiserver: 8080
  • kubelet: 10250

First pod

$ kubectl run hello-node --image=gcr.io/google-samples/node-hello:1.0 --port=8080

$ kubectl get deployment hello-node
NAME         DESIRED   CURRENT   UP-TO-DATE   AVAILABLE   AGE
hello-node   1         1         1            1           2d

$ kubectl get pods
NAME                          READY     STATUS    RESTARTS   AGE
hello-node-3526609615-5slx8   1/1       Running   0          2d

$ kubectl expose deployment hello-node

$ kubectl get service hello-node
NAME         CLUSTER-IP      EXTERNAL-IP   PORT(S)          AGE
hello-node   10.254.65.168   <nodes>       8080:32260/TCP   2d
$ kubectl get pods --selector="run=hello-node" --output=wide
NAME                          READY     STATUS    RESTARTS   AGE       IP            NODE
hello-node-3526609615-5slx8   1/1       Running   0          2d        172.30.65.2   node-2

$ curl http://node-2:32260
Hello Kubernetes!
cloud/kubernetes/installation.1491240626.txt.gz · Last modified: 2017/04/03 10:30 by frank