1. Docker, kubelet, kubeadm 설치(For CentOS7)
1 | $ cat <<EOF > /etc/yum.repos.d/kubernetes.repo |
- master 서버 AND cluster Node서버 동일설치
2. MASTER 서버 초기화
- network add-on으로 flannel을 사용할 때는 ‘–pod-network-cidr’ 옵션이 필수이다.
1 | $ sudo kubeadm init --pod-network-cidr 10.244.0.0/16 |
- 초기화시 옵션 –kubernetes-version v1.9.2 –feature-gates CoreDNS=false
3. Master에서 Pod 수행(For TEST)
- 기본적으로 클러스터는 보안 문제로 master에서 pod를 스케줄링 하지 않는다. 하지만, 예를 들어 테스트할때 노드가 부족하거나 단일 노드에서 개발 용으로 kubernetes 클러스터를 사용할 때, master에서 pod를 스케줄링하도록 명령할 수 있다.
1 | $ kubectl taint nodes --all node-role.kubernetes.io/master- |
4. pod network add-on 설치
- 사용 가능한 network add-on 목록 중 하나를 선택한다. 클러스터 당 하나의 pod network만 설치할 수 있다. 각 network add-on 링크에 접속하면 설치 방법이 나와있다. ‘Weave Net’ 과 ‘Flannel’만이 멀티 플랫폼 환경(amd64, arm64, arhtp)을 지원한다.
1 | export KUBECONFIG=/etc/kubernetes/admin.conf |
5. Cluster Node Join
- Master에서 Pod network설치가 완료되어 ‘kube-dns’가 Running 상태가 되었는지 확인한다.
1 | $ kubectl get pods --namespace=kube-system |
- node 서버가 접속하여 master init에서 나온 결과를 입력한다.
1 | [root@node1]# kubeadm join --token 64dd18.cb6f66d53a1b8710 [master-ip]:6443 |
6. 초기화 - RESET KUBERNETES(MASTER AND CLUSTER)
1 | kubeadm reset |