Backend
home

2025-7-2 (수)

생성일
2025/07/01 23:39
태그
Kubernetes
ElasticSearch

UTM 활용하여 가상환경 세팅

1. Ubuntu 22.04 설치

️ 주의할 점
Ubuntu Server for ARM를 다운로드한다.
Ubuntu Desktop 다운로드가 아니다!!

2. UTM 설치

https://github.com/utmapp/UTM/releases 에 접속하여 설치 진행
해당 링크 참고하여 설치 진행하였음
네트워크 설정 - 2가지 설정을 해줘야 한다 (공유 네트워크, 브릿지)
ssh 통신을 하기 위해 고정 ip를 할당한다.
sudo vi /etc/netplan/00-installer-config.yaml 명령어를 입력하여 설정 정보를 작성해준다.
자신의 맥 터미널에서 ifconfig | grep inet으로 확인했을 때 나오는 ip를 사용해야 인터넷 연결이 된다.
sudo vi /etc/netplan/00-installer-config.yaml 입력하여 다음과 같이 작성한다.
추후 세팅할 2개의 가상환경에서 뒤의 숫자만 변경하여 등록해준다.
master: 100
work-node1: 101
work-node2: 102
작성 완료 후 sudo netplan apply 명령어를 입력한 다음, 로컬 터미널에서 ssh 이용하여 원격접속을 해본다. 아래 문구들을 확인했다면 정상적으로 진행된 것이다.

쿠버네티스 설치 (Master, Worknode1, Worknode2 공통 진행)

root 권한에서 실행 -> sudo su ◆◆◆◆◆◆마스터, 워커 동일 작업◆◆◆◆◆◆ ◆ip_forward 값을 1로 설정 sudo sysctl -w net.ipv4.ip_forward=1 ◆설정을 영구적으로 유지하기 위해 config 파일에도 추가 echo "net.ipv4.ip_forward=1" | sudo tee -a /etc/sysctl.conf ◆변경 사항 적용 sudo sysctl -p ◆가상 메모리 해제 swapon && cat /etc/fstab swapoff -a && sed -i '/swap/s/^/#/' /etc/fstab ◆SELinux 와 방화벽을 해제 setenforce 0 ufw disable systemctl stop firewalld systemctl disable firewalld ◆pod와 pod끼리 통싱하기위한 작업 확인 (통신 브릿지 상태 확인) lsmod | grep br_netfilter modprobe br_netfilter lsmod | grep br_netfilter -----------(아래처럼 나오면 정상) br_netfilter 24576 0 bridge 155648 1 br_netfilter ----------- ◆모듈과 네트워크 파라미터가 영구적으로 적재되도록 파일에 편집 cat <<EOF | sudo tee /etc/modules-load.d/k8s.conf br_netfilter EOFcat <<EOF | sudo tee /etc/sysctl.d/k8s.conf net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1 EOF ◆확인 sudo sysctl --system ◆네트워크 파라미터 정보 변경 사항 확인 sysctl net.bridge.bridge-nf-call-iptables -----------(아래처럼 나오면 정상) -> net.bridge.bridge-nf-call-iptables = 1 ----------- sysctl net.bridge.bridge-nf-call-ip6tables -----------(아래처럼 나오면 정상) -> net.bridge.bridge-nf-call-ip6tables = 1 ----------- ◆모듈 및 패키지 설치 & 다운로드(kubeadm, kubelet, kubectl) sudo apt-get update sudo apt-get install -y apt-transport-https ca-certificates curl gnupg lsb-release ◆컨테이너 런타임 containerd 설치 ---containerd 설치 sudo apt install -y containerd ---containerd 설정 파일 생성 sudo mkdir -p /etc/containerd containerd config default | sudo tee /etc/containerd/config.toml ---Systemd Cgroup 활성화 sudo sed -i 's/SystemdCgroup = false/SystemdCgroup = true/' /etc/containerd/config.toml ---containerd 재시작 및 활성화 sudo systemctl restart containerd sudo systemctl enable containerd ◆레포지토리 등록 (apt 저장소) - 변경될 수도 있음 echo "deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.28/deb/ /" | sudo tee /etc/apt/sources.list.d/kubernetes.list ◆패키지 저장소 공개 키 다운로드 - 변경될 수도 있음 curl -fsSL https://pkgs.k8s.io/core:/stable:/v1.28/deb/Release.key | sudo gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg ◆쿠버네티스 설치 (여기서 특정 버전을 지정해서 설치) sudo apt-get update sudo apt-get install -y kubelet kubeadm kubectl kubernetes-cni
Shell
복사