쿠버네티스? 도커 ?
한줄 이해하기 : 쿠버네티스가 아빠, 도커가 아들님 -> 아빠가 아드님에게 심부름을 시킨다.
사랑은 가슴으로 시킨다~
도커는 쿠버네티스가 오케스트레이션하는 컨테이너 런타임으로 사용할 수 있다.
쿠버네티스가 노드에 대해 포드를 예약하면 해당 노드의 kubelet이 지정된 컨테이너를 실행하도록 Docker에 오퍼레이션을 한다.
서론이 길었다. (나도 좀 길고 싶다.)
A. swap 안녕
sudo swapoff -a && sudo sed -i '/swap/s/^/#/' /etc/fstab
B.Docker, containerd 설치
Docker, containerd 설치 (모든 master, worker node)
Kubernetes 는 컨테이너 기반으로 작동함에 따라 Docker, containerd 를 우선 설치가 필요하다.
containerd 는 OCI 표준에 부합하게 새로 만든 Container Runtime 임네다~
B-a. 패키지 업데이트
레파지토리 업뎃~
sudo apt-get update
아래 설치 필수~
sudo apt-get install -y \
ca-certificates \
curl \
gnupg \
lsb-release
Doker 레파지토리 추가~
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
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
B-c. Docker, containerd 설치
sudo apt-get install -y docker-ce docker-ce-cli containerd.io
sudo docker version
레이니즘 버금가는 귀차니즘.... 한줄로 명령어를 줄줄이 소세지로 날려준다.
(명령어 설명 : os부팅 시, docker 실행해라~ 컨테이너 실행해라~ 지금 시작해라~)
sudo systemctl enable docker;sudo systemctl start docker;sudo systemctl enable containerd;sudo systemctl start containerd;
C. 도커 설정
로그사이즈 지정 및 source 반영하기
sudo mkdir -p /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 daemon-reload
sudo systemctl restart docker
끝
이 또한 스크립트로 만들고 싶다.
한방에 설치가 되게...
-5분 뒤-
자동 설치 cli~~
wget https://storage.soowim.co.kr/Kubernetes/Docker/Docker_install.sh
sudo chmod ./Docker_install.sh;sh Docker_install;