
이것저것 해보고 싶은 것도 많고, 예전부터 갖고 싶었던 비싼 장난감을 이번 기회에 직접 구축해보고자 했습니다. 2학기에 알바하며 번 돈으로 홈랩을 구축해야했기 때문에 예산은 7~80만원 정도로 잡았고, 저예산(?)이기 때문에 라즈베리파이를 사용하기로 했습니다. 주된 실

지난 홈랩 구축기 1️⃣ - Hardware편 에 이어 이번에는 물리적으로 결합만 시킨 라즈베리파이에 소프트웨어를 넣어주는(?) 작업을 해보려고 합니다.Hardware 편에서 짧게 얘기했듯이 초기 라즈베리파이(출고 직후)는 OS가 없는 상태입니다. (본체에 내장 하드

지난 [홈랩 구축기] 2️⃣ - Software편 에 이어 마지막 단계입니다. 하드웨어 결합, 소프트웨어 설치를 완료했으니 마지막으로 네트워크 설정만 해주면 기본적인 홈랩 구성이 완성될 것 같습니다. Port Forwarding은 퍼블릭 키 및 네트워크 보안을 좀 더

[홈랩 구축기] 3️⃣ - Network편(간단) 를 마지막으로 라즈베리파이 홈랩의 기초적인 모든 작업을 완료했습니다. 홈랩(현질)의 시작이었던 쿠버네티스 실습 환경을 위해 이번에는 쿠버네티스 설치 및 구축을 해보았습니다. 1. OS 환경 최적화 1-1. Swap

지난 홈랩 구축기 를 마무리 하며 드디어 온전한 홈랩을 갖게 되었습니다. 여기서 할 수 있는 것들이 너무나 많지만 가장 해보고 싶었던 것을 생각해보니 Google, AWS, MS 처럼 CSP의 시스템을 구축해보고 그 역할을 수행해보면 참 재밌겠다는 생각이 들었습니다.

우선 제 홈랩 영역에 외부 사용자(테넌트)가 들어올 수 있기 때문에 권한 격리를 했습니다. 1. [기능 설명] 테넌트 인증 및 권한 격리 (RBAC) > 클러스터 내에서 각 테넌트가 자신의 자원만 제어할 수 있도록 논리적 격리를 구현하는 것.(CSP 서비스에서 사용

RBAC 설정을 통해 ‘누가(admin/tenant)’ 들어올 수 있는지를 정의했습니다. 이제 각 테넌트가 사용할 수 있는 물리적 자원의 크기를 결정할 차례입니다.그 중에서 라즈베리파이의 SD 카드나 외장 SSD 를 보호하기 위한 Storage Quota & Isola

지난번에 스토리지에 대한 제한 및 격리를 진행했습니다. 이번에는 CPU와 RAM에 대한 제한과 격리 작업을 진행해보겠습니다.테넌트가 생성하는 파드들이 사용하는 물리적인 연산 자원(CPU/RAM)을 제한하는 기능안전한 멀티 테넌시 : 특정 테넌트의 코드가 무한 루프에 빠

현재 클러스터는 자원은 분리되어 있지만, 네트워크는 여전히 모두가 모두와 대화할 수 있는 상태이를 해결하기 위해 Zero-Trust 기반 Network Policy 설정을 진행쿠버네티스의 기본 네트워크 구조는 Flat Network네임스페이스가 달라도 서로의 IP만 알

이전 포스팅에서 Network Policy 적용을 위해 Calico를 설치하는 과정 중, 기존에 사용하던 Flannel 과 충돌하여 파드 생성에 실패하는 오류가 발생했습니다.이번 포스팅에서는 CNI의 개념을 다시 한 번 짚어보고, 구체적인 문제 원인 파악과 함께 Cal

Egress All Deny - 나가는 문(Egress)을 모두 잠그기쿠버네티스의 기본 설정은 모든 파드가 외부와 자유롭게 통신할 수 있는 ‘Open’ 상태임/테넌트 환경에서는 보안 사고 방지를 위해 화이트리스트 전략이 필수임DNS 허용 (Essential) - 이름(

쿠버네티스 내부의 파드는 기본적으로 외부와 격리되어 있습니다. 관리자(나)는 각 테넌트 네임스페이스에 MetalLB 를 이용한 LoadBalancer IP 를 할당하고, 이를 통해 사용자가 할당받은 IP로 즉시 SSH 접속을 할 수 있는 환경을 구축해보고자 합니다. 이

홈랩 구축 및 멀티 테넌트 프로젝트를 진행하며 압도적으로 고생을 많이 했던 네트워크 설정 과정에서 경험한 트러블 슈팅 내용을 정리해보았습니다. 가정용 네트워크 환경에서 구축한 홈랩이다보니 문제 원인을 찾는 것도 오래 걸리고,, 파악하는 것도 정말 오래 걸렸던 것 같습니

현재 입주해 있는 테넌트 중 한 분이 “인스턴스가 재시작 되면 일부 코드가 날라가는 것 같아요” 라는 피드백을 주셨습니다. 이전에 진행한 스토리지 설정 과정 에서 스토리지 자원 관리(Quota)와 데이터 격리(Isolation)만 설정을 했고, 영속성에 대한 생각을 못

이번에는 홈랩의 모니터링 서버를 구축해보려고 합니다. 고도화 해볼 요소가 많은 부분인데, 우선 간단하게 Node-Exporter/kube-state-metrics + Prometheus + Grafana 를 사용하겠습니다.우선 공통적으로 모니터링 서버를 클러스터와 격리

마스터 노드의 리소스 구성은 CPU - 4.0 Core / RAM - 8GB / Storage - 256GB 입니다. 여기서 실제 마스터 노드 운영에 필요한 리소스를 제외하면 놀고 있는 리소스가 상당할 것으로 예상이 됩니다. 그래서 더 많은 리소스를 멀티 테넌트에 사용

현재 테넌트 서버에 접속 가능한 포트는 SSH 접속을 위한 포트뿐입니다. 테넌트 서버에 백엔드 서비스 혹은 모니터링 대시보드 등을 띄웠을 경우 외부 접속 포트가 없고, SSH 접속을 위한 포트로 접속 시 브라우저(HTTP)가 기대하는 응답 웹 프로토콜과 실제 응답으로