본문 바로가기
개발/docker, k8s, CNCF

docker, k8s 네트워크 뜯기(2) - docker, kind, helm, k9s 설치

by 앗가 2023. 3. 5.
728x90
반응형

이번에는 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

 

728x90

댓글