Kubernetes

技術用語
約1分で読めます

コンテナ化されたアプリケーションのデプロイ、スケーリング、および管理を自動化するオープンソースのオーケストレーションプラットフォームです。

別名
KubernetesK8sクバネティス

詳しい説明

Kubernetes(K8s)は、Googleが開発しCNCFが管理するオープンソースのコンテナオーケストレーションプラットフォームです。Dockerなどでコンテナ化したアプリケーションのデプロイ、スケーリング、復旧、負荷分散を自動化します。トラフィックに応じてインスタンスを自動的に増減させるオートスケーリング、無停止デプロイのためのローリングアップデート、障害が発生したコンテナを自立的に復旧させるセルフヒーリングが中核機能です。大規模なAIモデルのサービング、マイクロサービスの運用、マルチクラウドデプロイに広く利用されており、AWS EKS、Google GKE、Azure AKSなどのマネージドサービスを利用することで運用負荷を軽減できます。

ツール選定において重要な理由

AIモデルを複数のユーザーに安定してサービングするには、トラフィックの変動に伴うスケーリングや障害復旧が必要です。Kubernetesベース의デプロイをサポートするツールを使用すれば、需要に合わせてリソースを自動調整し、無停止でアップデートを行うことができます。ただし運用の複雑さが高いため、マネージドサービスのサポートの有無も合わせて検討することが推奨されます。

ツール選定時のチェックポイント

  • GPUリソースのスケジューリングとオートスケーリングをサポートしているか
  • 無停止ローリングデプロイと自動復旧が可能か
  • マネージドKubernetes(EKS、GKE、AKS)と互換性があるか
  • 運用の複雑さに対して、自社チームの運用能力が十分であるか

実際の活用事例

画像生成APIの利用が日中に集中する場合、Kubernetesがリクエスト量に合わせてGPU Podを自動的にスケールアウトし、アクセスの少ない深夜にはスケールインします。これにより、常時大規模なサーバーを起動しておく必要がなく、応答遅延を防ぎながらコストを削減できます。

関連用語

DockerマイクロサービスクラウドDevOps