애플리케이션 개요
이 섹션은 lumie-infra/applications/** 아래에 선언된 운영자 대상 애플리케이션을 문서화합니다. 이들은 개발, 분석, 클러스터 관리, 내부 AI 워크플로를 지원하는 day-2 도구이며, applications/lumie/** 아래의 Lumie 제품 워크로드도 아니고 lumie-infra/security/** 아래의 보안 control plane도 아닙니다.
범위와 소유권
소스 경로
| 경로 | 역할 |
|---|---|
lumie-infra/applications/application.yaml | 전체 applications 슬라이스용 ArgoCD app-of-apps 진입점 |
lumie-infra/applications/kustomization.yaml | 이 슬라이스에 속한 애플리케이션 나열 |
lumie-infra/applications/coder/** | 셀프호스팅 Coder control plane과 workspace template |
lumie-infra/applications/headlamp/** | Kubernetes UI 배포 values |
lumie-infra/applications/openclaw/** | OpenClaw 매니페스트, 시크릿, PVC, 네트워크 정책 |
lumie-infra/applications/umami/** | Umami Helm values와 시크릿 연결 |
lumie-infra/security/teleport/agent/helm-values.yaml | 네 애플리케이션 모두를 위한 운영자 접근 경로 |
경계
- ArgoCD는 애플리케이션 네임스페이스의 desired state와 렌더링된 워크로드를 소유합니다.
- Teleport는 이 슬라이스의 네 애플리케이션 모두에 대한 외부 운영자 접근을 소유합니다.
- Vault Secrets Operator,
infra-db, cert-manager, Goldilocks 같은 공유 플랫폼 서비스는 이 슬라이스 밖에 있으며 여기서는 소비만 합니다. applications/lumie/**의 제품 서비스는 어떤 애플리케이션이lumie-dev네임스페이스나 공유 데이터베이스 클러스터에 의존하더라도 별도 워크로드입니다.
런타임 맵
접근 모델
이 슬라이스의 네 애플리케이션은 모두 직접 퍼블릭 ingress 없이 배포됩니다.
Coder는public_addr: coder.lumie-infra.com으로 선언된 Teleport 앱으로 노출됩니다.Headlamp는 Teleport 앱headlamp로 노출됩니다.OpenClaw는 gateway가 기대하는 bearer token을 Teleport가 주입하는 Teleport 앱openclaw로 노출됩니다.Umami는 Teleport 앱umami로 노출됩니다.
이 접근 계약은 애플리케이션 폴더 자체가 아니라 lumie-infra/security/teleport/agent/helm-values.yaml에 선언되어 있습니다.
이 슬라이스가 공유하는 운영 패턴
- 이 슬라이스의 모든 ArgoCD
Application은 automated sync, pruning, self-healing을 활성화합니다. - 각 네임스페이스는 ArgoCD가 관리하는 네임스페이스 메타데이터를 통해
goldilocks.fairwinds.com/enabled: 'true'라벨이 붙습니다. - 시크릿 재료는
VaultStaticSecret리소스로 렌더링되거나, ArgoCD가 의도적으로 무시하는 차트 소유 시크릿에 위임됩니다. - 이 페이지들은 troubleshooting 콘텐츠를 소유하지 않습니다. 여기의 목적은 무엇이 배포되는지, 어떻게 접근하는지, 어떻게 검증하는지에 대한 상시 계약을 설명하는 것입니다.
공통 장애 지점
- 워크로드는 정상이어도 퍼블릭 접근 경로가 애플리케이션 네임스페이스 밖에 있기 때문에 Teleport 접근이 깨질 수 있습니다.
- Vault 시크릿 새로고침 또는 변환 오류로 인해 워크로드가 오래되었거나 누락된 연결 자격 증명으로 실행될 수 있습니다.
- 애플리케이션 수준 의존성이 깨졌을 때, 예를 들어 잘못된 데이터베이스 비밀번호나 잘못된 OIDC redirect가 있어도 ArgoCD는
Healthy일 수 있습니다. - 업스트림 차트 기반 애플리케이션은 로컬 values 파일이 바뀌지 않아도 차트 업그레이드 후 렌더링 기본값이 달라질 수 있습니다.
검증
클러스터 상태를 변경하지 않고 이 슬라이스를 검증하려면 다음 명령을 사용하세요.
kubectl get applications.argoproj.io -n argocd coder headlamp openclaw umami
kubectl get pods -n coder
kubectl get pods -n headlamp
kubectl get pods -n openclaw
kubectl get pods -n umami
kubectl get svc -n coder
kubectl get svc -n headlamp
kubectl get svc -n openclaw
kubectl get svc -n umami
성공은 네 개의 Argo CD Application이 모두 존재하고 Synced/Healthy이며, 각 네임스페이스에 Ready pod가 있고, 각 서비스가 상세 페이지에서 기대하는 워크로드를 가리키는 것을 의미합니다.
이 슬라이스의 페이지
- Coder
- Headlamp
- OpenClaw
- Umami
- 이 애플리케이션이 의존하는 접근 및 control-plane 서비스를 다루는 Security overview