AWS EC2 인스턴스와 minikube를 이용한 쿠버네티스 실습 환경 설정하기

728x90
반응형

AWS & 쿠버네티스 실습 환경 설정

AWS EC2 인스턴스에서 쿠버네티스 실습을 할 때 필요한 환경 설정에 대해 정리해보았다.

1. EC2 인스턴스 생성

용도에 맞게 인스턴스 생성하기

[AWS] EC2 인스턴스 생성 및 예산 설정하기

 

[AWS] EC2 인스턴스 생성 및 예산 설정하기

1. AWS EC2 인스턴스 만들기jenkins 실습을 하다가 인스턴스 cpu와 용량이 모자라서 인스턴스를 새로 만들었다.cpu는 2개, 용량은 20GiB로 생성했는데, 이건 프리티어가 아니라서 나중에 청구서로 과금

ynslee627.tistory.com


2. 인스턴스 연결

터미널에서 키페어 경로를 연결해서 연결한다.

이런 식으로 키 페어 경로를 정확하게 입력해줘야 한다.

키가 공개되어 있어서 안된다고 하면 다음 명령어를 입력한다.

chmod 400 "키페어 경로"

3. 도커 설치

우분투에 도커 설치 공식 문서

 

Ubuntu

Jumpstart your client-side server applications with Docker Engine on Ubuntu. This guide details prerequisites and multiple methods to install Docker Engine on Ubuntu.

docs.docker.com

# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# Add the repository to Apt sources:
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$VERSION_CODENAME") 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 docker-buildx-plugin docker-compose-plugin

도커 설치 확인

docker --version

 


4. 쿠버네티스 설치

요구사항:

 

minikube 설치 공식 문서

 

minikube start

minikube is local Kubernetes, focusing on making it easy to learn and develop for Kubernetes. All you need is Docker (or similarly compatible) container or a Virtual Machine environment, and Kubernetes is a single command away: minikube start What you’ll

minikube.sigs.k8s.io

To install the latest minikube stable release on x86-64 Linux using binary download:

curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
sudo install minikube-linux-amd64 /usr/local/bin/minikube && rm minikube-linux-amd64

 

여기서 바로 클러스터를 시작하려고 하면 오류가 발생한다.

minikube start

에러 발생!!

에러 메시지에 나오는 것처럼 드라이버를 연결해야 한다.


5. 도커 컨테이너 연결

도커 컨테이너 연결을 해야 한다.

https://minikube.sigs.k8s.io/docs/drivers/docker/

 

docker

Overview The Docker driver allows you to install Kubernetes into an existing Docker install. On Linux, this does not require virtualization to be enabled. Requirements Install Docker 18.09 or higher (20.10 or higher is recommended) amd64 or arm64 system. I

minikube.sigs.k8s.io

도커 드라이버로 클러스터 시작하도록 설정

Start a cluster using the docker driver:

minikube start --driver=docker

 

도커 권한 설정

도커 그룹 어쩌고,, 하는 에러가 뜨면, 권한을 추가해준다.

sudo usermod -aG docker $USER && newgrp docker
 

To make docker the default driver:

minikube config set driver docker

 

다시 클러스터 시작

minikube start

Minikube를 사용하여 Kubernetes 클러스터의 모든 네임스페이스에서 실행 중인 모든 포드를 조회하기:

minikube kubectl -- get pods -A

별명 지정하기

kubectl 명령어에 대한 별칭(alias)을 설정하여, Minikube에서 제공하는 kubectl을 기본 kubectl 명령처럼 사용할 수 있도록 한다.

alias kubectl="minikube kubectl --"

 

이 설정은 새 터미널 창이나 다른 세션에서는 적용되지 않아 kubectl 명령어를 인식하지 못하게 된다.
이 설정을 모든 세션에서 유지하려면 alias 설정을 .bashrc 또는 .zshrc 파일에 추가해야 한다.

echo 'alias kubectl="minikube kubectl --"' >> ~/.bashrc
source ~/.bashrc

 

EC2 인스턴스를 중지했다가 시작해서 다시 연결하는 경우

minikube 클러스터가 중지되었을 것이다.

상태 확인은 다음 명령어를 이용한다:

minikube status

그러면 다시 start 해주면 된다.

minikube start

노드 및 파드 확인

kubectl get nodes
kubectl get pods

 

[Kubernetes] minikube를 사용하여 kind와 kubectl 설치하기

 

[Kubernetes] minikube를 사용하여 kind와 kubectl 설치하기

kind와 kubectl 개념1) kind: 쿠버네티스 클러스터를 간단하게 구성하기 위한 애플리케이션Docker를 런타임으로 사용한다. 이 도구는 하나의 컴퓨터에서 별도의 가상 머신 없이 여러 개의 노드를 구성

ynslee627.tistory.com

 


6. Helm 설치

https://helm.sh/ko/docs/intro/install/

 

헬름 설치하기

헬름 설치하고 작동하는 방법 배우기.

helm.sh

헬름 커뮤니티 멤버들은 Apt용 헬름 패키지에 기여해왔다. 이 패키지는 보통 최신이다.

curl https://baltocdn.com/helm/signing.asc | gpg --dearmor | sudo tee /usr/share/keyrings/helm.gpg > /dev/null
sudo apt-get install apt-transport-https --yes
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/helm.gpg] https://baltocdn.com/helm/stable/debian/ all main" | sudo tee /etc/apt/sources.list.d/helm-stable-debian.list
sudo apt-get update
sudo apt-get install helm

 

[Kubernetes] 헬름(Helm)을 활용한 쿠버네티스 애플리케이션 배포 및 관리 실습

 

[Kubernetes] 헬름(Helm)을 활용한 쿠버네티스 애플리케이션 배포 및 관리 실습

헬름 (Helm)쿠버네티스는 파드를 생성하는 Deployment, ReplicaSet, Pod, StatefulSet, DaemonSet, Job, CronJob 만으로 구성할 수 있지만, Service 나 ConfigMap 그리고 Secret, Claim 등 과 함께 구성되는 경우가 많다.그러나

ynslee627.tistory.com

 

728x90
반응형