著者|上級技術専門家の李鵬(Zhuanghuai)アリクラウドスマートビジネスグループ
REVIEW:クラウドストレージ遭遇したパフォーマンス、柔軟性、高可用性、暗号化、隔離、観測やライフサイクルに移動し、企業の負荷/コンテナのインテリジェントワークロードの新たな問題は、ストレージ製品のレベルを向上させるために必要なだけでなく、 、クラウドネイティブコントロール/データ・プレーンを改善する必要性は、クラウドストレージとクラウドストレージネイティブ進化を推進しています。この記事では、可能な解決策を探るために、問題のシナリオを説明し、最終的にはネイティブのクラウドストレージとクラウドストレージに来る行うことができ、どのような必要将来的に行われるようにするものになりました。
入門
最近、私はニーズが行われることを最終的にネイティブストレージを曇らせるものを、ネイティブストレージの組み合わせを曇らせ、インフラミート共同Kubernetes&クラウドネイティブミートアップが共催クラウド指向ネイティブミート永続的なアプリケーション、最近のクラウドストレージを考えて、オープンソースのストレージで参加する機会を得ました、どのような次の課題ネイティブクラウドストレージは、いくつかの予備的見解を共有するために、より多くの反射とコーミング、単語のいずれかを実行することは何ですか。
移動性、スケーラビリティおよび動的特性のために、ネイティブアプリケーションの雲があってもよいように、対応するネイティブストレージ、密度要件、速度、混合の程度、これも効率で提案されているクラウドストレージの基本的な能力をもたらすクラウド控訴の柔軟性、自律性、安定性、低カップリングのアプリケーション、GuestOSの最適化、セキュリティ、および他の側面。
オリジナルの雲の健康状態
コンテナとネイティブのクラウドコンピューティングは、すぐにビジネスを受け入れています
フォレスター予測:2022、ビルド環境の実行コンテナアプリケーションのグローバル組織/企業は、大幅に75%以上に引き上げます、今日の30%未満から止められないエンタープライズアプリケーションのコンテナの傾向を増加させました。
一方、将来のエンタープライズストレージ市場予測の、IDCによると成長トレンド:クラウドストレージの要件2020年に2015年に比べ、エンタープライズクラスのデータ管理コアデータ消費エンタープライズストレージ市場のより3倍の成長があるだろう占有メモリの割合は、15%から23%まで、さらにエンタープライズストレージ市場に強化構造化データとDBMSのデータをアップグレードします。
クラウドネイティブ、コアエンタープライズアプリケーション/インテリジェンス・アプリケーション、クラウドストレージの使用が上昇を加速し、ネイティブの食材可能なステートフルなアプリケーションを展開します。海外ストレージ巨大EMC、NetAppの抱擁クラウドネイティブ、アクティブレイアウトREX線flexrex、トライデントと他のクラウドストレージネイティブレイアウトプログラム。
Kubernetesクラウドインフラストラクチャは、ネイティブの時代になってきました
、Kubernetesクラウドインフラストラクチャは時間のネイティブになっている中、昨年(2018年から2019年)を超える、より多くのインターネット、国家、企業のコアアプリケーションであり、徐々にクラウドネイティブプラットフォームにKubernetesを移行するデータベース、メッセージキュー、異なりますブロックストレージクラウド上の性能は、スループット及び遅延、および安定性のようなさまざまな要件です。
- ミリ秒の遅延のNVMe SSD安定したレベルは、高性能データベースとKVstoreの需要を満たすために、
- 単一ブロックストレージ密度の課題の密度を高めるためのスタンドアロンアプリケーションの展開に。
- この共有メモリブロック、及び弾性ブロックの分離は、より高いメモリ要件を有しています。
クラウドネイティブ環境では、どのように宣言的に異なるビジネスシナリオを満たすためには、コントロールプレーンとネイティブのクラウドストレージのデータプレーンを達成するための課題となりました。
AIのシナリオ、高性能コンピューティングのインテリジェントなアプリケーションでは、計算は、Kubernetes環境を選択し、完全な作業のトレーニング、計算、推論にクラウドストレージを使用して、Kubernetesクラウドネイティブプラットフォームで展開しようとすると流れ、この雲はに格納されており、挑戦の使用。例えば、生態系のスパークが徐々にKubernetes例えばギャングScheulerネイティブスケジューラへの移行とディスパッチャのHadoop YARNから延長されていることの証拠があります。
単離されたコンピューティングモデルのコストとストレージので、HDFSは依然としてストレージプロトコルのようにして存在するが、ストレージは徐々にHDFSの3つのコピーからオブジェクトストア(OSS、S3)に移行する。GPUマルチマシンカード:クラウドコンピューティング環境でMPIはFLINKフローのKubernetes徐々に計算の主流となっている、コンピューティング、ストレージアクセス方法はまた、複数のオブジェクト・ストレージに提示されます。
しかし、オブジェクトストレージを使用するプロセスでは、大規模なデータ/ AIアプリケーションの計算効率はまだ深刻な課題に直面しています:
- 繰り返し引っ張る同じブロックで生成され、同じノード上のネットワークIOを減らします。
- シャッフル書き込みIOによって生成されたデータを減らします。
- データアウェア・コンピューティングの実現、近くの計算されたデータへの移行を計算します。
それはまた、IOスループットの不足を補うために舞台を提供し、コンピューティング、ビッグデータを加速する上でネイティブのクラウドストレージを提供しますので、現在のKubernetesスケジューラ、およびクラウドストレージ機能には、良い解決策を与えていません。
ビッグデータは、このような遺伝子の計算として計算オフラインKubernetesクラウドネイティブプラットフォームによって、大規模な実行コンピューティングタスクを歩んできました:ファイルストレージのピークを10Gbpsのスループット - 30GBpsピーク剛性の支払いを、それがクラウドネイティブでの配信のファイル保存形式とモードスループット別々高いが必要です進化と環境の変化。
ネイティブクラウド時代のインフラになるためのコンテナサービス
エンタープライズアプリケーション上の雲はますます道のコンテナを使用することを選択していると、コンテナサービスは、徐々に本来のクラウドインフラストラクチャと最高使用クラウドの新たな時代になってきている、ビジネスの成長の異なるクラウド・ベンダーの重要なコンテナサービスとなっています入り口資源。クラウドコンピューティング/クラウドストレージのネイティブクラウドストレージは、それはまた、そこの違いや接続の性質を再考する必要があるストレージとクラウドストレージのネイティブを曇らせ、新しい意味合いを持っています。
ネイティブのクラウドストレージとクラウドストレージを考えます
クラウドストレージVSクラウドネイティブストレージ:
- またはUnified反対?
- 2間のリンク?
- 違いとフォーカス?
= 1のクラウドストレージクラウドストレージネイティブUI、機能の組み合わせのアプリケーション効率のアプリケーション層のための宣言メモリ+
クラウド・ストレージ・ネイティブの6つの要素を宣言しました:
- 容量サイズ。
- IOPS ,,パフォーマンス、スループット、遅延、
- アクセシビリティ、共有/排他;
- IOの観測。
- QoSの。
- マルチテナントの分離。
2.階層型ストレージ、再利用のインフラ配当、車輪の再発明をしていない、ストレージフォームの新しいタイプの一部のためのシフト荷重
効率を達成するための制御プレーン、自律性、最大化貯蔵安定性とセキュリティの能力3.
ネイティブのクラウドストレージ市場
より良い、クラウド環境でクラウドストレージネイティブKubernetesいくつかの主流のエンタープライズ環境での展開だけでなく、クラウドストレージ形式の比較を見てみネイティブのクラウドストレージを構築する方法を理解するには:
- ルークとKubernetesのセファロ
- Portworx
- OpenEBS
ルークとKubernetesのセファロ
セファロはセイジ・ウェイルは、2003年にカリフォルニア州、サンタクルス校で開発され、彼の博士課程のプロジェクトの一部です。セファロLTSは成熟し、安定した、高可用性、クラウド時代とKubernetsで生態系の強力な、緊密に統合ネイティブ。セファロRADOS(信頼性の高い自律分散オブジェクトストア)の高可用性ストレージをもとに、2003年のネイティブクラウド時代のリリース前から、広く高可用性ストレージの生産に配備された、ブロックストレージRBD、ファイルPOSIX Cephfs、アクセスおよびオブジェクトストアの広い範囲をサポートしています合意。
/ SUSEセファロは現在、主要な商業サポーターであるRedHatの、複数のコンテナの場合、着陸プラットフォームは、RBDは、CephFSは、クラウドストレージの基盤の不足を補うために、コンテナの実装のためのプライマリストレージプラットフォームとして採用されています。
ルークは、現在展開し、製品レベルで利用可能な操作と保守スケジューリングツールKubernetesセファロされます。
CRUSHアルゴリズムコアアルゴリズム処理データの冗長性と高可用性、個のOSDのlibradosとデータプレーンを介して直接に上位アプリケーションストレージ完了データのデータプレーンのOSD(RADOS)と制御プレーンMON / RBD / RADOSGW / CEPHFS組成物のCEPH基本アーキテクチャ読み込みと書き込み、スナップショットサポート、バックアップ、のような機能の観測を監視し、RedHatの/ SUSEはまた、別々のクラスタをインストールする機能を提供し、Kubernetes直接ルークを介して出力することができます。
セファロの機能と能力の基本的なアーキテクチャのいくつか:
- コントロールプレーン:MON / RBD / RADOSGW / CEPHFS。
- データプレーン:のOSD(RADOS)。
- スナップショットは、バックアップ、サポートIO監視ストレージのパフォーマンス監視、サポートサーバRBD QoSレートは、機能を制限します。
Portworx
ように配備Portworxコンテナサービスは、各ノードは、PX、様々なパブリッククラウドバットブロックストレージサーバベアメタルまたは下、またはファイル・サービス・ブロックを提供するために呼び出されます。
バインドハードウェアベンダーは、完全なスナップショット(ROW)で、現在Portworx主力クラウド災害復旧機能DR、コピー曇り、任意のパブリッククラウドまたは(のみiSCSIまたはFCプロトコルをサポートするために必要な)自作のサーバクラスタを形成し、アクセスすることができないので、濁っ管理、同期レプリケーション(RTO、秒)非同期複製(RPO <= 15分)、方法Kubernetes CRD、自動的にクラウド能力移行アプリケーションと耐久性とエレガントなクラウドデータによって記述することができます。PXは、独立して、容器がKubernetesネットワークの強い依存性ではなく、展開することができます。
Portworxいくつかの基本的な機能/性能特性:
弾性膨張、自動的PXサーバーノードを識別する能力、動的にIOをスケジュールします
- コントロールプレーン
- メインストリームサポート容器スケジューリングツール:Kubernetes、Mesos、スウォームなど
- IOサポートレベルのパフォーマンス監視
- IOの顔
- 別のノードにデータブロックとメタデータを散乱
- RPCは、キャッシングと高性能を使用しています
- QOS分離:サポートされていません
- 65024 - 基礎となるストレージIOPS(4K)768の特性
- ディレイ(4K):0.58ms - 23MS
- 付加価値機能
- クラウドのための暗号化(三者ホスティングキー、伝送暗号化、ディスク暗号化オフ)、および統合のサポートは、KMSのVaultベンダー
- スナップショット(ROW)、管理濁っ、同期レプリケーション(RTO、第二段階)、非同期複製(RPO <= 15分)
- スケーラビリティ> 1000個のノード、>万巻
- サポートトポロジ対応コンピューティング
OpenEBS
ソフトウェアに基づいてOpenEBS Kubernetes EBSのビルドオープンソース版は、PVを定義しました。様々なローカルディスクなどのメディア、および他のクラウドストレージプールと一元管理。ストレージ・プロトコルとして、iSCSIを使用してください。1つのベンダーのストレージ、理由の柔軟なアクセス・ストレージのさまざまなバインドされていません。また、より多くの、柔軟で軽量な意味で。しかし、強い依存性血管ネットワーク抽象化層が増加OpenEBS層、書き込み動作抽象化層を介して、それぞれが独自のボリュームPVコントローラは、余分なオーバーヘッドを追加し、より柔軟ながら行うが、Portworxと比較することができました、セファロ、性能が比較的大きな欠点。
いくつかの基本的な機能/性能特性OpenEBS:
- コントロール・サーフィス:膨張容器スケジューリングシステムは、超統合をサポート。比較されたブロック、ボリュームの数及び任意のサイズに配置され複数のボリューム、より柔軟。
- 高可用性:各ボリュームは、リアルタイムのデータ同期の複数のコピーを持つことができますが、データの同期は、異なるストレージプール間の同期です。
- スナップショット機能を監視、バックアップ、ストレージのパフォーマンス。
- クラウドネイティブツールとの良好な統合:あなたは、設定するには(などプロメテウス、Grafana、Fluentd、Weavescope、ジャガールクルト、など)クラウドネイティブツールを使用してモニターし、ストレージリソースを管理することができます。
クラウドストレージの理解
RADOS対Pangu
以上の3つのオープンソース/ストレージ会社の比較、より簡単にクラウド・ストレージ・アーキテクチャを理解するために、我々は比較を行うためにPanguの階層化アーキテクチャとセファロストレージを層別化。
セファロデータシートのプロセスに類似しPanguマスター・プロセス、CS(チャンクサーバ)類推セファロのOSDサービスプロセスを置くことができます。
ブロックにクラウド製品類似のセファロRBD格納され、ファイルがRADOSGW、本ストレージブロック/高性能ファイルない製品を対応する一時的に記憶CPFSに格納されたオブジェクトに類似する、カテゴリCephFSに格納されています。
Pangu、Pangu 2.0のアーキテクチャの進化にかつ総合推進し、ユーザーモードTCPネットワークプロトコルスタック、包括的なRDMAストレージ・ネットワークを促進し、完全にRPCのパフォーマンスを最適化、上位製品の保管にも巨大なボーナス基礎となるストレージの変化を楽しんで、入力します。レベルのサブミリ秒の待ち時間、および年齢の百万IOPSは、ネイティブのクラウドストレージは、製品のストレージ階層の最上位になるにバインドされて、あなたはこれらの機能を継承することができます。
クラウドストレージネイティブ差クラウドとパブリッククラウドの専用(プライベート)
ネイティブのクラウドストレージ市場を分析することにより、我々はこれらの店は、共通の特徴を持って見つけることができるAPIの声明のためのサポートで、あなたは品質/安定した上で、多かれ少なかれ、パフォーマンス、容量、および機能の他の側面の測定基準や文を達成することができます/セキュリティは、さまざまなサポートしています。
さらに、容量に格納されている製品の使用を損なうことなく、クラウド直接データプレーンを介してネイティブ負荷、性能、アクセシビリティの容量、マルチテナント制御プレーンは、ユーザ指向のアプリケーションのIO観測、QoSをアプリケーション・レベルを改善し続けますCSI / Flexvolumeに制御プレーンインタフェースを介して分離、ストレージインタフェースは、宣言、及び部分オペレータストレージライフサイクルを提供し、容器の配置と実際の負荷を格納するサービスアプリケーションは、接着剤の文になり、クラウドを使用するより正確であり得ることができるように格納位置。
パブリック・クラウド・ストレージ製品の完全なインフラので、あなたは、保存された製品にアクセスするために、より軽量なデータプレーン(のvirtio、NFS-utilsの、cpfs-SDK、OSS-SDK)を使用することができます。
全く異なる独自のクラウド環境、または全く部分仮想化、仮想環境、SAN、および裸ディスクはCEPHのRADOSが類似またはpangu SDSを達成構築する必要があることにより、主記憶装置であり、その後、データプレーンを介して(librados / PX / PVコントローラ)保存へのアクセスを実現しています。
プライベートクラウドのvSphereの場合は、OpenStackの、近いパブリック・クラウド・ストレージ・モードにあって、構築飛行、しかしため、モジュールの展開の違いの、能力をサポートするコントロール/データプレーンに違いがあります。
それは単に次のとおりです。
- パブリッククラウドクラウドネイティブストレージ=宣言API +クラウドストレージ
- 独自のクラウドクラウドネイティブストレージ=宣言API +ネイティブストレージ
パブリッククラウドクラウドストレージネイティブ
- ストレージ階層化、再利用のインフラ配当金は、車輪の再発明はありません。
- ネイティブのクラウドストレージ
- データの一貫性プレーンを(カーネル/ OS /ネット/クライアント/ SDKのバージョン管理と最適化パラメータ)を向上させます。
- 統合制御プレーンCSI / Flexvolume /オペレータを構築し、顧客指向の文のAPIを提供すること。
- 振り付けのレベルを達成するために、トポロジ対応スケジューリングは、ノード意識ゾーン意識クラウドディスク、ローカルディスクを達成しました。
ブロック・ストレージ
アプリケーション層QoSのローカルディスク内の粒子サイズ、ディスク制御クラウドを強化するために、Aliyun Linuxの2 OSカーネルのcgroupを用いblkio結合することによって、IO制御バッファコントロールプレーンレベルを達成するためのプロセスです。ローカルディスクカット点によってLVMクラウド単一ディスクの密度を高めるために実施されてもよいです。能力IOの観測を収集する測定装置のマウントポイント/ IOインデックスを介し。
ネイティブのクラウドストレージ - 主な特性指標のストレージブロック:
- 容量:単一のディスク32TB
- 遅延:0.2msの - 10msの
- IOPS:5K - 1M
- スループット:300Mbpsの - 4Gbpsの(ローカルのNVMe ESSD:2Gbpsの)
- アクセシビリティ:シングルアベイラビリティゾーン排他的
- QoSの:単一のディスク分離、プロセスの分離
- マルチテナント:孤立単一のディスク
詳細については、以下を参照してください。クラウドディスクパフォーマンス
ファイルストレージ
ポッドセキュリティポリシーとSecuritContextによって制御することができ、コントロールプレーンでは力のアプリケーションUID / GID制御、アプリケーション制御ファイルシステムACLを達成。IOはIOの能力観測を集めるポイントインジケータを搭載測定することで、ファイルシステムのライフサイクルの制御を実現するための制御プレーン。
ネイティブのクラウドストレージ - インデックスファイルの主な機能は保存されます。
- 容量:10PB単一ファイルシステム
- ディレイ:100の微妙 - 10msの
- IOPS:15K - 50K
- スループット:150Mbpsの - 20GBps
- アクセシビリティ:マルチクラスタ共有多くのフリーゾーン
- QoSの:IO競争
- マルチテナント:PSP ACL(名前空間)
CPFS並列ファイルシステム
、ファイルシステム制御プレーンは、QoSのファイルシステムACL制御を実装するクライアントに制限速度宣言型管理オペレータを提供して設定機能のライフサイクルを提供し、さらに、クラウドネイティブ環境で展開宣言型CPFSファイルシステムを実現するために。
ネイティブのクラウドストレージ - 高性能なファイル・ストレージ・インデックスの主な機能:
- 容量:単一ファイルシステム100PB
- 遅延:0.5msの - 10msの
- IOPS:50K - 1M
- スループット:10Gbpsの - 1000GBps
- アクセシビリティ:マルチクラスタ共有多くのフリーゾーン
- QoSの:サポートクライアントの制限速度
- マルチテナント:PSP ACL(名前空間)
概要:クラウドネイティブストレージV1 - 機能
今日のクラウドストレージ出身のアリクラウドにも、システム・レベルの最適化とクライアント層のほとんどを完了し、データプレーンに保存されている製品の全カテゴリをサポートするために、制御プレーン/コントロールプレーンインターフェイスに達成されています。しかし、コンテナの永続性のエンタープライズアプリケーションとインテリジェントな多数のアプリケーションの移行と、我々はまだ多くの問題や課題に直面しています。
ネイティブストレージクラウド時代を作成するために一緒に、全体のクラウドストレージネイティブV1の開発プロセスでは、ファイルストレージにおけるアリクラウドストレージへのチームのおかげで、ブロック・ストレージおよびオブジェクトストアの協力と支援。
モビリティのためのネイティブアプリケーションの雲、および動的特性を拡張することができるように、クラウドストレージネイティブ密度要件、速度、混合の度合いを対応もたらすので、クラウドストレージ容量の上部は、実質的に効率を提案しています、柔軟性、自律性、安定性、アプリケーションの要求と低カップリング、GuestOSの最適化、セキュリティ、および他の側面。クラウドストレージ遭遇したパフォーマンス、柔軟性、高可用性、暗号化、隔離に移動し、新たな企業のワークロード/コンテナのインテリジェントワークロードは、観測の問題、ライフサイクルなどに、ストレージ製品のレベルを改善する必要性だけでなく、することができより多くのクラウドネイティブ/データプレーンの制御を改善し、クラウドネイティブストレージv2の見通しと計画しているクラウドネイティブストレージとクラウドストレージの進化を推進する必要があり、我々は今後の記事では、これらの新しいシーンを明らかにし、ニーズ、プログラムそして、開発の方向。
「アリババクラウドネイティブマイクロチャネルパブリック番号(ID:Alicloudnative)フォーカスマイクロサービスで、サーバレス、コンテナ、サービスメッシュ及び他の技術分野は、クラウドネイティブで人気の技術動向を中心に、ネイティブの大規模な着陸の練習を曇らせるは、ほとんどのクラウドネイティブ開発を理解してください技術公衆番号。」