HPE Blog, Japan
1755478 メンバー
4530 オンライン
108833 解決策
新規ポスト
TakuKimura

DX時代に求められるIT基盤とは?

昨今、各企業でDigital Transformation (DX)に対する活動が活発に行われています。DXの活動の一環として、クラウドネイティブ技術を導入する業が多いと考えます。クラウドネイティブは、”不確実な市場”に対応するための技術です。まさに、DXというキーワードに非常にマッチした技術となっています。
クラウドネイティブ技術の根底を支えるのがコンテナです。今回は、そのコンテナ基盤を支えるKubernetesについてご紹介します。

Kubernetesとは
Kubernetes(k8s)はコンテナオーケストレーションツールとして、昨今、注目を浴びているソフトウェアです。分散環境でのコンテナの起動や停止、ローリングアップデート、状態の監視やIPアドレスの付与、名前解決、ストレージの付与・・・等々、コンテナを使った分散環境での様々なオペレーションを自動化してくれるソフトウェアです。

K8sの大きなメリットは、宣言的なAPIを持っていることです。従来のオペレーションでは、サービスを“目的の状態”にするために、コマンドやスクリプトを使って命令的に行なってきました。K8sの場合、”目標とする状態”のみを宣言的に定義することで、その状態になるまでの手順を記載にすることなく、” 目標とする状態”にしてくれます。つまり、何か不具合でサービスの一部がダウンしてしまっても、” 目標とする状態”を知っているので自己修復が可能です。

もう1つのメリットは、柔軟性です。K8sを構成するコンポーネントは様々あり、それらは好きに組み合わせて使えます。例えば、コンテナ起動を実際にハンドリングするコンテナランタイムです。Docker EngineやCRI-O、containerdなどのお好きなランタイムを選択できます。コンテナランタイムだけでなく、内部ネットワークやDNS、必要ならL4/L7 ロードバランサー、API Gateway、ポリシーマネージメント等、ご自身で好きなものをk8sエコシステム群から選ぶことが可能です。

K8sを使う上で大変なことは?
様々なコンポーネントを自由に選択して構成できることが、k8sを利用する上でのハードルを上げていると考えます。つまり、k8sを構築する際、これらコンポーネントを自分で選択して、色々組み合わせて、検証して、自社に最適なk8s構成を探さなければなりません。これは非常にコストと時間がかかる作業になります。

このような背景から、各社、K8sディストリビューションとして”完成されたエンタープライズ版Kubernetes”を提供しています。どのディストリビューションも共通して出来ることは、”分散環境においてコンテナを稼働させる“ことです。この共通機能にプラスして、それぞれのベンダの特色を機能として実装することで、他者とは違うk8sを提供しています。例えば、セキュリティ強化であったり、仮想との融合であったり、パブリッククラウドとの連携であったり様々です。

k8sディストリビューションの登場により、k8sを構成する多数のコンポーネントを選択するという作業からは解放されましたが、どのディストリビューションが自社に合っているかという選択は避けられません。どのディストリビューションも多くの機能が搭載されており、個性的で魅力的です。ベンダーよっては、他ベンダーの機能比較を提示してくるかもしれません。多くの機能が搭載されたディストリビューションの方が輝いて見えるかもしれません。しかし、忘れていけないのが「コンテナ環境で何をしたいか」です。多機能なディストリビューションは複雑性を生むかもしれませんし、ライセンス費用も高いかもしれません。逆にシンプルすぎるディストリビューションは、やりたいことができないかもしれません。重要なのは、必要な機能/要件だけをリスト化し、その機能が網羅されている最適なディストリビューションを選択することです。

HPEのKubernetesディストリビューション
HPEも「Ezmeral Runtime Enterprise」(旧称Ezmeral Container Platform)というk8sディストリビューションを提供しています。Ezmeral Runtime EnterpriseはVanilla Kubernetes(純粋なオープンソースのKubernetes)を採用しており、Cloud Native Computing Foundation(CNCF)に認定されたディストリビューションCloud Native Computing Foundation(CNCF)に認定されたディストリビューション です。

他のブログ でもHPEの戦略を語っていますが、このEzmeral Runtime Enterpriseも「データの利活用」に特化したディストリビューションとなっています。
K8sを使う上で、悩みの種の1つがコンテナに付与するストレージ領域です。K8sにはContainer Storage Interface(CSI)という仕組みが備わっており、CSI対応したストレージはk8sから動的に任意のサイズのボリュームをコンテナに付与できます。Ezmeral Runtime Enterpriseでは、内部SDSとして「Ezmeral Data Fabric」を使用します。ライセンスに内部SDS用のEzmeral Data Fabric使用権が付随していますので、すぐにk8s上でコンテナに対してボリュームを付与できます。つまり、CSI対応したストレージ機器を、別途、準備する必要がありません。「データの利活用」に特化したディストリビューションなので、データ保管用のストレージ機能もケアされているということです。

このように、Ezmeral Runtime Enterpriseは、コンテナ上でパーシステントなボリューム(PV)をすぐに取り扱えます。また、コンテナ化されたレガシーなアプリケーションや、PV領域が必要なクラウドネイティブなアプリケーションも稼働できます。さらに、Ezmeral Data Fabricの一部の機能を利用できるので、いわゆる、ビッグデータ等の大規模なデータも扱えます。

Picture1.png

 

次回はEzmeral Runtime Enterpriseの概要と特徴について説明します。

0 感謝
作者について

TakuKimura

Engineer