Network & Server Factory

개인 공부 기록

전체 글 564

[홈랩] PostgreSQL 스트리밍 복제와 VIP로 LMS DB 이중화하기 (8편)

LMS의 DB는 Kubernetes로 옮기지 않고 VM으로 남겼습니다. 대신 다른 호스트에 복제본 VM을 만들어 PostgreSQL 스트리밍 복제로 실시간 사본을 두고, 앱은 primary에만 붙는 VIP로 접속하게 했습니다. 이 글에서는 이중화 방식 선택, 복제 설정과 검증, VIP, 백업과 모니터링을 정리합니다. 홈랩 재구성 시리즈 8편이며, 이전 글은 Docker 컨테이너와 LMS를 Kubernetes로 옮기기입니다.이전을 마친 구성입니다. 요청은 Gateway를 거쳐 Pod로 가고, 앱은 primary에만 붙는 DB VIP로 접속합니다1. 이중화 방식 고르기LMS DB는 호스트 1의 PostgreSQL 15 VM 1대에서 실행되고 있어, 호스트가 멈추면 DB도 멈추고 실시간 사본도 없었습니다. 두..

Project/홈랩 08:27:20

[홈랩] Docker 컨테이너와 LMS를 Kubernetes로 옮기기 (7편)

이번에는 Docker VM에서 돌던 작은 서비스 3개와 LMS(학습 관리 시스템)를 옮겼습니다. 이미 컨테이너로 돌던 서비스라 VM에서 쓰던 컨테이너 이미지를 그대로 썼습니다. 가장 신경 쓴 점은 노드 하나가 멈춰도 다른 워커에서 계속 동작하게 하는 것입니다. 이 글에서는 Docker 서비스를 옮긴 방법, 두 곳에서 동시에 돌면 안 되는 알림 봇을 옮기는 순서, LMS를 노드 장애에 견디게 만든 설계와 전환 과정을 정리합니다. 홈랩 재구성 시리즈 7편이며, 이전 글은 Zabbix 5.4를 7.0 LTS로 옮기고 Kubernetes까지 모니터링하기입니다.7편을 마친 시점의 구성입니다. Docker 서비스와 LMS를 옮기고, 노드가 멈춰도 다른 워커에서 다시 실행되게 했습니다1. Docker VM의 서비스 ..

Project/홈랩 08:25:42

[Kubernetes] kubeadm으로 클러스터 구성 정리

kubeadm은 Kubernetes 공식 클러스터 설치 도구로, 노드를 준비한 뒤 init과 join으로 클러스터를 만듭니다. 마스터를 여러 대 두려면 처음부터 공통 API 주소를 정해야 하고, 네트워크(CNI)와 외부 노출에 필요한 구성 요소는 따로 설치합니다. 이 글에서는 Ubuntu 24.04 노드 5대로 마스터 3대 클러스터를 만들고, kube-vip로 API 가상 IP를, Cilium으로 kube-proxy 없는 네트워크를, MetalLB와 Gateway API로 외부 노출을 구성한 과정을 명령과 함께 정리합니다. 컨테이너부터 Kubernetes까지 시리즈 12편이며, 이전 글은 [Kubernetes] 리소스 requests, limits와 HPA 정리입니다. 이 클러스터를 홈랩에서 어떻게 설계..

[홈랩] Zabbix 5.4를 7.0 LTS로 옮기고 Kubernetes까지 모니터링하기 (6편)

홈랩의 모니터링 서버에서는 지원이 끝난 Zabbix 5.4를 사용했습니다. Zabbix 7.0은 더 새로운 MySQL과 PHP가 필요해서, 제자리 업그레이드 대신 새 VM을 만들어 DB를 옮기는 방식으로 이전했습니다. 모니터링이 멈춘 시간은 약 18분이었고, 이전한 뒤에는 Zabbix의 공식 연동으로 Kubernetes 클러스터까지 한 화면에서 확인할 수 있게 했습니다. 이 글에서는 새 VM으로 옮긴 이유와 전환 순서, 주의할 점, Kubernetes 모니터링과 웹 감시 설정을 정리합니다. 홈랩 재구성 시리즈 6편이며, 이전 글은 PHP 사이트 6개와 MySQL을 옮기고 Gateway 하나로 합치기입니다.6편을 마친 시점의 구성입니다. Zabbix를 7.0 버전이 설치된 새 VM으로 옮기고, 로드밸런서 ..

Project/홈랩 08:13:55

[홈랩] PHP 사이트 6개와 MySQL을 옮기고 Gateway 하나로 합치기 (5편)

두 번째 이관 대상은 VM 한 대에서 포트로 나눠 운영하던 PHP 사이트 6개와 MySQL이었습니다. 사이트마다 이미지를 따로 만들고 DB는 StatefulSet으로 옮겼으며, 입구는 Gateway 하나로 합쳐 호스트 이름으로 사이트를 나눴습니다. VM처럼 포트 리스너로 나누는 방식도 시도했지만, Cilium Gateway에서는 사이트가 서로 섞여서 호스트 이름 방식으로 정했습니다. 이 글에서는 이미지 설계, MySQL 이관, Gateway 통합과 호스트 이름 라우팅을 정리합니다. 홈랩 재구성 시리즈 5편이며, 이전 글은 Jenkins와 Argo CD로 홈랩 CI/CD 구성하기입니다.5편을 마친 시점의 구성입니다. 입구를 Gateway 하나로 합치고 호스트 이름으로 사이트를 나눴습니다1. 이관 대상 항목..

Project/홈랩 08:11:49

[홈랩] Jenkins와 Argo CD로 홈랩 CI/CD 구성하기 (4편)

처음 서비스를 옮길 때는 이미지를 노드에 직접 넣었습니다. 지금은 앱 소스를 GitHub에 push하면 Jenkins가 이미지를 만들어 클러스터 안의 이미지 저장소에 올리고, 배포용 Git 저장소의 이미지 태그를 고쳐 커밋합니다. 그러면 Argo CD가 그 커밋대로 클러스터에 배포합니다. 이 글에서는 내부 이미지 저장소와 노드 설정, 저장소 두 개와 권한 나누기, Jenkins 파이프라인, 소스를 Git으로 옮길 때 확인한 것, 자동 동기화에서 데이터를 지키는 설정을 정리합니다. 홈랩 재구성 시리즈 4편이며, 이전 글은 웹 서비스 VM을 Kubernetes로 옮기고 검증하기입니다.4편에서 붙인 배포 흐름입니다. 앱 저장소에 push하면 Jenkins가 빌드하고 Argo CD가 클러스터에 반영합니다1. 왜..

Project/홈랩 08:10:39

[홈랩] 웹 서비스 VM을 Kubernetes로 옮기고 검증하기 (3편)

VM에서 돌던 서비스를 컨테이너로 옮길 때 가장 중요한 것은 옮긴 뒤에도 기존과 똑같이 동작하는지 확인하는 일입니다. 첫 대상인 웹 사이트에서는 전환 전에 문제 네 가지를 찾았습니다. 기존 VM과 응답을 비교해 HTTP 200만으로는 보이지 않던 문제 세 가지를 찾았고, 쓰기 기능 시험으로 하나를 더 찾았습니다. 이 글에서는 첫 대상을 고른 기준, 서비스가 쓰는 데이터(상태)를 나눈 방법, 기존 VM과 응답을 비교해 검증한 과정, 전환과 되돌리기 계획을 정리합니다. 홈랩 재구성 시리즈 3편이며, 이전 글은 홈랩 Kubernetes 클러스터 설계와 노드 배치입니다.3편을 마친 시점의 구성입니다. 첫 웹 사이트로 들어오는 요청은 NAS 프록시에서 클러스터로 바로 전달되고, 기존 VM은 꺼 두었습니다1. 첫 ..

Project/홈랩 2026.10.28

[홈랩] 홈랩 Kubernetes 클러스터 설계와 노드 배치 (2편)

물리 호스트가 2대뿐인 홈랩에 Kubernetes 클러스터를 설계할 때 가장 먼저 부딪히는 문제는 마스터 노드를 몇 대 두고 어디에 놓느냐입니다. 저는 마스터 3대와 워커 4대로 클러스터를 만들고, API 주소를 처음부터 가상 IP로 정해 노드를 옮기거나 늘려도 주소가 바뀌지 않게 했습니다. 이 글에서는 마스터 수를 정한 기준, 두 호스트에 노드를 나눠 둔 방법, 노드 OS와 구성 요소를 고른 이유, 버전을 고르는 기준을 정리합니다. 홈랩 재구성 시리즈 2편이며, 이전 글은 홈랩 인프라 현황과 Kubernetes로 옮기는 이유입니다.2편을 마친 시점의 구성입니다. Kubernetes 노드 7대를 두 호스트에 나눠 만들었고, 서비스는 아직 VM에서 동작합니다1. 설계 조건 조건내용호스트ESXi 호스트 2대..

Project/홈랩 2026.10.28

[홈랩] 홈랩 인프라 현황과 Kubernetes로 옮기는 이유 (1편)

제 홈랩의 VM은 ESXi 호스트 2대에서 한때 약 68대까지 늘었고, 정리를 거쳐 지금은 24대입니다. 하이퍼바이저는 지원이 끝났고, 서비스 VM의 절반 이상이 지원이 종료된 OS를 썼으며, 실제로 쓰는 자원은 할당량의 4분의 1에도 못 미쳤습니다. 그래서 서비스 VM을 컨테이너로 바꿔 Kubernetes 클러스터로 옮기기로 했습니다. 이 글에서는 현재 인프라 상태와 문제점, Kubernetes를 고른 이유, 옮기기 전에 정리한 것과 이전 계획을 정리합니다. 홈랩 재구성 시리즈의 1편입니다.1편을 마친 시점의 구성입니다. 요청은 로드밸런서 VM을 거쳐 서비스마다 따로 있는 VM으로 갔고, 쓰지 않는 VM과 파일부터 정리했습니다1. 현재 홈랩 구성물리 서버는 ESXi 호스트 2대이고 vCenter 1대로..

Project/홈랩 2026.10.28

[Proxmox] VMware ESXi와 Proxmox VE 비교, 이전 전 확인할 것

Proxmox VE는 KVM과 LXC를 쓰는 오픈소스 가상화 플랫폼으로, VMware ESXi와 vCenter가 하던 일을 대부분 웹 화면 하나로 할 수 있습니다. Broadcom 인수 이후 VMware가 구독 전용으로 바뀌고 비용이 오르면서 대안으로 많이 검토되고 있습니다. 이 글에서는 두 제품의 기능과 비용을 비교하고, ESXi에서 옮기기 전에 확인할 것을 정리합니다. Proxmox 이전 시리즈의 1편입니다.1. 왜 Proxmox가 주목받나Broadcom이 VMware를 인수한 뒤 라이선스 정책이 크게 바뀌었습니다. 시기변화2023년 12월영구 라이선스 판매 종료, 코어당 구독 방식으로 전환2024년 2월무료 ESXi 배포 중단2025년 4월무료 ESXi(8.0 U3e)가 다시 나왔지만 비운영용, v..

서울
--:--:--
-전체 글
-카테고리
누적 조회수