[Kubernetes, Docker, Cloud] Kubernetes: A Cloud (and Data Center) Operating System?

原文はこちら
https://blogs.oracle.com/cloud-infrastructure/kubernetes-a-cloud-and-data-center-operating-system

主要なクラウドプロバイダー全体でKubernetesの採用が拡大するにつれて、Kubernetes自体をOSのコンセプトとの比較は興味深いものです。Wikipediaによると、OSは「コンピュータのハードウェアとソフトウェアのリソースを管理し、コンピュータプログラムに共通のサービスを提供するシステムソフトウェア」と定義されています。
Operating System (Wikipedia)
https://en.wikipedia.org/wiki/Operating_system
抽象的には、これはクラウドプロバイダーで動作するKubernetesと、Kubernetesの上で動作するように構築されたアプリケーションの現在のモデルとそれほど違いがありません。この文脈でKubernetesについて考え始めた場合、Kubernetesの過去と将来について何を学ぶことができるでしょうか。

Kubernetes Value Proposition

データセンター運用者は、運用コストやオーバーヘッドを最小限に抑えるために、OSを含む、より小さな基本コンポーネントの標準化に価値があることを長い間理解してきました。コンテナオーケストレーションの(多少複雑ですが)オープンな標準の価値を認識しているため、顧客とベンダーはどちらもその代替としてKubernetesに集まってきています。

企業がコンテナテクノロジを採用したことで、オンプレミスアプリケーションからクラウドへの移行を容易にし、クラウドプロバイダ間のロックインを回避し、将来のハイブリッド・デプロイメントやサーバーレスアプリケーションでも使用できるファブリックを提供する方法として、企業もまた、このオープンなKubernetesプラットフォーム上に構築する機会を認識しました。
Announcing Fn–An Open Source Serverless Functions Platform
https://blogs.oracle.com/developers/announcing-fn
https://orablogs-jp.blogspot.com/2017/10/announcing-fnan-open-source-serverless.html

Cloud OS - Present and Future

通常、OSを、OSの下の(ハードウェアとソフトウェア)リソースの間のレイヤー、その上で動作するアプリケーションという、サンドイッチの一部、として考えています。Kubernetesのアナロジーの文脈では、クラウドプロバイダー(もしくはオンプレミスのデータセンター)が下にあり、ビジネスアプリケーションが上にあります。一般に、OSレイヤーの仕事は基盤となるリソースと対話するという複雑性を抽象化し、アプリケーションの構築および実行をより簡単にすることです。

当然ながら、全てのプロバイダーがここで等しく立てるわけではありません。Raspberry PiやハイエンドのベアメタルサーバーでLinuxを動かすことができるのと同じように、洗練度の違いはあれどKubernetesをクラウドで実行できます。高い予測可能なパフォーマンスを備えた、基盤となるコンピュートやストレージ、ネットワークだけでなく、セキュリティ、ガバナンス、管理インターフェースなどの、まさにクラウド・ファブリックが、エンタープライズグレードのKubernetesとそれを利用するアプリケーションを実現するために重要です。

Linuxがカーネルの枠を超えて拡大しているように、将来の”Cloud OS”は基礎となるKubernetesの枠を超えて、今日”Kubernetes add-on"として一般に考えられているものを含むだけでなく、本当に必要なものクラウド(もしくはデータセンター)OSのコンポーネントとなるために必要なものも含めて実現するために広がっていくことでしょう。関連する例として、サービスメッシュ(IstioやLinkerd)、serverless functions(Fn project)、監視、ロギングのアドオン、そしてKubernetes "operators"、Kubernetesでステートフルなアプリケーション(例えばWebLogic Operator、MySQL Operator、さらにはKubernetes自身のためのoperatorもありです)を実現するためのフレームワークのようなものがあります。
Istio
https://istio.io/
Linkerd
https://linkerd.io/
Fn project
https://fnproject.io/
WebLogic Operator
https://blogs.oracle.com/weblogicserver/announcing-the-new-weblogic-server-kubernetes-operator
https://orablogs-jp.blogspot.com/2018/02/announcing-new-weblogic-server.html
MySQL Operator
https://github.com/oracle/mysql-operator
クラウドプロバイダーはこれらすべてのコンポーネントをマネージドCloud OSにパッケージングする方向に向かっています。こうすることで、自身のユーザー、開発者、企業が彼ら自身のコンテナインフラストラクチャの、特に高可用性の文脈における複雑な管理をしなくてすむようにし、OSの継続的な完全性と、下位のサービス層との互換性を確保できます。

Announcing Availability

これこそがOracle Cloud Infrastructureで将来に向けて取り組んでいることです。つまり、上流のオープンソースプロジェクトの成果をそのまま変更せずに採用し、優れたパフォーマンス、可用性、セキュリティを備え、エンタープライズグレードのクラウドインフラストラクチャで管理された、オープンな標準ベースのCloud OSです。弊社のお客様はお客様のアプリケーションを自身を持ってこの上で実行できますし、データセンターとクラウドの間を自由に移動できます。

Oracle Cloud Infrastructure RegistryとContainer Engine for Kubernetesという、2個の重要なCloud OSのピースを、Oracleはこのたび一般提供(GA)しました。
Oracle Cloud Infrastructure Registry
https://cloud.oracle.com/containers/registry
Container Engine for Kubernetes
https://cloud.oracle.com/containers/kubernetes-engine
  • レジストリは、デプロイメントと同じリージョン内にコンテナイメージを格納および共有するための、可用性の高い、プライベート・コンテナ・レジストリ・サービスです。
  • Container Engine for Kubernetesは、上流の標準Kubernetesのプロダクショングレードのコンテナオーケストレーションと、Oracleの次世代クラウドインフラストラクチャの管理とセキュリティ、予測可能な高いパフォーマンスを組み合わせた、フルマネージドの、エンタープライズ対応のコンテナ・サービスです。
    Oracle Cloud Infrastructure
    https://cloud.oracle.com/cloud-infrastructure
Cloud OSへの旅のいまどのあたりにいらっしゃいますか?現在のコンテナ戦略、弊社がお手伝いできるかどうか、伺えると幸甚です。みなさまから弊社の計画に対するご意見をお寄せください。

0 件のコメント:

コメントを投稿