- 会員限定
- 2019/01/10 掲載
なぜKubernetesは期待にこたえられるのか? 5つの理由を解説
Kubernetesが期待にこたえ続ける5つの理由
Janet Kuo氏。Kubernetesが期待にこたえ続ける5つの理由を、5位から紹介しましょう。
5位 本番環境で10年以上コンテナを実行してきた経験を基に開発されている
GoogleはBorgを使って10年以上Google SearchやGmail、YouTubeといったサービスを稼働させてきました。
このBorgの経験から学んだことがKubernetesに込められています。
例えばスケジューリングやデプロイの最小単位であるPodは、それぞれ固有のIPアドレスを持っています。これにより運用管理の複雑さが取り除かれているのです。
というのも、これによりPodはそれ自身が仮想マシンやベアメタルサーバのように扱えるためです。これはまさに革新的なことでした。
4位 ユーザーフォーカス
Kubernetesの開発においては、ユーザーからのフィードバックを非常に重視しています。
例えば2016年当時、Kubernetesのクラスタを立ち上げるにはGitHubからスクリプトをダウンロードして実行する必要がありました。つまりスクリプトなしには起動できなかったのです。
そこで、私たちは45分以内にスクリプトを使わずにKubernetesのクラスタを立ち上げる「Kubernetes Bootstrapping Challenge」というコンテストをしました。しかし私も含めて誰も成功しませんでした。
これがきっかでさまざまなツール、例えばシングルノードのクラスタを簡単に起動するMnikubeなどのツールが開発されるようになりました。
3位 宣言的なAPIと自動化
Kubernetesの基本的なコンセプトの1つに、APIが命令的(Imperative)ではなく宣言的(Declarative)であることがあります。
いわば命令的というのはマニュアル運転で、宣言的というのは自動運転のようなものです。
命令的なAPIでは、目的を達成するためには手順を1つ1つ呼び出さなくてはなりません。一方、宣言的なAPIはなにを達成したいかをシステムに告げるだけで、あとはシステムがやってくれます。
分散システムにおいてはどのノードがいつ落ちるか分かりません。宣言的なモデルではKubernetesがクラスタの自己修復を実現してくれるため、ユーザーが一晩中起きていて落ちたノードの代わりのノードを立ち上げたり、負荷に対してノードを追加したり、といったことをしなくてもいいのです。
【次ページ】 2位と1位、そして成功をさらに続けていくために何をするのか?
関連コンテンツ
PR
PR
PR