サーバーレス アプリケーション ホスティングは企業のイノベーションの加速を支援します

著者: シオン・フォン

クラウドネイティブ時代のサーバーレスアプリケーションホスティングアーキテクチャ

過去 10 年間を振り返ると、デジタル変革は技術革新とビジネス要素を継続的に統合および再構築し、新しいビジネス モデルの下で成長の極を再定義してきました。ビジネスは、偉大な産業の時代の確固たるパラダイムから、革新的なビジネス組織と新しいビジネス種のための全く新しいモデルへと進化しています。中国のさまざまな業界で広範かつ徹底したデジタル変革が進む中、業界大手も中小企業も零細企業も、デジタル変革によってもたらされる未知の機会と課題に直面しなければなりません。

—— 「Alibaba Cloud クラウドネイティブ アーキテクチャ ホワイト ペーパー」

ここに画像の説明を挿入

近年、従来型企業のクラウド移行のペースは加速しており、企業発展にとってクラウド移行は徐々に避けられない選択肢となってきていると言えます。このプロセスにおいて、クラウド ネイティブは、オープンで標準的な技術システム、柔軟性が高くフォールト トレラントで管理が容易なシステムの機敏な構築と運用を通じて、企業がクラウド機能を最大限に活用し、クラウドの価値を最大化するのに役立ちます。そしてより多くの企業や業界がクラウドネイティブを採用し始めています。クラウド ネイティブは、ソフトウェア テクノロジ スタックとライフ サイクル全体を再構築するだけでなく、企業がクラウドに移行する方法も再構築すると言えます。

ここに画像の説明を挿入

クラウド ネイティブの概念は、その導入から成長、そして今日の普及に至るまで、継続的な進化と革新の過程にあります。クラウド ネイティブ システムでのアプリケーションのホスティング形式は、エンタープライズ アプリケーション アーキテクチャとともに常に進化しています。

初期のアプリケーションのほとんどは集中化されたモノリシックであり、アプリケーションはエレガントな階層化を通じてドメイン モデルの共有とより詳細なモジュール分割を実現しました。インターネットの爆発的な発展に伴い、分散型アーキテクチャが徐々に集中型アーキテクチャに取って代わりました。

コンテナの出現と普及により、コンテナ スタイルのパッケージング、標準化された開発、運用保守を通じて、大規模な言語を超えた分散アプリケーションが現実になりました。クラウドネイティブ アプリケーション ホスティング アーキテクチャは、コンテナ化という最初の飛躍をもたらしました。

その後、マイクロサービス アーキテクチャが大規模に普及し、企業が運用および維持する必要があるインフラストラクチャはますます複雑になり、管理する必要があるコンテナの数は幾何級数的に増加しました。一方では、Kubernetes は IaaS 層のインフラストラクチャの違いを保護し、その優れた移植性により、データセンター、クラウド、エッジ コンピューティングなどのさまざまな環境でアプリケーションを一貫して実行できるようにします。

一方、Kubernetes は、優れたオープン性、スケーラビリティ、活発な開発者コミュニティにより、大規模なコンテナ オーケストレーションの戦いで際立っており、分散リソースのスケジューリングと運用と保守の自動化の事実上の標準となっています。クラウド ネイティブ アプリケーション ホスティング アーキテクチャは、Kubernetes を完全に受け入れるという第 2 の進化の先駆けとなりました。

Kubernetes は多くのメリットをもたらしてきましたが、ほとんどの企業にとって、本番環境に Kubernetes を実装し、システムの安定性、セキュリティ、スケールの拡大を継続的に確保するには、依然として課題が山積しています。この文脈で、Nodeless Kubernetes が注目を集めています。Kubernetes の完全な機能を維持することに基づいて、複雑な運用と保守、および容量管理の作業がクラウド インフラストラクチャ ベースにダウングレードされます。これまでのところ、クラウド ネイティブ アプリケーション ホスティング アーキテクチャは第 3 段階であるサーバーレス Kubernetes を迎えています。

サーバーレス Kubernetes により、企業における Kubernetes の運用と保守の負担は大幅に軽減されましたが、Kubernetes 自体の複雑さと急峻な学習曲線は依然として困難を極めています。ユーザーのアプリケーションを Kubernetes 上で実行させる方法は、Kubernetes の配当によってもたらされる多くのテクノロジーを享受できるだけでなく、それらを可能な限りゼロにできるかどうかも、早急に解決すべき課題となっています。これに基づいて、クラウド ネイティブ アプリケーション ホスティング アーキテクチャが第 4 段階であるサーバーレス アプリケーション ホスティングを迎えました。

後の 2 つのモードは、今日注目するサーバーレス アーキテクチャおよび形式です。では、サーバーレスとは​​一体何なのでしょうか? さまざまな組織がさまざまな観点からさまざまな表現や定義を行っていますが、ここでは最も影響力のある 2 つの定義を選択します。

ここに画像の説明を挿入

バークレーのサーバーレス論文では、サーバーレス コンピューティング = FaaS + BaaS であると考えられています。サーバーレス アプリケーションとみなされるには、アプリケーションが使用量に基づいて自動スケーリングと課金を実現できる必要があります。

CNCF は次のように考えています。 サーバーレス コンピューティングとは、サーバーの運用や保守管理を必要とせずにアプリケーションを構築および実行することを指します。これは、アプリケーションが複数の機能モジュールにパッケージ化されてプラットフォームにアップロードされ、現在の正確なニーズに応じて実行、スケーリング、および請求が行われる、きめの細かい展開モデルについて説明しています。

視点や表現は異なりますが、注意深い読者であれば、オンデマンドの使用法、従量課金制 (コスト)、O&M フリー (効率性)、自動スケーリング (弾力性) などの共通キーワードをすぐに抽出できます。その本質は、企業の限られたリソースとエネルギーを複雑なインフラストラクチャの運用と保守から解放し、自社の中核となるビジネス ロジックに投資して集中することです。

ここに画像の説明を挿入

ここでは、サーバーレスとは​​何かを理解するために、車の購入、レンタカー、オンライン配車を比較します。

企業の自己保守サーバーは、自家用車を購入するようなもので、莫大なリソース コスト (車の購入) と運用保守コスト (自動車保険、メンテナンス) を支払っていますが、収容能力は固定されており (座席数は限られています)、それらの多くは通常 (運転していないとき) アイドル状態であり、依然としてコストがかかります)。

企業が自社の業務システムを構築するためにクラウドホストを購入するのはレンタカーのようなもので、長期間柔軟にリースできるものの、拡張や縮小が比較的面倒で、遊休コストも削減されているものの、依然として存在している。

サーバーレス時代は、オンラインの配車サービスのようなもので、従量課金制で、負荷に基づいて自動的に柔軟にスケーリングされ、基本的にアイドルコストは発生しません。

ここに画像の説明を挿入

サーバーレスとは​​何かを理解した後、サーバーレス アプリケーション ホスティングによってアプリケーションの運用と保守がどのように容易になり、リソースの使用率が向上し、企業のコスト削減と効率の向上にどのように役立つかを見てみましょう。私たちはこの問題を 3 つの観点から考察します。

  • 運用保守モデルは、人手による運用保守からクラウドプラットフォームが主な責任を負う運用保守モデル、さらにクラウドプラットフォームが全責任を負う無償の運用保守モデルへと徐々に進化してきました。
  • リソース利用率は、当初のピーク調達による極めて低いリソース利用率から、ノードスケーリングによるある程度の利用率向上へと段階的に進化し、ビジネスのピーク変動に完全にマッチしたオンデマンド利用へと進化しました。
  • 資源コストは、固定費支出から、資源の水位に基づく柔軟な支払い、および要求ベースの支払いモデルへと進化しました。

Serverless Application Engine (SAE) 2.0 の新しいアップグレード

上で説明したアーキテクチャと機能の要件を組み合わせ、Alibaba Cloud のクラウドネイティブのサーバーレス製品マトリックスに対応するAlibaba Cloud Serverless Application Engine (SAE) は、ワンストップでフルマネージド、O&M 不要の、非常に柔軟なサーバーレス アプリケーション ホスティング プラットフォームです。コード変更が不要で、操作が簡単で、適応性のある弾力的な特性を備えたアプリケーションホスティングプラットフォームを実現できます。

SAE プラットフォームでは、ユーザーは複雑なインフラストラクチャの問題について心配する必要がなく、コード パッケージまたはコンテナ イメージをアップロードするだけでオンライン サービスを完全に管理できます。SAE は、アプリケーションの操作とエラスティック インスタンスの調整を自動的に担当し、ネットワーク、負荷分散、監視などの思慮深い補助機能も提供します。

ここに画像の説明を挿入

Kubernetes インフラストラクチャに基づいた SAE はアプリケーション中心であり、マイクロサービス エンジン MSE エージェントが組み込まれており、マイクロサービス機能の完全なセットを提供し、SAE+MSE に代表されるサーバーレスのベスト プラクティスを形成します。オープンソースを 100% 受け入れ、オープンソースに還元することを達成できます。クラウドネイティブのサーバーレス マイクロサービスのこのベスト プラクティスに基づいて、開発効率を 70% 向上させ、コストを 60% 削減できます。

ここに画像の説明を挿入

SAE は、豊富な弾性指標と柔軟な弾性戦略を提供します。

  • モニタリング指標の弾力性:従来の CPU およびメモリ指標に基づいて、QPS、RT、TCP 接続数などのビジネス指向の弾力性指標が追加されています。
  • タイミングの柔軟性:拡張/縮小時間を設定するための白い画面のタイミングと、インスタンスの数を拡張/削減する機能を提供します。
  • ハイブリッド弾力性:タイミング弾力性とインデックス弾力性の混合に基づく弾力性戦略。モニタリング インジケーターの柔軟性に基づいて、タイミングの柔軟性またはモニタリング インジケーターの弾力性をさまざまな期間で調整するための強化されたソリューションとして、タイミングの弾力性が一定期間のトラフィック ピークに重ねられます。

ここに画像の説明を挿入

SAE は、開発状態から導入状態、運用および保守状態に至るまでのプロセス全体を完全にカバーする、効率的な閉ループ DevOps システムを提供します。

  • オープンソースの Jenkins とのシームレスなドッキング:組み込みの Maven プラグインを介して、ソース コードからビルド、展開全体に至るまでの完全なプロセスを完了できます。War パッケージ、Jar パッケージ、イメージ展開などのいくつかのモードをサポートできます。
  • クラウド上で最も完全な CI/CD ソリューション: Jenkins との違いは、コードをクラウド上で直接ホストできることと、コードのホスティングがクラウド効果によって完了できることです。また、コード側でセキュリティ管理を実現し、パイプラインをカスタマイズし、構築と実行のための完全で一貫した環境を提供することもできます。比較的充実した機能を備えており、一般的に中規模企業に適しています。
  • 最も軽量で使いやすい CI/CD ソリューション:コンテナー イメージ サービスを通じて SAE をデプロイします。その軽量さは、WebHook を通じてコード ウェアハウスをオープンし、コンテナー イメージ サービス上でミラーとトリガーを構築するためのいくつかのルールをカスタマイズし、コードが送信されたときに自動的に構築してデプロイすることにあります。エンタープライズ レベルのコンテナー イメージ サービスを使用する場合は、イメージ セキュリティ スキャン、脆弱性対策、およびグローバル マルチドメイン配布機能も実装できます。

ここに画像の説明を挿入

SAE は、WebShell、ログ収集、イベントなどの一連のシンプルで効率的な運用および保守機能を提供し、包括的な可観測性機能と包括的な権限管理、アカウント配布、その他のエンタープライズ レベルの機能を提供します。

ここに画像の説明を挿入

最近、SAE は新しいアップグレード 2.0 をリリースしました。これには 3 つの新しいアップグレードが含まれています。

  • まず、製品の使用がより簡素化され、アプリケーションを変更せずに起動できるため、使用プロセスに学習コストがかからず、アプリケーションの作成と公開には数秒しかかかりません。さらに、使用した分だけ支払うことで、アプリケーションのコストを 40% 以上削減できます。
  • 第 2 に、SAE2.0 標準はよりオープンであり、コンテナ標準を使用して構築されており、コア機能もオープンソース化され、R&D と O&M の効率を 50% 向上させるのに役立つ豊富なプラットフォーム エンジニアリング機能が提供されます。
  • 最後に、エラスティック機能も継続的に強化されており、SAE2.0 では 100 ミリ秒のエラスティック スケーリング機能を実現し、トラフィックに応じてリソース使用量を自動的に調整し、アプリケーションのコールド スタート効果を最適化し、インスタンスの 0 への削減もサポートしています。ビジネストラフィックの場合、料金は発生しません。これらの特徴により、新興企業や革新的なスタートアップにとってより親しみやすいものとなっています。

現在、SAE 2.0 は包括的なパブリック ベータ版を開始しており、どなたでもお試しいただけます。

参考文献:

1. https://developer.aliyun.com/ebook/6958?spm=a2c6h.14164896.0.0.149460cexwsCk2

2. https://zhuanlan.zhihu.com/p/137215790

3. https://github.com/cncf/wg-serverless/tree/master/whitepapers/serverless-overview

https://developer.aliyun.com/article/1136342

5. https://developer.aliyun.com/article/933307?utm_content=m_1000345005

サーバーレス アプリケーションを展開するための SAE の無料トライアル エクスペリエンスを受け取るには、ここをクリックしてください

おすすめ

転載: blog.csdn.net/alisystemsoftware/article/details/132366643