開閉ボタン
ユーザーメニュー
ユーザーメニューコンテンツ
ログイン

  • 会員限定
  • 2019/01/10

なぜKubernetesは期待にこたえられるのか? 5つの理由を解説

2018年12月10日から13日まで、米ワシントン州シアトルでCloud Native Computing Foundation主催のイベント「KubeCon + CloudNativeCon North America 2018」が開催されました。

新野淳一(本記事は「Publickey」より転載)

新野淳一(本記事は「Publickey」より転載)

ITジャーナリスト/Publickeyブロガー。大学でUNIXを学び、株式会社アスキーに入社。データベースのテクニカルサポート、月刊アスキーNT編集部 副編集長などを経て1998年退社、フリーランスライターに。2000年、株式会社アットマーク・アイティ設立に参画、オンラインメディア部門の役員として2007年にIPOを実現、2008年に退社。再びフリーランスとして独立し、2009年にブログメディアPublickeyを開始。現在に至る。

 4日間で20のキーノートと200を超えるセッションが行われたこのイベントから、同イベントのホスト役でもあるGoogleのソフトウェアエンジニア Janet Kuo氏によって行われたキーノートの1つ、「Kubernetes: Living Up to the Hype」(Kubernetes:期待にこたえ続ける)の内容をダイジェストで紹介しましょう。

Kubernetesが期待にこたえ続ける5つの理由

 Janet Kuo氏。

 Kubernetesが期待にこたえ続ける5つの理由を、5位から紹介しましょう。

photo

 5位 本番環境で10年以上コンテナを実行してきた経験を基に開発されている

 GoogleはBorgを使って10年以上Google SearchやGmail、YouTubeといったサービスを稼働させてきました。

 このBorgの経験から学んだことがKubernetesに込められています。

 例えばスケジューリングやデプロイの最小単位であるPodは、それぞれ固有のIPアドレスを持っています。これにより運用管理の複雑さが取り除かれているのです。

 というのも、これによりPodはそれ自身が仮想マシンやベアメタルサーバのように扱えるためです。これはまさに革新的なことでした。

 4位 ユーザーフォーカス

 Kubernetesの開発においては、ユーザーからのフィードバックを非常に重視しています。

 例えば2016年当時、Kubernetesのクラスタを立ち上げるにはGitHubからスクリプトをダウンロードして実行する必要がありました。つまりスクリプトなしには起動できなかったのです。

 そこで、私たちは45分以内にスクリプトを使わずにKubernetesのクラスタを立ち上げる「Kubernetes Bootstrapping Challenge」というコンテストをしました。しかし私も含めて誰も成功しませんでした。

photo

 これがきっかでさまざまなツール、例えばシングルノードのクラスタを簡単に起動するMnikubeなどのツールが開発されるようになりました。

 3位 宣言的なAPIと自動化

 Kubernetesの基本的なコンセプトの1つに、APIが命令的(Imperative)ではなく宣言的(Declarative)であることがあります。

 いわば命令的というのはマニュアル運転で、宣言的というのは自動運転のようなものです。

photo

 命令的なAPIでは、目的を達成するためには手順を1つ1つ呼び出さなくてはなりません。一方、宣言的なAPIはなにを達成したいかをシステムに告げるだけで、あとはシステムがやってくれます。

 分散システムにおいてはどのノードがいつ落ちるか分かりません。宣言的なモデルではKubernetesがクラスタの自己修復を実現してくれるため、ユーザーが一晩中起きていて落ちたノードの代わりのノードを立ち上げたり、負荷に対してノードを追加したり、といったことをしなくてもいいのです。

【次ページ】 2位と1位、そして成功をさらに続けていくために何をするのか?

開発総論 ジャンルのトピックス

開発総論 ジャンルのIT導入支援情報

PR

ビジネス+IT 会員登録で、会員限定コンテンツやメルマガを購読可能、スペシャルセミナーにもご招待!