Update K3s migration doc: Phase 5 MetalLB, namespace restructure, current cluster state
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
---
|
---
|
||||||
title: K3s PostgreSQL 백엔드 이전
|
title: K3s PostgreSQL 백엔드 이전
|
||||||
updated: 2026-03-25
|
updated: 2026-03-26
|
||||||
status: 완료
|
status: 완료
|
||||||
tags: [k3s, migration, postgresql, supabase]
|
tags: [k3s, migration, postgresql, supabase]
|
||||||
---
|
---
|
||||||
@@ -35,9 +35,11 @@ tags: [k3s, migration, postgresql, supabase]
|
|||||||
| Pod CIDR | 10.42.0.0/16 |
|
| Pod CIDR | 10.42.0.0/16 |
|
||||||
| Service CIDR | 10.43.0.0/16 |
|
| Service CIDR | 10.43.0.0/16 |
|
||||||
| tls-san | k3s.inouter.com, 192.168.9.135, 100.119.109.41 |
|
| tls-san | k3s.inouter.com, 192.168.9.135, 100.119.109.41 |
|
||||||
| 게이트웨이 | Traefik (메인, DaemonSet hostPort) + APISIX (SafeLine WAF 전용) |
|
| 게이트웨이 | Traefik (메인, DaemonSet LoadBalancer 192.168.9.53) + APISIX (SafeLine WAF 전용, LB 192.168.9.50) |
|
||||||
|
| LB | MetalLB L2 (192.168.9.50-59), K3s ServiceLB 비활성화 |
|
||||||
| 스토리지 | Longhorn v1.8.2 |
|
| 스토리지 | Longhorn v1.8.2 |
|
||||||
| 인증서 | cert-manager + Google Trust Services (와일드카드 6개, Reflector) |
|
| 인증서 | cert-manager + Google Trust Services (와일드카드 8개, Reflector) |
|
||||||
|
| disable | traefik (Helm 별도 설치), servicelb (MetalLB 사용) |
|
||||||
|
|
||||||
## 장애 시나리오
|
## 장애 시나리오
|
||||||
|
|
||||||
@@ -84,7 +86,49 @@ tags: [k3s, migration, postgresql, supabase]
|
|||||||
- 기존 etcd Incus 컨테이너 폐기 완료
|
- 기존 etcd Incus 컨테이너 폐기 완료
|
||||||
- 기존 K3s server.bak 삭제 완료
|
- 기존 K3s server.bak 삭제 완료
|
||||||
|
|
||||||
|
### Phase 5: MetalLB 도입 + 네임스페이스 정리 ✅ (2026-03-26)
|
||||||
|
- MetalLB L2 도입 (192.168.9.50-59), K3s ServiceLB 비활성화
|
||||||
|
- NodePort 전면 제거 → LoadBalancer 전환 (APISIX .50, sshpiper .51, Teleport .52, Traefik .53)
|
||||||
|
- Traefik: hostPort 80/443 → LoadBalancer 192.168.9.53
|
||||||
|
- HAProxy 백엔드: 3노드 roundrobin → MetalLB IP 단일 엔드포인트
|
||||||
|
- k3s.inouter.com DNS: 3노드 A 레코드 → 192.168.9.53 단일
|
||||||
|
- sshpiper 설치 (SSH 리버스 프록시, Pipe CRD)
|
||||||
|
- Teleport 설치 + relay4wd APISIX stream 포워딩 (443→8443→192.168.9.52:443)
|
||||||
|
- ironclad/anvil 네임스페이스 삭제 (오사카에서 서빙)
|
||||||
|
- api 네임스페이스 신설 (namecheap-api, vultr-api, *.api.inouter.com)
|
||||||
|
- mcp 네임스페이스 신설 (bunnycdn-mcp, kaniko 빌드, bunny.mcp.inouter.com)
|
||||||
|
- 신규 인증서: *.api.inouter.com, *.mcp.inouter.com
|
||||||
|
|
||||||
|
## 현재 네임스페이스 구조
|
||||||
|
|
||||||
|
| Namespace | 서비스 | 비고 |
|
||||||
|
|-----------|--------|------|
|
||||||
|
| kube-system | Traefik (LB .53) | 메인 라우팅 |
|
||||||
|
| apisix | APISIX (LB .50) | SafeLine WAF 전용 |
|
||||||
|
| sshpiper | sshpiper (LB .51) | SSH 리버스 프록시 |
|
||||||
|
| teleport | Teleport (LB .52) | 접근 관리 |
|
||||||
|
| metallb-system | MetalLB | L2 LB |
|
||||||
|
| cert-manager | cert-manager | 인증서 (와일드카드 8개) |
|
||||||
|
| argocd | ArgoCD | GitOps |
|
||||||
|
| gitea | Gitea + PostgreSQL + Valkey | Git |
|
||||||
|
| api | namecheap-api, vultr-api | API 서비스 |
|
||||||
|
| mcp | bunnycdn-mcp | MCP 서버 |
|
||||||
|
| tools | cfb-manager, nocodb | 도구 |
|
||||||
|
| monitoring | VictoriaMetrics + Grafana | 모니터링 |
|
||||||
|
| longhorn-system | Longhorn | 스토리지 |
|
||||||
|
| safeline | SafeLine WAF | 보안 |
|
||||||
|
| openmemory | OpenMemory MCP + Qdrant | 메모리 |
|
||||||
|
| vault | Vault (ExternalName → jp1) | 시크릿 |
|
||||||
|
| searxng | SearXNG | 검색 |
|
||||||
|
| n8n | n8n | 자동화 |
|
||||||
|
| kroki | Kroki | 다이어그램 |
|
||||||
|
|
||||||
## 관련 문서
|
## 관련 문서
|
||||||
|
|
||||||
- [[infra-hosts]] — 서버 목록
|
- [[infra-hosts]] — 서버 목록
|
||||||
- [[backup]] — 백업 체계 (etcd → PostgreSQL 전환 후 변경 필요)
|
- [[metallb]] — MetalLB 설정 및 IP 할당
|
||||||
|
- [[teleport]] — Teleport 접근 관리
|
||||||
|
- [[sshpiper]] — SSH 리버스 프록시
|
||||||
|
- [[gateway-api]] — Traefik Gateway API
|
||||||
|
- [[apisix]] — APISIX 설정
|
||||||
|
- [[backup]] — 백업 체계
|
||||||
|
|||||||
Reference in New Issue
Block a user