본문 바로가기

kubernetes

쿠버네티스 노드생성

마스터노드 1개 와 워커노드 2개 구성

컨테이너데몬 방식으로 진행

containerd 설치

dnf install dnf-utils -y 

레포등록
dnf config-manager --add-repo <https://download.docker.com/linux/centos/docker-ce.repo> <https://download.docker.com/linux/centos/dockerce.repo>

repolist 정리 및 재생성
dnf repolist
dnf makecache

설치
dnf install -y containerd.io

환경설정
mv /etc/containerd/config.toml /etc/containerd/config.toml.orig
containerd config default > /etc/containerd/config.toml

containerd cgroup v2 설정 
sed -i "s/SystemdCgroup \\= false/SystemdCgroup \\= true/" /etc/containerd/config.toml

containerd 시작
systemctl enable --now containerd

기본 패키지 관리 도구 사용 설치

cat <https://packages.cloud.google.com/yum/repos/kubernetes-el7-\\$basearch
enabled=1
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 epel-release vim git curl wget iproute-tc kubelet kubeadm kubectl --disableexcludes=kubernetes

실행
sudo systemctl enable --now kubelet

확인
kubectl version --client --output=yaml

kubectl

<aside> 💡 쿠버네티스 API를 사용하여 쿠버네티스 클러스터의 컨트롤 플레인과 통신하기 위한 커맨드라인 툴

</aside>

kubeadm

<aside> 💡 kubeadm 도구를 사용하여 쿠버네티스 클러스터를 만들고 관리할 수 있다. 사용자 친화적인 방식으로 최소한의 실행 가능하고 안전한 클러스터를 설정하고 실행하는 데 필요한 작업을 수행한다.

</aside>

kubeadm 설치 /마스터

master node package 불러오기
kubeadm config images pull --cri-socket=unix:///run/containerd/containerd.sock

클러스터 초기화
kubeadm init

아래해야 에러안뜸
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

export KUBECONFIG=/etc/kubernetes/admin.conf

echo 'export KUBECONFIG=/etc/kubernetes/admin.conf' >> ~/.bashrc
source ~/.bashrc
echo $KUBECONFIG

결과 : /etc/kubernetes/admin.conf

init 이후 키값 복사후 워커노드에 뿌린다 --아래예시
kubeadm join 192.168.255.50:6443 --token m5tmnp.3xdjp03bmxzio83c \\
--discovery-token-ca-cert-hash  sha256:153e77509be0630604e445f9ebd8771a50d8b0a18d240fa7a2c6

리셋방법
sudo kubeadm reset
sudo systemctl restart kubelet

calico 설정

<aside> 💡 Calico는 Linux 및 Windows 에 대해 인터넷과 동일한 IP 네트워킹 원칙을 기반으로 Kubernetes 포드를 연결하기위한 네트워킹 및 네트워크 정책 솔루션을 제공한다

</aside>

'kubernetes' 카테고리의 다른 글

쿠버네티스 krew  (1) 2023.10.10
쿠버네티스 원격 서버 설정  (0) 2023.10.10
쿠버네티스 기본 환경 설정  (0) 2023.10.10
쿠버네티스 nodeport clusterip  (0) 2023.10.10
쿠버네티스 아키텍쳐  (0) 2023.10.10