목표
- 도커 런타임 설치
- 도커 cgroup driver 설정
- 방화벽 및 네트워크 설정
사전준비
패키지 업데이트
apt update -y && apt upgrade -y
SWAP 메모리 해제
추후 각 노드에서 kubelet이라는 컴포넌트가 제대로 동작하기 위해서는 리눅스의 SWAP 메모리 기능을 해제해줘야 합니다.
sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab
swapoff -a
도커 설치하기
VM전부 해당 작업을 수행해야합니다
쿠버네티스가 동작하기 위해서는 컨테이너 런타임이 필요합니다.
container.d, cri-o 등이 있지만 .. container.d를 설치하겠습니다.
도커에 필요한 패키지 다운로드
HTTPS를 통해 도커 Repository에 접근할 것이므로, 접근에 필요한 패키지들을 다운로드 받습니다
sudo apt-get update
sudo apt-get install \
ca-certificates \
curl \
gnupg \
lsb-release
도커 공식 GPG key 등록
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
도커 Repository 설정
echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
도커 설치
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
도커 cgroup driver 설정
sudo mkdir /etc/docker
cat <<EOF | sudo tee /etc/docker/daemon.json
{
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},
"storage-driver": "overlay2"
}
EOF
도커 재시작 및 부팅시 시작 설정
sudo systemctl enable docker
sudo systemctl daemon-reload
sudo systemctl restart docker
Container.d 런타임에 대해서 CRI 비활성화 해제
위에서 Docker 를 설치하고 실질적으로 container.d 를 런타임으로 사용하는데, 기본적으로 CRI가 비활성화 되어 있어서
k8s에서 CRI를 사용할 수 있게 아래와 같은 처리가 필요합니다
vi /etc/containerd/config.toml
그리고 중간에 disable_plugins.. 된 부분을 주석 처리 해줍니다.
# disabled_plugins =["cri"]
그리고 containerd 를 재시작해줍니다.
systemctl restart containerd
방화벽 및 네트워크 환경설정
추후 쿠버네티스 환경에서 서로 노드간의 CNI를 통해서 통신을 하게 될 예정인데,
그 전에 필요한 네트워크 및 방화벽 환경 설정을 진행합니다.
modprobe overlay
modprobe br_netfilter
cat <<EOF | sudo tee /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
'KuberNetes > 졸과' 카테고리의 다른 글
external-ip가 pending일때 (1) | 2024.08.11 |
---|---|
스프링부트 어플리케이션 디플로이먼트로 배포 (1) | 2024.08.04 |
kube-apiserver 사용해보기 (1) | 2024.07.01 |
GCP에 쿠버네티스 구축하기-3 (0) | 2024.06.30 |
GCP에 쿠버네티스 구축하기-1 (0) | 2024.06.30 |