[Kubernetes] 2. 클러스터 배포하기

2023. 6. 1. 09:24쿠버네티스 (Kubernetes)


시작하면서

 

쿠버네티스 클러스터(cluster)를 배포하는 방법은 여러 가지가 있습니다.

사실 범용 서비스이자 어플리케이션 기반이니만큼 클라우드 서비스를 사용하는 게 좋습니다. (AWS, Azure...)

하지만 비용이 부담되고 처음 클러스터를 배포하는 입장에서는 그냥 집에 있는 컴퓨터에서 해보는 것도 좋습니다.

 

본 장은 컴퓨터와 kind를 활용해 쿠버네티스 클러스터를 배포하는 것을 설명하겠습니다.

 

 

 

 

 


kubectl

 

사실 몇 줄 안되서, 아래에서 진행하면 됩니다.

필자는 우분투에서 진행하는데, 다른 OS를 사용한다면 그에 맞게 이동해주세요.

 

Install and Set Up kubectl on Linux

Before you begin You must use a kubectl version that is within one minor version difference of your cluster. For example, a v1.27 client can communicate with v1.26, v1.27, and v1.28 control planes. Using the latest compatible version of kubectl helps avoid

kubernetes.io

 

참고로 본인의 컴퓨터가 어떤 아키텍쳐를 쓰는 지 궁금하다면 아래 명령어를 실행하면 됩니다.

dpkg --print-architecture

 

그냥 설치하면 매번 kubectl를 부를 때마다 sudo를 넣어야 해서 불편할 수 있는 데, 그 땐 아래처럼 만들면 됩니다.

chmod +x kubectl
mkdir -p ~/.local/bin
mv ./kubectl ~/.local/bin/kubectl
# and then append (or prepend) ~/.local/bin to $PATH

 

 

 

 


kind

 

kind는 쿠버네티스 클러스터를 도커 컨테이너에서 구동할 수 있도록 하는 도구입니다.

kind is a tool for running local Kubernetes clusters using Docker container “nodes”.
https://kind.sigs.k8s.io/

 

kind 설치도 매우 간단해서 아래에서 진행하면 됩니다.

 

kind – Quick Start

Quick Start This guide covers getting started with the kind command. If you are having problems please see the known issues guide. NOTE: kind does not require kubectl, but you will not be able to perform some of the examples in our docs without it. To inst

kind.sigs.k8s.io

 

설치했다면, 아래 명령어들을 실행해서 클러스터를 만듭니다.

kind create cluster --wait 5m
더보기

Creating cluster "kind" ...
 ✓ Ensuring node image (kindest/node:v1.27.1) 🖼
 ✓ Preparing nodes 📦  
 ✓ Writing configuration 📜 
 ✓ Starting control-plane 🕹️ 
 ✓ Installing CNI 🔌 
 ✓ Installing StorageClass 💾 
 ✓ Waiting ≤ 5m0s for control-plane = Ready ⏳ 
 • Ready after 14s 💚
Set kubectl context to "kind-kind"
You can now use your cluster with:

kubectl cluster-info --context kind-kind

Have a nice day!

 

nodes 컨테이너에 위치해 있을 텐데, kind-control-plane 이름으로 검색하면 정보가 나옵니다.

kubectl describe nodes kind-control-plane

 

가끔 컴퓨터를 껐다 키면 제대로 동작하지 않는 경우가 있는데 그땐 클러스터를 지우고 다시 만들면 됩니다.

kind create cluster --wait 5m

 

참고로 아래 명령어를 실행해서 만나는 API 주소는 이용이 안 됩니다.

인증이 아직 되지 않았기 때문인데 이는 추후 보안 포스팅에서 다루겠습니다.

kubectl cluster-info context kind-kind
더보기

Kubernetes control plane is running at https://127.0.0.1:41723
CoreDNS is running at https://127.0.0.1:41723/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy

 

'쿠버네티스 (Kubernetes)' 카테고리의 다른 글

[Kubernetes] 5. 서비스 검색  (0) 2023.06.12
[Kubernetes] 4. POD  (0) 2023.06.03
[Kubernetes] 3. 팁  (0) 2023.06.01
[Kubernetes] 1. 컨테이너 생성 및 구동  (0) 2023.05.31
[Kubernetes] 0. 쿠버네티스와 도커  (0) 2023.05.31