クラウドのために生まれた「クラウド ネイティブ」が、なぜますます重要になっているのでしょうか?

クラウドのために生まれた「クラウド ネイティブ」が、なぜますます重要になっているのでしょうか?

[[343634]]

IT の歴史には古典的な物語があります。 1943 年、IBM の会長であるトーマス・ワトソン・シニアは、将来的には 5 台のコンピューターで世界市場を満足させるのに十分になると自信を持って語りました。

今では、ワトソン博士の予言の半分が実現していることがわかっています。世界は「5台のコンピュータ」に向かって進化しています。もちろん、ワトソン氏はクラウド コンピューティングの到来を予見していたわけではなく、世界でコンピューターが使用されている場所はそれほど多くないと本気で信じていただけであることもわかっています。

今日、クラウド コンピューティングはあらゆるところに存在し、デジタルの世界が私たちの居場所となっています。近年、クラウドコンピューティングの分野では「クラウドネイティブ」という概念がホットワードになっています。かつて、起業家たちは「あなたのビジネスはクラウド上で行われていますか?」と尋ねたかもしれません。しかし現在、多くの起業家は質問を「あなたのビジネスはクラウド上で行われていますか?」に変えています。

ガートナーのレポートでは、2020 年までに従来の時代遅れのアプリケーションの 50% がクラウドネイティブな方法で変換され、2022 年までに世界の企業の 75% がクラウドネイティブのコンテナ化されたアプリケーションを本番環境で使用すると指摘されていました。企業がクラウドに移行するにつれて、ますます多くの企業や開発者がビジネスとテクノロジーをクラウド ネイティブに向けて進化させ始めています。

では、「クラウド ネイティブ」とは何でしょうか? 「クラウドネイティブ」がますます重要になっているのはなぜでしょうか?私たちは、「クラウド ネイティブ」の概念とそれが表す全体的な技術的アイデアを整理し、「クラウド ネイティブ」がどのような技術的利益をもたらすことができるかを確認したいと考えています。

クラウドネイティブとクラウドネイティブアプリケーション

「クラウド ネイティブ」は、Cloud Native の直訳です (実際にはネイティブ クラウドと呼ぶ方が便利です)。詳しく言えば、クラウドとは、アプリケーション ソフトウェアが従来のデータ センターではなくクラウドにあることを意味します。ネイティブとは、アプリケーション ソフトウェアが最初からクラウド環境に基づいており、クラウドの特性に合わせて特別に設計されていることを意味します。クラウド プラットフォームの弾力性と分散性の利点を最大限に活用して、クラウド コンピューティングの生産性を最大化できます。

テクノロジーは常にコンセプトよりも優先されます。 「クラウド ネイティブ」という概念が正式に提案される前から、企業ではクラウド ネイティブの実践がすでに存在していました。たとえば、Google は 2004 年にコンテナ テクノロジの使用を開始し、2006 年に開始されたプロセス コンテナは「クラウド ネイティブ」の特性を備えた技術的な実践です。

業界で認知されている「クラウド ネイティブ」という概念は、2013 年に Pivotal の Matt Stine 氏によって初めて提案され、それ以来使用され、開発されてきました。

Matt は、クラウド ネイティブを、DevOps、継続的デリバリー、マイクロサービス、アジャイル インフラストラクチャ、Twelve-Factor App などのクラウド コンピューティング テクノロジーと開発管理方法の集合体として理解しています。

したがって、クラウド ネイティブは最初からテクノロジーや製品ではなく、体系的な方法論とテクノロジーの集合体です。 「クラウド」の特性を満たすアプリケーション、または「クラウド」向けに特別に設計されたアプリケーションのみをクラウド ネイティブ アプリケーションと呼ぶことができます。

アプリケーションがクラウド ネイティブ アプリケーションであるかどうかを判断するには、ネットワーク アクセス、リモート展開、スケーラビリティと柔軟なスケーリング、共有、オンデマンド セルフサービス、高可用性、リモート監視、課金と監査、標準化された配信と場所の独立性など、「クラウド」の特性を備えているかどうかを調べる必要があります。厳密に言えば、Matt が提案した「12 の要素」は、クラウド ネイティブ アプリケーションを判断する基準として使用でき、そのうち最も重要なものは次のように要約できます。

1. 弾力性:弾力性コンピューティングは、クラウド コンピューティングの中核機能であり、クラウド ネイティブ テクノロジーのコンテナーの重要な機能です。クラウド ネイティブ アプリケーションの弾力性には、アプリケーション リソースの使用の弾力性と、アプリケーション インスタンスの弾力的な拡張の弾力性が含まれる必要があります。単一のインスタンスがリソース拡張のボトルネックに遭遇した場合、負荷分散メカニズムを使用してコンテナ インスタンスの弾力的な拡張を実現できます。

2. 共有:クラウド コンピューティングは、IaaS、PaaS、SaaS の 3 つのタイプに分類できます。それぞれ、リソース共有、プラットフォーム共有、アプリケーション共有を実現します。クラウドネイティブ アプリケーションは、IaaS または PaaS レイヤーにデプロイされ、SaaS レイヤーを通じてオープン サービスを提供します。

3. 自律性:クラウド ネイティブ アプリケーションは標準に従って配信される必要があり、標準をサポートするクラウド内の任意の場所に展開できます。これにより、場所や環境に依存しなくなります。同時に、アプリケーションの構築に必要な依存パッケージ、構成ファイル、バックエンド サービスがアプリケーションに統合され、自律的な管理が実現されます。コンテナを使用する利点は、アプリケーションを標準化されたイメージの形式で配信および実行できることであり、マイクロサービスを使用してクラウドネイティブ アプリケーションを実装することも、この自律性の原則に沿っています。

4. オンデマンド サービス:クラウド アプリケーションはクラウドに展開されます。お客様は、クラウド アプリケーション管理者に連絡することなく、インターネット経由でアプリケーションにアクセスし、ニーズに応じて自らサービスを利用できます。通常、クラウド アプリケーション サービス カタログが存在します。各アプリケーションサービスには使用手順があります。サービス カタログを通じて、ニーズに合ったアプリケーションを見つけることができます。

さらに、高可用性、俊敏性、監視可能性、監査可能性、構成可能性などの機能もクラウドネイティブ アプリケーションの重要な特性ですが、ここでは詳細には触れません。

つまり、クラウド ネイティブは、クラウド コンピューティングを従来の IT アーキテクチャと区別する基本的な機能であり、クラウド ネイティブ アプリケーションは、クラウド コンピューティングの主流のサービス形式になりつつあります。クラウドネイティブのテクノロジーと管理方法に基づいて生成されたアプリケーションを採用することで、企業は「クラウドコンピューティング」が提供する安定した効率的なサービスを継続的に享受できます。

クラウド ネイティブ アプリケーションの価値について説明する前に、まずクラウド ネイティブ アプリケーションで使用される主なテクノロジーについて簡単に見てみましょう。

クラウドネイティブテクノロジーは進化している

クラウドネイティブの概念が提唱された2013年に、Dockerが正式にリリースされました。 Docker の PaaS プロバイダー DotCloud は、開発者がアプリケーションをコンテナーにパッケージ化して公開できるように、LXC に基づく高度なコンテナー エンジンをオープンソース化しました。開発者にとって、Docker はコンテナ船を使って商品を輸送するようなものです。非常に効率的で、仮想マシンよりも展開の柔軟性に優れています (コンテナはコンテナのようなものです)。リリースされると、非常に人気のあるオープンソース コンテナ公開ツールになりました。

翌年、Google によって K8s (Kubernetes) プロジェクトがリリースされました。コンテナと Docker の誕生後、開発者は当然、これらのコンテナとコンテナ化エンジンを管理するためのツールを必要としています。 K8s は、クラウド プラットフォーム内の複数のホスト上のコンテナ化されたアプリケーションを管理するために使用され、コンテナ化されたアプリケーションの展開をシンプルかつ効率的にします。 K8s もオープンソースであるため、リリース後非常に人気を博しています。

2015 年、Google、Red Hat、Microsoft などの大手クラウド コンピューティング ベンダーといくつかのオープン ソース企業が共同で CNCF Cloud Native Foundation を設立しました。 CNCF が最初に設立されたとき、創設メンバーは 22 名で、K8s は CNCF がホストする最初のオープンソース プロジェクトとなりました。 CNCF の目標は、ベンダー中立のオープンソース エコシステムを育成し、維持して、クラウド ネイティブ テクノロジーを促進することです。

2018 年に CNCF は「クラウド ネイティブ」を定義し、コンテナー、サービス メッシュ、マイクロサービス、不変インフラストラクチャ、宣言型 API などの代表的なテクノロジを示しました。コンテナ技術の普及に伴い、Docker はコンテナをポータブル、軽量、仮想化、言語非依存にし、コンテナ技術の使用ハードルを大幅に下げました。 K8s は、コンテナ船の船長のように、コンテナのリリースを調整し、コンテナ オーケストレーションのフルサイクル管理を解決するスチュワードに相当します。まさにこの機能のおかげで、K8s はクラウド上のアプリケーションの移植性などの問題を解決し、クラウド ネイティブ テクノロジーの基礎となりました。

(K8s アーキテクチャ)

マイクロサービスとは何ですか?マイクロサービスをシステムとして展開する従来のモノリシック アーキテクチャとは対照的に、マイクロサービス アーキテクチャは、ユーザーが認識できる機能の最小セットである独立したコンポーネントとして展開されます。マイクロサービスは小規模かつ特化されているため、開発、テスト、更新の効率が向上し、俊敏性が実現します。機能的な観点から見ると、マイクロサービスは Docker のパートナーとなり、ビジネス プロセスをオンデマンドで調整し、リアルタイムで展開できるようになります。

サービス メッシュとは、サービス間の通信を処理するために使用されるインフラストラクチャ層を指します。これは、マイクロサービスの接続、管理、監視における K8s の欠点を解決し、K8s のより優れたアプリケーションおよびサービス管理を提供し、マイクロサービスの補助技術になります。以前の可変インフラストラクチャと比較して、不変インフラストラクチャは一貫性と信頼性が高く、展開プロセスがよりシンプルで予測可能であるため、クラウドネイティブ アプリケーションの運用と保守のための信頼性の高いインフラストラクチャになります。宣言型 API は、k8s のコーディング方法として理解できます。

これらのテクノロジーは、現在のクラウドネイティブ アプリケーションで使用される主要なツールになっています。もちろん、クラウド ネイティブの技術的な境界とツール セットは常に変化し、更新されていることもわかります。これらの機能やツールの開発に基づいて、クラウドネイティブ アプリケーションは、インターネットの巨人が導入して採用しているアプリケーション手法になりつつあり、また多くの中小企業や開発者が選択するアプリケーション開発手法にもなりつつあることがわかります。では、クラウド ネイティブ テクノロジーがますます重要になっているのはなぜでしょうか。また、クラウド ネイティブ アプリケーションはどのような価値を生み出しているのでしょうか。

クラウドネイティブ、企業のデジタルアップグレードのための新たな生産性

クラウド ネイティブの価値についての質問に答える前に、まず企業がクラウドでアプリケーションを開発し、クラウド ネイティブ テクノロジーを選択すべき理由を考えてみましょう。

これには、開発、IT 運用、品質保証を個別に独立して設定する従来の IT アーキテクチャ手法が含まれます。開発と運用の間には情報の「ギャップ」があります。開発者はインフラストラクチャの応答速度の向上を望み、オペレーターはシステムの信頼性とセキュリティを要求します。ビジネス上の要求は、より多くの機能をエンドユーザーに迅速にリリースすることです。 「ウォーターフォールプロセス」と呼ばれるこの開発モデルは、上流開発者と下流開発者の間に情報の非対称性を生み出し、開発サイクルを長期化させ、調整の難易度を高めます。

しかし、ユーザーの需要が急増し、製品の反復サイクルが継続的に短縮されたため、元の開発プロセスでは実際のニーズを満たせなくなりました。このとき、エンジニアはアジャイル開発という新しい開発モデルを導入しました。しかし、アジャイル開発はソフトウェア開発の効率やバージョン更新速度の問題を解決するだけで、運用や保守とはまだ結びついていません。

開発と運用・保守の「情報の対称性」問題を調整するために、開発者は DevOps という新しい方法を導入しました。 DevOps は、開発、技術運用、品質保証の交差点として考えることができます。これにより、チーム間のコミュニケーション、コラボレーション、統合が促進され、開発サイクルと効率が向上します。

最終的に実現されるのは、ソフトウェア製品の出力プロセスを短いサイクルで完了させ、いつでもリリースできる状態でソフトウェアを安定的かつ継続的に維持できる「継続的デリバリー」です。

コンテナやマイクロサービスなどのクラウドネイティブ テクノロジーは、DevOps に優れた前提条件を提供し、IT ソフトウェア開発で DevOps 開発と主要アプリケーションの継続的な配信が確実に実装されるようにします。言い換えれば、DevOps と継続的デリバリーを実装する能力は、クラウドネイティブ テクノロジーの価値の不可欠な部分となっています。そのため、ますます多くのインターネット大手企業、中小規模のアプリケーション開発会社、個人がクラウドネイティブのテクノロジーとツールを選択しています。

クラウドネイティブテクノロジーがエンタープライズアプリケーション開発にもたらす技術的価値は、エンタープライズIT開発と運用・保守のコストを直接的に大幅に削減し、それによって企業のビジネスのイノベーション効率と産業価値を向上させることができます。

外部の世界にとって、最も直感的な感覚は、休暇前に12306でチケットを購入する際にシステムクラッシュに遭遇することがなくなり、一部の管理ウェブサイトの体験もそれほど悪くなく、ショッピングフェスティバルのトラフィックピーク時にページが遅延したり更新されなかったりすることはほとんどなく、大規模なオンラインライブ放送やゲームの体験も非常にスムーズであるということです。こうした大量の同時トラフィックは、時には数億にも達しますが、すべてクラウドネイティブ テクノロジーの急速で弾力的な拡張によって可能になります。

企業にとって、クラウドネイティブテクノロジーを選択することは、コストの削減と効率性の向上を考慮するだけでなく、これまでは想像もできなかった企業のビジネス能力を生み出すこともできます。企業のビジネス規模とビジネス革新のために、クラウドネイティブ テクノロジーは新たな生産性向上ツールになりつつあります。

これまで企業が重視してきたオフィスビルや工場、IT 設備などの有形資産は、クラウドベースのデジタル資産によって徐々に重要性が上回ってきました。企業はクラウドネイティブを通じてまったく新しいデジタルツインシステムを構築しており、これこそがクラウドネイティブテクノロジーの真の価値です。

クラウド コンピューティング業界全体の発展にとって、クラウド ネイティブは以前の仮想マシン段階とは異なり、新たな技術生産性変革も完了しています。現代のエネルギー革命で経験した水、石炭、電気の変化がエネルギー放出の密度と産業の規模を桁違いに飛躍させたのと同じように、クラウド ネイティブもクラウド テクノロジーのアプリケーション特性と配信アーキテクチャの革新的な組み合わせであり、クラウド コンピューティングの生産能力を大幅に発揮することができます。

また、クラウドネイティブ革命は当初からオープンソースエコシステムと自然に歩調を合わせて進んできました。つまり、クラウドネイティブ技術は当初から「フライホイール進化」の道を選び、技術の使いやすさとオープン性によって急成長の好循環を実現し、応用事例の増加によって企業のビジネスの完全なクラウド移行と自社の技術環境の継続的な改善を促進してきました。

もちろん、企業ビジネスの包括的なクラウドネイティブ変革は一夜にして達成できるものではありません。企業ビジネスの技術アーキテクチャ変革は、従来の仮想マシンモデルでの運用・保守習慣、既存のIT資産の切り替え、人員の考え方や管理方法の変化など、依然として多くの課題に直面しています。しかし、クラウドネイティブがもたらすさまざまなメリットと、企業の将来のビジネス展開に対するその利点は、多くの企業の間で新たなコンセンサスとなっています。

この一連のクラウドネイティブ変革の痛みを経験した後、より多くの企業が会社の本来の成長サイクルを乗り越え、デジタル経済の新しい軌道に飛び込み、来たる完全なクラウドベースのデジタル時代をより良く生きることができるようになると予測できます。

<<:  「分散トレースシステム」の原理を一挙解説!

>>:  H3Cと安徽電信が共同でTianyi Security Brainをリリースし、中小企業向けの統合セキュリティSaaSサービスを提供

推薦する

動画サイトのSEOプロモーション手法を探る

映画を検索すると、無数の動画ウェブサイトが見つかります。特に動画サイトがもたらすトラフィックは相当な...

電子商取引代理業が新たな資本の出口となり、今後3年間で上場企業を見ることは困難

電子商取引分野における資本配置が、中核のB2C企業から電子商取引周辺サービス産業にまで拡大している事...

ウェブサイトの最適化と SEO における div css の利点

最近、CSS DIV を使用して Web サイトを構築する友人が増えています。今日は、div css...

.NET マイクロサービス アーキテクチャの実践: 概念から展開までの包括的なガイド

ソフトウェア システムが成長し、複雑になるにつれて、マイクロサービス アーキテクチャはその柔軟性、ス...

shuhost: 香港サーバー、月額 242 元、e3-1230v2/16G メモリ/1T ハードディスク、15M 帯域幅 (オプションの Huawei、CN2+BGP、中国本土最適化 BGP)

端午節を記念して、shuhost は中小企業と個人のお客様向けに特別プロモーションを準備しており、香...

病院のウェブサイトのユーザーエクスペリエンスを向上させる方法

ほとんどの医療監督者は、プロジェクトの運営中にウェブサイトが頻繁に修正されることを知っています。ポリ...

クラスターノードの弾性スケーリング

弾性スケーリングには主に 3 つの側面があります。 HPAは使用率に基づいてポッドの数を自動的に調整...

K8s クラスター容量 - kluster capacity

背景コンテナ プラットフォームの 3 つの価値、つまり安定性、効率性、コストはすべて容量管理に依存し...

インターネット大手がクラウドコンピューティングをめぐって競争

戦いは雲の上、そこでは孤独だ。 11月22日、アマゾンは国防総省との100億ドルの契約をめぐって米国...

emlogウェブサイト構築の長所と短所の分析

多くのウェブマスターにとって、よく知られているwpやzblogに加えて、emlogブログも徐々に人々...

キーワード分析: Baidu の需要グラフを調べてキーワードをマイニングする

2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っていますキーワード...

アトランティック - $0.99/KVM/256m メモリ/10Gssd/1T トラフィック/G ポート/3 データセンター

Atlantic、この老舗 IDC が業界の超衝撃ニュースを明かしました。KVM と SSD ハード...

NGINX App Protect 5.0 は、NGINX オープンソースに最新のアプリケーション セキュリティをもたらします

最近、F5 NGINX は、新しくアップグレードされた NGINX App Protect 5.0 ...

Pinduoduoがコミュニティグループ購入に正式に参入

インターネットは包囲された都市のようなものです。実店舗の小売業者はオンライン ビジネスを行おうとして...

hosthatch-$30/年/KVM/1.5G メモリ/10g SSD/500g トラフィック/ロサンゼルス

Hosthatch は新しい VPS (KVM 仮想化、ハードディスク RAID-10 NVMe S...