Advanced (업데이트: 2026. 7. 19.)

제조업 GKE 매니페스트 리뷰: Claude Code 체크리스트

제조업 GKE의 probes, resources, identity, release 점검 흐름입니다.

제조업 GKE 매니페스트 리뷰: Claude Code 체크리스트

제조 현장에서 아침 8시에 검사 화면이 멈추면 단순한 웹 장애가 아닙니다. 작업자는 종이로 돌아가고 QA는 시간을 잃고, 점심 전에는 CSV 대조가 쌓입니다. 이 글은 Claude Code로 GKE 매니페스트를 운영 반영 전에 점검하는 흐름입니다.

Key Points

제조업 GKE 리뷰는 라인 정지 시간, 종이 대체, 품질 기록, rollback 시간에서 시작합니다. 그 다음 image tag, replicas, probes, resources, Service 공개 범위, secrets, Workload Identity를 봅니다.

Workflow Before Production Release

먼저 현장 시간표를 봅니다. 아침 회의, 검사 피크, 출하 마감, 야간 job, 점검 시간을 놓고 YAML diff를 Claude Code가 읽습니다. 최종 승인은 운영과 QA가 합니다.

Review areaFile or screenStop condition
ImageDeployment YAML and CI artifactlatest tag or unapproved local build
Probesreadiness, liveness, startuptraffic reaches a pod before it is ready
Resourcesrequests and limitsno CPU or memory boundary
ExposureService and Ingressunexpected LoadBalancer or public endpoint
IdentityserviceAccountName and IAMdefault account or secret keys in YAML

What Claude Code Does and What Humans Decide

Claude Code drafts the checklist, kubectl commands, rollback notes, and short release message. Humans decide release time, allowed downtime, quality records, personal data, credentials, external exposure, and factory approval. That split matters because a manifest can be valid while the line cannot accept the risk.

3 Use Cases

Use case 1: Review inspection API Deployment

  • Input: Deployment YAML, image tag, inspection screen peak time, incident notes.
  • Output: release checklist for image, replicas, probes, resources, and rollback.
  • Human review: QA approval, paper fallback, release time, and line owner.

Use case 2: Check label printing exposure

  • Input: Service, Ingress, Namespace, terminal IP range, authentication note.
  • Output: exposure review, allowed network, and command list.
  • Human review: whether the service should ever be reachable outside the factory network.

Use case 3: Review quality aggregation job identity

  • Input: CronJob, ServiceAccount, IAM role, BigQuery dataset, Cloud Storage bucket.
  • Output: Workload Identity checklist, broad role warning, and secret handling note.
  • Human review: dataset scope, inspection images, vendor data, and audit log retention.

Copy-Paste Prompt

Act as a Korean manufacturing GKE production release reviewer.
Goal: prevent inspection screens, progress boards, label printing, and quality aggregation jobs from failing after a manifest change.

Review:
- Deployment / Service / Ingress / ConfigMap / Secret / ServiceAccount / CronJob YAML
- CI image tag
- planned release time
- factory peak time
- rollback note

Return:
1. release / hold / reject decision
2. five manifest lines a beginner should inspect today
3. missing probes, resources, replicas, identity, or exposure controls
4. kubectl verification commands
5. rollback commands
6. short message for factory operations

Working Check Code

// verify-gke-manifest.mjs
// No dependencies. Run with: node verify-gke-manifest.mjs
const manifest = `
apiVersion: apps/v1
kind: Deployment
metadata:
  name: inspection-api
spec:
  replicas: 1
  template:
    spec:
      containers:
        - name: app
          image: asia-northeast1-docker.pkg.dev/factory/prod/inspection-api:latest
          env:
            - name: CAMERA_API_KEY
              value: "plain-secret"
---
apiVersion: v1
kind: Service
metadata:
  name: inspection-api
spec:
  type: LoadBalancer
  ports:
    - port: 80
`;

const checks = [
  {
    name: "pinned image tag",
    failed: /:latest\b/.test(manifest),
    fix: "use a digest or release tag approved by QA"
  },
  {
    name: "replica count",
    failed: /replicas:\s*1\b/.test(manifest),
    fix: "set replicas to at least 2 for customer-facing production screens"
  },
  {
    name: "readiness probe",
    failed: !/readinessProbe:/.test(manifest),
    fix: "add readinessProbe before routing traffic"
  },
  {
    name: "liveness probe",
    failed: !/livenessProbe:/.test(manifest),
    fix: "add livenessProbe with a safe initial delay"
  },
  {
    name: "resources",
    failed: !/resources:\s*[\s\S]*requests:\s*[\s\S]*limits:/.test(manifest),
    fix: "set CPU and memory requests and limits"
  },
  {
    name: "plain secret",
    failed: /API_KEY[\s\S]*value:\s*["'][^"']+["']/.test(manifest),
    fix: "move secrets to Secret Manager or an approved secret flow"
  },
  {
    name: "service exposure",
    failed: /type:\s*LoadBalancer/.test(manifest),
    fix: "confirm whether an internal Service or controlled Ingress is intended"
  },
  {
    name: "service account",
    failed: !/serviceAccountName:/.test(manifest),
    fix: "use a named Kubernetes service account and Workload Identity"
  }
];

const failures = checks.filter((check) => check.failed);
if (failures.length > 0) {
  console.table(failures.map(({ name, fix }) => ({ name, fix })));
  process.exitCode = 1;
} else {
  console.log("GKE manifest release checklist passed.");
}

Pitfall: Common Failure Cases

가장 큰 실수는 유효한 YAML을 운영 승인으로 보는 것입니다. 매니페스트는 너무 빨리 traffic을 보내거나 내부 라벨 프린터를 노출하거나 넓은 identity를 쓸 수 있습니다.

The first failure is trusting a successful apply. Kubernetes accepts many manifests that are unsafe for a factory release. Add a production checklist before apply.

The second failure is using liveness and readiness without understanding the difference. Readiness controls traffic. Liveness restarts a container. A slow inspection API can be killed by an aggressive liveness probe.

The third failure is treating base64 as security. Secret manifests need a real policy, not plain credentials in Git.

FAQ

Q. 제조업에 GKE는 과한가요?\n\nA. 경우에 따라 그렇습니다. 여러 내부 서비스, job, rollback 점검을 한 플랫폼에서 볼 때 어울립니다.

Q. Should every factory system run on GKE?

A. No. Small internal tools may fit Cloud Run, a VM, or an existing platform. GKE makes sense when several services, jobs, rollouts, identity rules, and operational checks need one platform.

Q. What should beginners check first?

A. Image tag, replicas, readinessProbe, resources, and serviceAccountName. Those five lines catch many risky releases.

Q. Where should teams go next?

A. Teams that need manifests, CI review, Workload Identity, and rollback drills can start from ClaudeCodeLab training.

What I Verified

한국어 버전은 현장 시간표, 품질 기록, 라벨 출력, 상담 CTA를 유지했습니다. I checked GKE best practices, GKE Workload Identity, Kubernetes Deployments, Kubernetes probes, and Kubernetes resource management. I also checked the CTA, internal link, executable JavaScript, and locale coverage.

#claude-code #제조업 #gke #kubernetes #release
무료

무료 PDF: Claude Code 치트시트

이메일을 입력하면 명령, 리뷰 습관, 안전한 워크플로를 정리한 PDF를 받을 수 있습니다.

개인정보를 안전하게 관리하며 스팸을 보내지 않습니다.

Masa

작성자 소개

Masa

Claude Code 실무 워크플로와 팀 도입을 검증하는 엔지니어입니다.