이번에는 virtualbox 위에 프로세스를 올려보겠습니다. docker, kind를 설치하여 docker, k8s의 네트워크 구성을 확인하기 위한 작업을 진행해 봅시다. 모든 구성은 ubuntu에 ssh접속을 한 이후의 과정입니다.
실험 환경은 다음과 같습니다.
- virtualbox 7.0.6
- ubuntu 22.04.2 LTS
- kind 0.17.0
순서는 다음과 같습니다.
1. docker 설치
2. kind 설치
3. helm 설치
1. docker 설치
먼저 docker를 설치해 줍니다. https://docs.docker.com/engine/install/ubuntu/ 도커 공식 문서에 ubuntu위에서 설치하는 과정을 참고했습니다.
sudo apt-get update
sudo apt-get install -y \
ca-certificates \
curl \
gnupg \
lsb-release
sudo mkdir -m 0755 -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.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 -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
터미널에 docker를 입력하면 정보가 출력되지만 명령어에 sudo를 붙여야 하기 때문에 해당 명령어를 입력해 주겠습니다.
sudo usermod -aG docker $USER
가상머신을 재부팅하면 docker를 sudo 없이 명령어를 쓸 수 있습니다.
2. kind 설치
k8s를 도커 컨테이너를 이용하여 클러스터를 동작하게 하는 도구인 kind를 설치해 보겠습니다. https://kind.sigs.k8s.io/docs/user/quick-start/ kind 공식 문서에 installing from release binaries를 참고하여 설치했습니다.
curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.17.0/kind-linux-amd64
chmod +x ./kind
sudo mv ./kind /usr/local/bin/kind
또, kind만 설치하면 kubectl을 이용할 수 없기에 kubectl도 설치해 주겠습니다. http://kubernetes.io/docs/tasks/tools/ k8s 공식 문서를 참고하여 설치했습니다.
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
curl -LO "https://dl.k8s.io/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl.sha256"
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl
이제 클러스터를 임시로 구성해보겠습니다.
# kind로 cluster를 만들어보겠습니다.
kind create cluster
kind get clusters # kind 출력됩니다.
# 클러스터 정보 조회 (kubectl은 cluster가 만들어지고 사용가능합니다)
kubectl cluster-info --context kind-kind
# 클러스터를 삭제합니다.
kind delete cluster
3. helm 설치
k8s환경에서 chart라는 단위로 패키지를 관리하는 도구인 helm을 설치하겠습니다.
https://helm.sh/ko/docs/intro/install/ helm설치 가이드를 참고했습니다.
curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3
chmod 700 get_helm.sh
./get_helm.sh
4. k9s 설치
k8s를 쉽게 관리하고 모니터링할 수 있는 관리 도구인 k9s도 설치하겠습니다. 먼저 brew를 설치해줍니다. https://brew.sh/ brew 사이트를 참고해서 설치를 진행하겠습니다.
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
그리고 출력되는 next steps의 절차를 실행해줍니다.
brew가 설치됐다면 k9s를 설치합니다. https://k9scli.io/topics/install/
Install
Installation Overview K9s is available on Linux, macOS and Windows platforms. Binaries for Linux, Windows and Mac are available as tarballs in the release page. MacOS # Via Homebrew brew install derailed/k9s/k9s # Via MacPort sudo port install k9s Linux #
k9scli.io
brew install derailed/k9s/k9s
'개발 > docker, k8s, CNCF' 카테고리의 다른 글
docker, k8s 네트워크 뜯기(5) - pod 내부의 container와 다른 pod 내부의 container는 어떻게 서로 통신할까? (0) | 2023.03.05 |
---|---|
docker, k8s 네트워크 뜯기(4) - local registry로 kind k8s cluster에 배포하기 (0) | 2023.03.05 |
docker, k8s 네트워크 뜯기(3) - docker 컨테이너는 어떻게 서로 통신할까? (0) | 2023.03.05 |
docker, k8s 네트워크 뜯기(1) - virtualbox ubuntu 고정 IP로 ssh 접속 (0) | 2023.03.05 |
docker, k8s 네트워크 뜯기(0) - 소개 (0) | 2023.03.05 |
댓글