gcp환경을 사용했습니다.
쿠버설치
환경
- Master : 2코어 , 7.5GiB메모리, centos 7
- worker-node01 2코어 , 7.5GiB메모리, centos 7
- worker-node02 2코어 , 7.5GiB메모리, centos 7
<1. 도커 설치 >
모든 서버에 동일하게 설치 ( sudo su )
# yum install -y yum-utils
# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# yum install docker-ce docker-ce-cli containerd.io -y
# systemctl start docker && systemctl enable docker
# docker version
<2. Kubeadm, kubectl , kubelet 설치 >
모든 서버에 동일하게 설치
# swapoff -a && sed -i '/swap/s/^/#/' /etc/fstab
#cat <<EOF > /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
# sysctl --system
# systemctl stop firewalld
# systemctl disable firewalld
# setenforce 0
# sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config
# cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
exclude=kubelet kubeadm kubectl
EOF
# yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes
# systemctl start kubelet && systemctl enable kubelet
# cat <<EOF>> /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
Net.ipv4.ip_forward = 1
EOF
#sysctl --system
#reboot
<3. 마스터 노드 구성 및 네트워크 환경 구성 >
마스터 노드에서만 실행
# kubeadm init
> 위에서 kubeadm init 했을때 나오는 kubeadm join token값 잘 메모
# mkdir -p $HOME/.kube
# cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
#chown $(id -u):$(id -g) $HOME/.kube/config
이제 마스터노드에서 kubectl get nodes하면 마스터노드 잘 나옴
워커노드들을 연결해야함
아까 저장한 토큰을 워커노드 서버에 입력
Kubectl get nodes하면 모든 노드 연결완료
>> 여기까지 하고 kubectl get nodes하면 마스터 및 워커노드들이 나온다.
하지만 notready라고 다올텐데 서로 통신이 가능하도록 weave등을 설치 해줘야 서로 통신이 가능하다
!!!마스터에만 설치
kubectl apply -f "https://cloud.weave.works/k8s/net?k8s-version=$(kubectl version | base64 | tr -d '\n')"
이제 kubeclt get nodes하면 모두 Ready
마스터 및 워커노드 연결. 끝