よろずやIT
用語辞典

Kubernetes(クバネティス)とは?コンテナを自動で管理する仕組みをやさしく解説

執筆・監修:よろずやIT編集部|編集方針を見る

結論:まずここだけ読めばOK

詳しい手順・原因は、この下で解説しています。

用語辞典のイラスト

結論: Kubernetes(クバネティス)とは、たくさんのコンテナを、自動で管理する仕組みです。コンテナの起動・増減・故障時の入れ替えなどを、自動で行ってくれます。ただし、運用の手間が大きいため、小規模なサービスには、過剰になりやすい点に注意が必要です。

なぜ必要なのか:港のコンテナ輸送で考える

コンテナ(アプリを、動作環境ごと、箱に入れたもの)が、数個なら、人の手でも管理できます。コンテナが数百になると、次のような問題が出てきます。

港で、膨大なコンテナを、積み替え・配置・追跡する管理システムがあるように、ソフトウェアの世界でも、コンテナを自動で管理する仕組みが必要になります。それが、Kubernetesです。コンテナの基礎は、コンテナと仮想マシンの違いで解説しています。

Kubernetesが自動でやってくれること

機能 内容
自動配置 コンテナを、空きのあるサーバーに、自動で配置する
自己修復 止まったコンテナを、自動で再起動・入れ替えする
スケーリング アクセスの増減に応じて、コンテナの数を、増やしたり減らしたりする
負荷分散 アクセスを、複数のコンテナに振り分ける
無停止の更新 新しいバージョンに、少しずつ入れ替えて、サービスを止めずに更新する

アクセスの振り分けの考え方は、ロードバランサーとはで解説しています。無停止での入れ替えは、ブルーグリーンデプロイとはも参考になります。

基本の用語

用語 意味
クラスタ Kubernetesが管理する、サーバー全体のまとまり
ノード クラスタを構成する、1台1台のサーバー(マシン)
Pod(ポッド) コンテナを動かす最小の単位。1つ以上のコンテナを含む
Deployment 「このアプリを、何個動かしたいか」を宣言して、維持してくれる仕組み
Service Podへのアクセスの窓口。Podが入れ替わっても、同じ窓口でつながる

「こうあってほしい」を宣言する

Kubernetesの特徴は、「こういう状態にしたい」と宣言すると、実際の状態を、その状態に近づけ続けてくれることです。宣言は、YAMLという形式のファイルで書きます。たとえば、「このアプリを、3つ動かす」と書くと、1つ止まっても、自動で補充されます。YAMLの書き方は、YAMLとはで解説しています。

メリットと注意点

メリット

注意点

向いている場面・向かない場面

向いている 向かない
多数のサービスを、安定して運用したい 1〜数台のサーバーで、足りる規模
アクセスの増減が、大きい 運用の担当者が、少ない
無停止での更新が、求められる まずは、早く作って、試したい段階

最初は、より簡単な方法で始め、必要になってから、Kubernetesを検討する流れが、現実的です。開発と運用の連携の考え方は、DevOpsとはで解説しています。

振り返ると

Kubernetesは、たくさんのコンテナを、自動で配置・修復・増減する仕組みです。大規模なサービスの運用で力を発揮しますが、負担も大きいため、規模に合わせて、導入を判断しましょう。

関連記事:クラウドはどこにある?

あわせて読みたい:IaC(Infrastructure as Code)とは

PR入門Kubernetes [ Brendan Burns ]

入門Kubernetes [ Brendan Burns ]

¥3,080

楽天で見る
SHAREXLINEはてブ

よくある質問

Q.Kubernetesと、Dockerは、何が違いますか?

A.Dockerは、アプリをコンテナとして、まとめて動かすための技術です。Kubernetesは、そのコンテナを、多数・複数のサーバーにわたって、管理するための仕組みです。Dockerが『コンテナを作る道具』なら、Kubernetesは『コンテナを、大量に管理する仕組み』と言えます。Dockerの基本は、[Dockerとは](/posts/docker-toha)で解説しています。

Q.「k8s」とは何ですか?

A.Kubernetesの略記です。Kとsの間に、8文字あることから、そう書かれます。

Q.個人開発や小さなサービスにも、Kubernetesは必要ですか?

A.多くの場合は、必要ありません。運用や学習の負担が大きいため、1〜数台のサーバーで足りる規模では、より簡単な方法が向いています。複数のサービスを、安定して大規模に運用する必要が出てきた時に、検討するのが一般的です。

Q.Kubernetesは、自分で構築する必要がありますか?

A.自分で構築することもできますが、クラウド事業者が、管理された形で提供するサービスも、多くあります。運用の手間を減らしたい場合は、そうしたサービスの利用が、検討されます。

関連記事

最新のIT関連書籍 トップ10

PR / 楽天市場の売れ筋ランキングを定期的に取得しています。価格は変動する場合があるため、購入前に各ストアでご確認ください。