クラウドネイティブ アーキテクチャは、クラウド環境でアプリケーションをゼロから構築するための設計パターンです。クラウド ネイティブ アーキテクチャには厳格なルールはありませんが、ほとんどのクラウド ネイティブ アプリケーションはマイクロサービスとして編成されています。マイクロサービスは主に、アプリケーションを小規模なチームで保守できる、自律的で疎結合なユニットに分解するために使用されます。各マイクロサービスは通常、コンテナまたはコンテナのグループとしてデプロイされます。 さらに、クラウド ネイティブ アプリケーションは通常、12 要素アプリ フレームワークの原則に従います。これらは以下を中心に構築されています:
ネイティブアーキテクチャの原則クラウドネイティブ アプリケーションを構築するときは、まず、動的なスケーリングを実現し、障害を自動的に処理し、コンポーネントをできるだけ簡単に追加または削除するために、複数の次元で継続的に移動できるシステムを構築する必要があります。次の原則に従うことで、クラウド ネイティブ アーキテクチャはより強力になり、変更への適応性が向上し、保守も容易になります。 1. 自動設計システムを展開、修復、拡張し、関連するログとイベントを生成する自動化されたプロセスを作成します。以下を自動的に処理するシステムを構築します。
2. 可能な限りステートレスに保つクラウド ネイティブの純粋主義者の中には、クラウド ネイティブ アプリケーションはステートレスであるべきだと考える人もいますが、現実にはステートレス アプリケーションの開発は難しい場合があります。ただし、分散アプリケーションの管理状態 (現在実行中のインスタンスの数など) を追跡することは難しいため、可能な限りステートレス コンポーネントを使用する必要があります。ステートレス コンポーネントを使用すると、スケーリング (レプリカの追加)、修復 (インスタンスの削除と新しいインスタンスへの置き換え)、ロールバック、ワークロードのバランス調整 (どのインスタンスがどのトランザクションを処理しているかを考慮する複雑なロジックが不要) が容易になります。 3. 柔軟な設計設計に冗長性を追加することで、クラウド ネイティブ アプリケーションに回復力を構築します。クラウドネイティブ アプリケーションは、インスタンス クラスター、データ レプリケーション、マルチ AZ またはマルチリージョンのクラウド デプロイメントを使用することで、単一障害点を回避します。オンプレミスで実行する必要があるアプリケーションでは、少なくとも一部のコンポーネントについては、ハイブリッド アーキテクチャを使用してパブリック クラウドを活用し、高可用性と災害復旧を実現する必要があります。 一般的な回復力メカニズムの例:
4. マイクロペリメーターを使用して各コンポーネントを構築するクラウドネイティブ アプリケーションは、最初からセキュリティを考慮して設計する必要があるだけでなく、信頼できるコンポーネントが存在しないという前提で設計する必要があります。アプリケーションとそのユーザー間、または内部コンポーネント間にプライベート ネットワークが存在しない可能性があるため、アプリケーションの回復力を高め、信頼できない環境にコンポーネントを展開する柔軟性を実現するために、すべてのコンポーネントの強化、データの暗号化、コンポーネント間の認証の実装に重点を置く必要があります。 5. 多言語アーキテクチャを構築するクラウドネイティブ アプリケーションでは、高度に統合されたアーキテクチャ、同じ言語で記述されたコンポーネント、同じテクノロジとフレームワークの使用は必要ありません。 REST以来 API は各コンポーネントの機能を公開できるため、異種のコンポーネントが相互に通信して使用できるようになります。そのため、チームの能力を考慮して、最大の価値と市場投入までの時間を最短にする言語またはテクノロジで各コンポーネントを記述できます。 6. コンポーネントは不変であるインフラストラクチャ コンポーネントを不変にすることで、高いレベルの俊敏性と柔軟性を実現します。つまり、展開後に構成サーバーまたは仮想マシン (VM) を変更することは許可されません。 不変サーバーがデプロイされると、再度変更することはできません。逆に、不変サーバーがデプロイされていない場合は、デプロイされたサーバーがそのまま変更されずに維持されるようにする必要があります。そうすることで、問題が発生した場合に、サーバーを迅速かつ簡単に交換し、アプリケーションを実行し続けることができます。 不変のインフラストラクチャを使用することの主な利点は次のとおりです。
可変サーバーはコストと反復時間を増加させ、市場投入までの時間を大幅に遅らせますが、不変インフラストラクチャはアジャイル開発を促進します。不変のインフラストラクチャにより、デプロイされた環境の信頼性、一貫性、効率性が向上し、開発者は数分で環境を再作成できるようになります。 クラウドネイティブアーキテクチャのメリットとデメリットクラウドネイティブ アーキテクチャには多くの利点があります。
クラウドネイティブ アーキテクチャの欠点は次のとおりです。
新しいクラウドネイティブ アーキテクチャの構築を検討する場合、企業組織はさまざまな長所と短所を慎重に比較検討し、ビジネス、顧客、利害関係者にとって適切な決定を下す必要があります。 |
<<: 2022年にマルチクラウド市場はどのように発展するでしょうか?
>>: CloudOps: クラウド運用を最適化するための新しいフレームワーク
ftpit は 2017 年 1 月に設立され、米国オハイオ州にオフィスを構えています。主にアンマネ...
2012年6月以来、百度は一連のアルゴリズムアップデートを実施してきました。その中で、百度の発表では...
INOVENTICAグループ傘下のinvs.ruは、1999年から運営されているロシアの老舗ブランド...
エッジ コンピューティングは成熟しており、ある業界で学んだ教訓や開発されたソリューションを、別の業界...
arkecxはどうですか? arkecxクラウドサーバーはどうですか?今回は、英国ロンドンにあるar...
kvmla(中国の古いブランド)は、日本のVPSと香港のVPSで特別プロモーションを実施しています。...
みなさんこんにちは。HostCatは設立されてから2年以上経ち、多くの忠実なネットユーザーから支持を...
若い年齢層はeスポーツユーザーの重要な特徴です。eスポーツゲーム、ゲームライブ放送、eスポーツイベン...
私はMumaoから1GメモリのTianyi Cloudを購入しました。年間払いの場合、プロモーション...
eName.cnは4月10日、UCが今日の午後にUCブラウザのPC版をリリースしたと報じた。誰もが知...
北京、2018 年 4 月 24 日 - アジアの大手クラウド管理サービス プロバイダーである Be...
オープンソースの詳細については、以下をご覧ください。 51CTO オープンソース基本ソフトウェアコミ...
フォーブスは以前、マーケティング専門家のケン・クローグ氏による「SEOは死に絶え、ソーシャルでリアル...
本日、サンフォー工業大学の公式ウェブサイトが正式に開設されました。当社は、今後も政府、社会、大学、企...
以前、インターネットページの価値に関する記事を読みました。Baidu のエンジニアは、インターネット...