クラウドネイティブを解読する: エンタープライズクラウドの未来

クラウドネイティブを解読する: エンタープライズクラウドの未来

[51CTO.comからのオリジナル記事] 共有、俊敏性、革新は、インターネット時代の企業情報化構築における最大の変化です。近年、エンタープライズクラウドの開発は本格的な段階に入りました。新しいアプリケーションと古いアプリケーションの両方を考慮するか、新しいアーキテクチャ プラットフォームに基づいて次世代のアプリケーションを再構築するかは、検討しなければならないトピックです。

ほとんどの企業にとって、IT には歴史的な負担がつきものです。元の IT アプリケーション展開モデルはサイロベースであるため、異なるアプリケーションが異なるソフトウェア開発者によって提供され、システム間でネットワーク セキュリティが分離され、システム間に協力関係が存在します。ネットワークとアプリケーションのトポロジは非常に複雑です。企業の IT をクラウドに移行することは体系的なプロジェクトです。クラウドが提供する仮想マシン、ネットワーク、ストレージの特性に応じて、元のアプリケーションを変換する必要がある場合があります。 「元の物理マシン構成はどのようなものだったか、仮想マシン構成はどのようなものだったか、元のアプリケーション アーキテクチャはどのようなものだったか、クラウド移行後のアーキテクチャはどのようなものだったか」という単純な移行アプローチは選択肢ではありません。実際には、これによって「クラウドに移行する」という利点が完全に失われます。単にクラウドに移行することだけを目的としてクラウドに移行するという慣行を防ぐ必要があります。

クラウド ネイティブとは、クラウド コンピューティング配信モデルを最大限に活用し、クラウドの特性により自然に適合するアプリケーションを構築および実行するアプローチです。クラウド ネイティブは、Matt Stine 氏が提唱した概念です。 DevOps、継続的デリバリー、マイクロサービス、アジャイルインフラストラクチャ、コンウェイの法則、ビジネス能力に応じた企業の再編など、さまざまなアイデアをまとめたものです。クラウド ネイティブには、テクノロジー (マイクロサービス、アジャイル インフラストラクチャ) と管理 (DevOps、継続的デリバリー、コンウェイの法則、再編成など) の両方が含まれます。クラウド ネイティブは、クラウド テクノロジーとエンタープライズ管理手法の集合体とも言えます。

クラウド ネイティブは、インフラストラクチャ、アプリケーション、管理の面でエンタープライズ クラウドの将来に大きな影響を与え、変化をもたらす、ますます充実したコンセプトとテクノロジー システムです。

1. インフラ変革とクラウドネイティブ

Infrastructure as a Service (IaaS) は、クラウド プロバイダーが提供する数多くのサービスの 1 つです。顧客が必要に応じて利用できる生のコンピューティング、ネットワーク、ストレージを提供します。また、ID およびアクセス管理 (IAM)、プロビジョニング、インベントリ システムなどのサポート サービスも含まれます。



企業の従来のデータセンター インフラストラクチャには、次のような特徴があります。1. 評価が困難。調達規模の根拠がなく、サーバーやストレージが過剰に購入され、ハードウェアが急速に減価するため、IT コストの削減とビジネス ニーズへの対応の間に矛盾が生じやすくなります。 2. 展開が遅い。導入には数週間かかり、設計は複雑で、範囲は広く、人員調整も困難です。ビジネスの急速な変化に遅れをとっており、俊敏性に欠けています。 3. 管理コストが高い。自己回復能力に欠け、管理コストが高く、事業規模の拡大に伴う複雑な管理ニーズへの対応が難しく、システムの弾力性が低い。 4. 保守性が悪い。エンドツーエンドの可視性が欠如していると、問題が明確に特定されないことが多く、関係者間で紛争が発生し、ビジネス規模の拡大や保守性の低下とともに運用管理コストが急激に増加します。

クラウドの特徴は、弾力性、俊敏性、分散性、スケーラビリティ、自己管理、自己回復性です。クラウドの特性を満たすインフラストラクチャは、クラウドネイティブ インフラストラクチャと呼ぶことができます。クラウドネイティブ インフラストラクチャでは、自律的なアプリケーション管理を提供する IaaS 上にプラットフォームを作成する必要があります。このプラットフォームは、個々のサービスを抽象化し、動的なリソース割り当てのスケジュールとスケーリングを容易にするために、動的に作成されたインフラストラクチャ上に構築されています。クラウドネイティブ インフラストラクチャは、次の側面で変更する必要があります。1. オンデマンドの科学的な評価と調達。調達モデルを変更します。一度の大規模な調達は必要ありません。科学的な評価のためにプラットフォーム監視データを取得し、必要に応じて購入して補充します。特定の基盤となる仮想化 (esxi/kvm/xen/hyper-v) に依存せず、仮想化プラットフォームを分離し、オンデマンドで使用します。 2. 迅速な展開。ラックに設置してから 30 分以内に配送および使用可能になり、迅速に展開されるため、より多くのハードウェアとソフトウェアの統合機能が必要になります。ソフトウェアとハ​​ードウェアの統合により、ユーザーのクラウド コンピューティング利用の複雑さが軽減されるだけでなく、企業のアプリケーション リスクも大幅に軽減されます。ハイパーコンバージェンスは、ソフトウェアとハ​​ードウェアの統合を通じて、製品のパフォーマンス、密度、コスト効率、使いやすさを継続的に向上させ、ユーザーが「すぐに使える」ことと迅速な導入を体験できるようにします。 3. 一元管理。コンピューティング、ストレージ、仮想化などのリソースをソフトウェアで統合管理することで、運用・保守管理を簡素化・集中化できます。 4. 自己管理型の高可用性。リンク全体のすべてのノードが可視化され、分散アーキテクチャ、線形拡張、ノード数の制限なし、単一障害点なし、同一都市および複数の地域にわたる災害復旧機能が組み込まれています。

概要: ソフトウェア機能がますます強力になるにつれて、もともとハードウェア サポートを必要としていたサポートをソフトウェアに移行して実装できるようになります。インフラストラクチャ レベルでは、テクノロジ主導の開発の結果、企業ユーザーは高価で複雑な専門機器に多額の費用を費やす必要がなくなり、ソフトウェア定義のインフラストラクチャがますます普及し、重要になります。

2. クラウドネイティブアプリケーションの構築と展開

一般的に、従来のエンタープライズ アプリケーションをクラウド環境に移行する場合は、多くの場合、アプリケーションの再展開のプロセスになりますが、PaaS または SaaS 環境に移行する場合は、アプリケーション システムを再度分割し、再設計して再構築する必要があります。多くのアプリケーション システムは、コンテナやマイクロサービスなどのテクノロジと概念をより有効に活用して弾力性と俊敏性を実現し、ソフトウェア サービスのニーズを満たすために、PaaS ベースになっています。

過去数年間、クラウド プラットフォームは継続的に開発されてきましたが、アプリケーションをクラウド プラットフォーム上で実行するには、さまざまな開発言語に対応するランタイム環境をインストールする必要があります。自動化された運用・保守ツールは環境構築の複雑さを軽減できますが、環境問題を根本的に解決することはできません。


コンテナの出現はソフトウェア開発業界における新たな分岐点となりました。コンテナ技術の成熟は、新たな技術時代の始まりでもあります。 Docker を使用すると、開発者はアプリケーションと依存関係をポータブル コンテナーにパッケージ化し、環境依存関係の問題を解消できます。コンテナ スタイルのパッケージ化により、アプリケーションは標準化された方法で開発および保守され、異種言語がチームを束縛する足かせではなくなります。

Kubernetes はコンテナ オーケストレーション システムを統合し、クラウド ネイティブ アプリケーションにワンストップ サービスを提供します。 Kunernetes の優れたパフォーマンスは、運用および保守エンジニアの作業モードに破壊的な変化をもたらしました。ペットのように各サーバーを注意深く管理する必要がなくなり、問題が発生した場合は、問題のあるサーバーを交換するだけで済みます。ビジネス開発エンジニアは、非機能要件に過度に注意を払う必要がなくなり、自分のビジネス領域に集中できるようになります。ミドルウェア開発エンジニアは、ビジネス アプリケーションをクラウド プラットフォームに接続するための堅牢なクラウド ネイティブ ミドルウェアを開発する必要があります。

クラウドコンピューティングの深化に伴い、クラウドに導入されるアプリケーションがますます増え、これまでの単一アプリケーションの欠点がますます明らかになってきています。アプリケーションの変更の範囲とサイクルはまとめてバンドルされているため、アプリケーションの一部のみが変更された場合でも、モノリシック アプリケーション全体を再構築して展開する必要があります。さらに、より多くのリソースを必要とする一部のモジュールを個別に拡張することは不可能であり、アプリケーション全体を全体として拡張する必要があります。このような粗粒度の分割は、システム管理やリソースの利用には役立ちません。そのため、アプリケーションを合理的に分割する傾向が高まっています。こうして、マイクロサービスが誕生しました。複雑なモノリシック アプリケーションを、独立してデプロイされた複数のマイクロサービスに分解します。各サービスは独自のプロセスで実行され、サービス間の通信には RESTFul API などの軽量通信メカニズムが使用されます。サービスでは、さまざまな開発言語とデータ ストレージ テクノロジを使用できます。マイクロサービスに分割することで、システムはアプリケーション全体を直接拡張するのではなく、必要なアプリケーションに必要なリソースをより自由に割り当てることができます。同時に、この拡張は垂直方向と水平方向の両方向で非常に柔軟かつ簡単です。

概要: クラウド ネイティブ アプリケーション システムは、オペレーティング システムなどのインフラストラクチャから分離する必要があり、Linux や Windows などの基盤となるプラットフォームや特定のクラウド プラットフォームに依存してはなりません。つまり、アプリケーションは、プライベートかパブリックかに関係なく、最初からクラウドで実行できるように設計する必要があります。第二に、アプリケーションは垂直方向 (上下) または水平方向 (ノード サーバー間) のスケーラビリティ要件を満たす必要があります。

3. クラウドネイティブと管理の自動化とインテリジェンス

アプリケーション ソフトウェア配信ライフサイクルにクラウド ネイティブ メカニズムを導入することで、運用環境での安定性やセキュリティ レベルに影響を与えることなく、ソフトウェアに新しい機能を迅速に追加できます。ご存知のとおり、アプリケーションは運用中にインフラストラクチャ、ミドルウェア、およびサポート サービスの連携を必要とし、クラウド ネイティブ ソリューションはこれらの要素の変換を自動化することで上記の目標を達成します。

包括的なクラウドネイティブ アーキテクチャには、自動化とオーケストレーション管理という 2 種類のメカニズムが含まれており、ユーザーは自動化プロセスをカスタム設計として記述することなく、関連する機能を直接取得できます。たとえば、K8S には自動管理、自己修復、自動拡張が組み込まれています。つまり、このタイプの自動管理が組み込まれていると、自動的に管理できるアプリケーションの構築が容易になります。


もちろん、これらの新しい機能は、ソフトウェアの開発方法にも新たな要件を課すことになります。開発者は、マイクロサービスやコンテナ技術などのまったく新しい一連のアーキテクチャプラクティスを活用して、アプリケーションがクラウドプラットフォーム上で適切に管理されるようにする必要があります。これは、ソフトウェア開発のスピードアップに加えて、真剣に検討する必要がある前提条件でもあります。また、アプリケーション インスタンスの移行、統合ログイン、アプリケーションとデータ フローの正常な動作を保証するための監視など、運用レベルでも多くの利点がもたらされます。もう 1 つは、DevOps の導入が、製品の提供、テスト、機能の開発、メンテナンス (かつてはまれだったが、現在では一般的になっている「ホット パッチ」を含む) に大きな影響を与える可能性があることです。 DevOps 機能が不足している組織では、開発と運用の間に情報の「ギャップ」が生じます。たとえば、運用スタッフは信頼性とセキュリティの向上を要求し、開発者はインフラストラクチャの応答速度の向上を望み、ビジネス ユーザーはエンド ユーザーにより多くの機能を迅速にリリースすることを要求します。この情報ギャップが問題の発生源となることが多く、DevOps が登場したのは、ソフトウェア製品やサービスを時間どおりに提供するには開発と運用が緊密に連携する必要があるというソフトウェア業界の認識が高まったためです。

クラウド ネイティブ管理の固有の利点を活用するための、より理想的なアプローチの 1 つは、インテリジェンスを導入して自律的な管理を実現することです。現在、クラウドに移行した後、ほとんどの企業は「人中心」のアプローチに依存しており、多数のスタッフの個人的な能力、経験、意識に頼って運用・保守業務を行っています。労働集約的なサービスを従来の IT インフラストラクチャからクラウド プラットフォームに移行するというこの単純で粗雑な方法は、市場規模が小さく、技術開発レベルが低いという現実的な状況下では、移行的なソリューションとしてしか機能しません。自動サービス検出、自動アラーム検出、自律障害処理を実現するインテリジェンスを導入することで、従来のサービス モードが変化し、効率が低く、人件費が高く、手動操作と保守のエラーが発生します。また、エンタープライズ クラウドの可用性が大幅に向上し、エンタープライズ レベルのクラウド サービス市場が拡大します。

一般的に、クラウド ネイティブとは、アプリケーションとインフラストラクチャの展開とトラブルシューティングをより迅速かつ俊敏に実行できる、より優れたツール、自己修復システム、自動化システムの集合であり、クラウド コンピューティングにおけるエンタープライズ展開コストを大幅に削減し、エンタープライズ クラウド変革を加速します。

展望: エンタープライズクラウドの将来

マルチクラウド時代では、企業のデータとアプリケーションは、企業のプライベートクラウドやパブリッククラウドだけでなく、リモートオフィスやブランチ、エッジコンピューティング環境にも分散されます。今日の企業は、ハードウェア、ハイパーバイザー、クラウドを自由に選択しながら、クラウド間でのアプリケーションのモビリティを望んでいます。したがって、ビジネス中心の運用モードを確立し、クラウドネイティブのアプリケーションとインフラストラクチャを構築することは避けられない傾向です。ビジネスの迅速な展開と柔軟な動的調整が可能になり、アーキテクチャ全体が非常にシンプルな方法で構築されます。これは、トレンドをリードする運命にあるアプリケーション主導のエンタープライズ クラウド ネイティブです。

私たちは、クラウド ネイティブは単にアプリケーションを構築して実行する新しい方法ではなく、よりダイナミックな文化であると信じています。

[51CTO オリジナル記事、パートナーサイトに転載する場合は、元の著者とソースを 51CTO.com として明記してください]

<<:  2018年グローバルクラウドコンピューティング市場分析概要

>>:  Google Cloud が中国に進出するのは難しいでしょうか?なぜ?

推薦する

Linodeはどうですか?フランスのパリのデータセンターにおけるクラウドサーバーレビュー

Linodeはどうですか? Linode France クラウド サーバーはいかがでしょうか? Ak...

テンセントセキュリティは、コンテナのライフサイクル全体にわたってコンテナのセキュリティを保護する TCSS コンテナセキュリティサービスをリリースしました。

企業がクラウド移行のペースを加速するにつれ、コンテナ、マイクロサービス、動的オーケストレーションに代...

リンク取引に対する百度(バイドゥ)の姿勢はどのようなものですか?

百度は、リンクの売買を取り締まると改めて発表した。11月5日、百度ウェブマスタープラットフォームは、...

新年、新たな期待

新年がやってきました。私(ニックネームはgongyiyi、neal)は、Host Catを訪れてくれ...

Baiduの入札3つ星品質とコンバージョン率を向上させる最も効果的な方法

過去1年間、著者の李雪志は20社以上の企業や組織のBaidu入札管理を引き継いでいます。著者の李雪志...

企業のウェブサイト構築では、これらの点をテストするために仮想ホストを使用します。

月収10万元の起業の夢を実現するミニプログラム起業支援プランDidi Expressの成功はシェアリ...

NetEase Yanxuan のスクリーンを席巻する広告からブランドマーケティングの 5 つの新しいトレンドを洞察

2018年、社会、経済、文化などの環境が複雑に変化する中、ブランドマーケティングも変化を遂げ、軽薄さ...

【WOTD】JD Cloud 鄭永観:JD Cloudの自動運用保守システムの構築

【51CTO.comオリジナル記事】 2017年12月1日〜2日、51CTO主催のWOTD 2017...

Pacificrack: システムを再インストールできず、SSHログインができないバグを解決

Pacificrack はシステムを再インストールできません。どこで Pacificrack のシス...

独立したブログを運営し宣伝する方法

有名な独立系ブロガーのLu Songsong氏は、28tuiの第一回フォーラムチャットイベントに参加...

ホストオンはどうですか? Hosteons 無制限帯域幅 VPS シンプルレビュー

最近、私は新しい VPS 業者である Hosteons を発見しました。これはシンガポールに拠点を置...

クラウドエクスペリエンスを深く解き放ちましょう! Volcano Engine パブリック クラウド シティ共有セッションがクラウドの新たな未来を切り開く

デジタル時代の到来は、業界のクラウド コンピューティング リソースの需要を刺激しただけでなく、クラウ...

Google のクラウド コンピューティングに関するトップ 10 の予測

Google は最近開催された「Cloud Next」イベントで、あらゆるレベルの開発者や技術意思決...

Java仮想マシンの基本原理とプロセスを理解すれば、JVMの60%をマスターできます。

Java ユーザーとしては、JVM のアーキテクチャを習得することも必要です。 [[323342]]...