korean-docs
설치 가이드
일반 Kubernetes

범용 Kubernetes 설치

AKS, GKE, OKD, Rancher, 기본 Kubernetes 등 표준을 준수하는 모든 클러스터에 적용됩니다.

무료 티어 클러스터도 무료 라이선스 키가 필요합니다. 무료 키 요청하기

사전 요구사항

  • 표준을 준수하는 Kubernetes 클러스터, 1.26+
  • 대상 클러스터에 설정된 kubectl
  • helm 3

GHCR 설치

⚠️

라이선스 키가 필요합니다. 무료 티어도 예외가 아닙니다. 200 vCPU 미만 클러스터는 무료 키를 요청하세요.

  • Helm 차트: https://release.waveautoscale.io/helm-chart
  • 이미지 레지스트리: ghcr.io/stclab-inc/*
  • Pull secret: Wave 팀이 제공하는 GHCR pull secret

values-ghcr.yaml

values-ghcr.yaml
ghcr:
  enabled: true
  dockerconfigjson: "<GHCR_PULL_SECRET_DOCKERCONFIGJSON>"
 
license:
  key: "<LICENSE_KEY>"
 
spec:
  # Option A: create a new PVC and specify a StorageClass.
  storageClassName: "<STORAGE_CLASS_NAME>"
 
  # Option B: use a pre-existing PVC.
  # existingPvcName: "<EXISTING_PVC_NAME>"

설치

<CHART_VERSION>을 원하는 Wave Autoscale Helm 차트 버전으로 바꾸세요.

CMD
helm repo add wave-autoscale-helm https://release.waveautoscale.io/helm-chart
helm repo update
 
helm install wave-autoscale-helm wave-autoscale-helm/wave-autoscale-helm \
  -f values-ghcr.yaml \
  --version <CHART_VERSION> \
  --create-namespace \
  -n wave-autoscale

에어갭 / 프라이빗 레지스트리

외부 네트워크가 차단된 클러스터를 위한 방식입니다. GHCR의 Wave 이미지를 프라이빗 레지스트리로 미러링한 뒤, Wave가 그 레지스트리를 사용하도록 설정합니다.

절차

  1. 이미지 미러링: ghcr.io/stclab-inc/*의 이미지(wave-autoscale-core, wave-autoscale-web-console, wave-autoscale-intelligence, wave-autoscale-agent, wave-autoscale-cadvisor)를 프라이빗 레지스트리로 복사합니다.
  2. GHCR 비활성화: values 파일에서 ghcr.enabled: false로 설정합니다.
  3. 컴포넌트별로 image.repository를 재정의합니다 (your-registry.com을 자신의 레지스트리 호스트명으로 바꾸세요):
values-private-registry.yaml
ghcr:
  enabled: false
 
license:
  key: "<LICENSE_KEY>"
 
spec:
  core:
    image:
      repository: your-registry.com/wave-autoscale/core
      tag: <version>
 
  webConsole:
    image:
      repository: your-registry.com/wave-autoscale/web-console
      tag: <version>
 
  intelligence:
    image:
      repository: your-registry.com/wave-autoscale/intelligence
      tag: <version>
 
  agent:
    image:
      repository: your-registry.com/wave-autoscale/agent
      tag: <version>
 
  cadvisor:
    image:
      repository: your-registry.com/wave-autoscale/cadvisor
      tag: <version>
 
  # Option A: create a new PVC and specify a StorageClass.
  storageClassName: "<STORAGE_CLASS_NAME>"
 
  # Option B: use a pre-existing PVC.
  # existingPvcName: "<EXISTING_PVC_NAME>"
  1. 레지스트리 자격 증명 제공: Kubernetes imagePullSecrets를 통해 전달합니다. 이 클러스터에서 프라이빗 워크로드에 평소 사용하는 자격 증명을 그대로 사용하면 됩니다.
  2. Helm으로 배포:
CMD
helm repo add wave-autoscale-helm https://release.waveautoscale.io/helm-chart
helm repo update
 
helm install wave-autoscale-helm wave-autoscale-helm/wave-autoscale-helm \
  -f values-private-registry.yaml \
  --version <CHART_VERSION> \
  --create-namespace \
  -n wave-autoscale

설치 확인

CMD
kubectl get pods -n wave-autoscale

웹 콘솔을 엽니다:

CMD
kubectl port-forward -n wave-autoscale svc/wave-autoscale-svc 3025:3025

http://localhost:3025로 접속합니다.

기본 로그인 정보: 사용자 이름 admin, 비밀번호 waveautoscale. 설정이 끝나는 대로 웹 콘솔의 사용자 관리 UI에서 반드시 변경하세요.

업데이트

CMD
helm repo update
 
helm upgrade wave-autoscale-helm wave-autoscale-helm/wave-autoscale-helm \
  -f values-ghcr.yaml \
  --version <CHART_VERSION> \
  -n wave-autoscale

제거

CMD
helm uninstall wave-autoscale-helm -n wave-autoscale
⚠️

PVC 보존: StatefulSet의 보존 정책에 따라 제거 후에도 PVC는 유지됩니다. 저장된 데이터가 더 이상 필요 없을 때만 PVC를 수동으로 삭제하세요.

다음 단계