지돌이의 블로그 입니다!

Kubernetes

Master Node 초기화

  1. sysctl 수정

현재 Runtime에 대한 sysctl 변경

$ sudo sysctl net.bridge.bridge-nf-call-iptables=1

vim 으로 sysctl 에 대한 영구 설정 변경

$ sudo vim /etc/sysctl.d/99-sysctl.conf

net.bridge.bridge-nf-call-iptables=1 # 추가
  1. kubeadm
$ sudo kubeadm init --pod-network-cidr=172.30.0.0/16 --service-cidr=10.244.0.0/16

마지막에 나오는 문장 기억해놓기

kubeadm join 10.0.0.2:6443 --token ssssss.asdasdasdas --discovery-token-ca-cert-hash sha256:asdasdasdasdasdasdsadsad

이런거

  1. 관리자 사용자 설정
# 관리자 사용자 계정에서
$ mkdir -p $HOME/.kube
$ sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
$ sudo chown $(id -u):$(id -g) $HOME/.kube/config
  1. Network overlay 추가
# 다운로드
$ wget https://raw.githubusercontent.com/coreos/flannel/v0.11.0/Documentation/kube-flannel.yml

# 내용 수정
$ vim kube-flannel.yml
# net-conf.json 부분의 "Network": "10.244.0.0/16" => "Network": "172.30.0.0/16" 으로 변경 후 저장

# 적용
$ kubectl apply -f kube-flannel.yml
  1. Slave Node 설정
# Slave Node 에서
$ sudo kubeadm join 10.0.0.2:6443 --token ssssss.asdasdasdas --discovery-token-ca-cert-hash sha256:asdasdasdasdasdasdsadsad
  1. 1분쯤 지나도 kubectl get nodes 에서 Slave노드가 NotReady 라면
$ sudo mkdir -p /etc/cni/net.d
$ sudo vim /etc/cni/net.d/10-flannel.conflist
# 파일 만들기 (이건 모든 node에서,없는경우)

{
    "name": "cbr0",
    "plugins": [
        {
            "type": "flannel",
            "delegate": {
                "hairpinMode": true,
                "isDefaultGateway": true
            }
        },
        {
            "type": "portmap",
            "capabilities": {
                "portMappings": true
            }
        }
    ]
}

$ sudo systemctl restart kubelet

Comment +0