8章コンテナの実行

解決できない厄介な問題がある場合には、解決できない、より単純な問題に取り組むことから始めます。

――Max Tegmark(スウェーデン出身の米国の物理学者、1967~)

ここまでの章では、クラスタを手に入れる場所、クラスタを管理する方法、クラスタリソースを管理する方法など、主としてKubernetesの運用面に焦点を当ててきました。そこで次に、Kubernetesの最も基礎的なオブジェクトであるコンテナに目を向けましょう。技術的なレベルにおけるコンテナの動作原理、コンテナとPodの関係、コンテナイメージをKubernetesにデプロイする方法などについて説明します。

この章では、コンテナのセキュリティという重要なトピックも取り扱い、Kubernetesのセキュリティ機能を駆使してアプリケーションを安全な方法で、かつベストプラクティスにしたがってデプロイする方法を検討します。最後に、ディスクボリュームをPodにマウントして、コンテナでデータの共有や永続的な使用が可能になる方法も概観します。

8.1 コンテナとPod

Podについては、すでに2章で紹介し、DeploymentがReplicaSetを用いて一連のレプリカPodを維持する仕組みも説明しましたが、Pod自体の詳細にはそれほど踏み込んでいませんでした。PodとはKubernetesにおけるスケジューリングの単位です。Podオブジェクトは単一のコンテナまたはコンテナのグループを表し、Kubernetesで何を実行する場合も、Podを使用して行われます。

Podとは、同じ実行環境上で動くアプリケーションコンテナとストレージボリュームの集まりのことです。Kubernetes クラスタ上ではコンテナではなくPodが最小のデプロイ単位です。1つのPod内のコンテナはすべて同じマシン上に配置されます。 ...

Get Kubernetesで実践するクラウドネイティブDevOps now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.