現場実践|Kubernetes運用

KubernetesのNamespace・ResourceQuota・HPA実践|本番環境での安定稼働のための設定

「Kubernetesを本番で使うにはどんな設定が必要?」——Namespace・ResourceQuota・LimitRange・HPA(水平オートスケーリング)を使ったKubernetes本番環境の安定稼働のための設定を解説します。

読了目安:約18分更新日:2026年3月

💡 Kubernetesは設定次第でリソース枯渇・コスト爆発・ノイジーネイバー問題が発生します。ResourceQuota・LimitRange・HPAの3つを適切に設定することが本番環境の安定稼働の鍵です。

この記事を書いた人
現役ITエンジニア・IT講師(経験14年)
CCNA・CCNP 取得LPIC-1 保有SES現場を複数経験

Kubernetes本番環境の設計・運用を複数案件で担当してきた立場から解説します。

1. Namespaceで環境を分離

# Namespaceの作成
kubectl create namespace production
kubectl create namespace staging
kubectl create namespace development

# Namespaceを指定してPodを確認
kubectl get pods -n production
kubectl get all -n production

# デフォルトNamespaceを変更
kubectl config set-context --current --namespace=production

2. ResourceQuotaでリソース上限を設定

apiVersion: v1
kind: ResourceQuota
metadata:
  name: production-quota
  namespace: production
spec:
  hard:
    requests.cpu: "10"
    requests.memory: 20Gi
    limits.cpu: "20"
    limits.memory: 40Gi
    pods: "50"

ResourceQuotaを設定することで、特定のNamespaceが過剰なリソースを消費してクラスター全体に影響を与える「ノイジーネイバー問題」を防ぎます。

3. HPAで水平オートスケーリング

apiVersion: autoscaling/v2
kind: HorizontalPodAutoscaler
metadata:
  name: web-hpa
spec:
  scaleTargetRef:
    apiVersion: apps/v1
    kind: Deployment
    name: web-deployment
  minReplicas: 2
  maxReplicas: 10
  metrics:
  - type: Resource
    resource:
      name: cpu
      target:
        type: Utilization
        averageUtilization: 70

4. LimitRangeでPodのデフォルトリソースを設定

LimitRangeはNamespace内のPodにresources.requests・resources.limitsが設定されていない場合のデフォルト値を定義します。設定がないPodはリソース制限なしで動作してしまうため、LimitRangeでデフォルト値を設定することが本番環境の必須設定です。

📌 この記事のポイント
  • Namespaceで環境(dev/stg/prod)を分離してリソースとアクセスの境界を明確にする
  • ResourceQuotaでNamespaceごとのCPU・メモリ上限を設定してノイジーネイバー問題を防ぐ
  • HPAでCPU使用率に応じてPodレプリカを自動スケールアウト・スケールインする

キャリアの疑問、一緒に解決しませんか?

Route Bloomでは、インフラ系ITエンジニアを目指す方への個別サポートを行っています。2026年7月からフリーランス講師として本格始動予定です。

※Kubernetesのバージョンにより構文が異なります。公式ドキュメントもご参照ください。

ABOUT ME
たから
サラリーマンをしながら開業して経営やってます。 今年、本業で独立・別事業を起業予定です。 ◆経験:IT講師/インフラエンジニア/PM/マネジメント/採用/運用・保守・構築・設計 ◆取得資格:CCNA/CCNP/LPIC-1/AZ-900/FE/サーティファイC言語 ◆サイドビジネス:アパレル事業/複数のWEBメディアを運営