26Z21e

QK·2026년 8월 21일

이 경고(Warning: Incomplete plugins disabled)는 Headlamp가 /headlamp/plugins/lakehouse-monitor/ 디렉터리를 스캔할 때 package.json 메타데이터 파일이 없어서 해당 플러그인을 불완전한(Incomplete) 플러그인으로 판단하고 로드를 차단했을 때 발생합니다.

Headlamp 백엔드는 각 플러그인 폴더 안에 main.jspackage.json 두 파일이 모두 존재해야 유효한 플러그인으로 인식합니다.


해결 방법: ConfigMap에 package.json 추가 및 마운트

package.json 내용을 ConfigMap에 함께 담고, 두 파일을 모두 플러그인 디렉터리에 마운트해 줍니다.


1단계: ConfigMap 업데이트 (package.json 포함)

기존 ConfigMap을 package.json이 포함된 형태로 다시 생성합니다.

kubectl create configmap headlamp-lakehouse-plugin \
  --from-file=main.js=./dist/main.js \
  --from-literal=package.json='{
    "name": "lakehouse-monitor",
    "version": "0.1.0",
    "main": "main.js"
  }' \
  -n headlamp \
  --dry-run=client -o yaml | kubectl apply -f -

2단계: Deployment에 package.json 마운트 패치

두 파일이 모두 /headlamp/plugins/lakehouse-monitor/ 디렉터리에 들어가도록 Deployment를 패치합니다.

kubectl patch deployment headlamp -n headlamp --type='strategic' -p '{
  "spec": {
    "template": {
      "spec": {
        "containers": [
          {
            "name": "headlamp",
            "volumeMounts": [
              {
                "name": "lakehouse-plugin-vol",
                "mountPath": "/headlamp/plugins/lakehouse-monitor/main.js",
                "subPath": "main.js"
              },
              {
                "name": "lakehouse-plugin-vol",
                "mountPath": "/headlamp/plugins/lakehouse-monitor/package.json",
                "subPath": "package.json"
              }
            ]
          }
        ],
        "volumes": [
          {
            "name": "lakehouse-plugin-vol",
            "configMap": {
              "name": "headlamp-lakehouse-plugin"
            }
          }
        ]
      }
    }
  }
}'

3단계: 파일 확인 및 브라우저 새로고침

  1. Pod 재기동 대기:
kubectl rollout status deployment/headlamp -n headlamp
  1. Pod 내부 파일 2개 확인:
POD_NAME=$(kubectl get pod -n headlamp -l app.kubernetes.io/name=headlamp -o jsonpath='{.items[0].metadata.name}')
kubectl exec -it $POD_NAME -n headlamp -- ls -la /headlamp/plugins/lakehouse-monitor/
  • main.jspackage.json 두 파일이 모두 확인되어야 합니다.
  1. 브라우저에서 Ctrl + F5(강력 새로고침)를 누르면 incomplete plugins 경고가 사라지고 좌측 사이드바에 "Lakehouse DBs" 메뉴가 정상적으로 활성화됩니다.
profile
engineer

0개의 댓글