This is the Trace Id: 46e62fce1bef19ddff208ba3237bab04
メイン コンテンツへスキップ
Azure

クラウド ネイティブとは

クラウド ネイティブはクラウド コンピューティング向けに最適化された最新の開発手法であり、組織が拡張性、回復性、俊敏性に優れたアプリを設計、作成、実行できるようにするものです。

クラウド ネイティブの定義

クラウド ネイティブ開発により、組織はクラウド コンピューティングの利点を活用するように設計されたアプリを構築および実行できます。最新のアーキテクチャ、テクノロジー、プラクティスを使用することで、チームはクラウド ネイティブ アプリを迅速にリリースし、顧客のニーズの変化に応じて迅速に更新し、必要に応じて拡張できます。高可用性とセキュリティを備えて提供されるクラウド ネイティブ システムは、パブリック、プライベート、ハイブリッドのクラウドや、オンプレミス インフラストラクチャを含む、さまざまなコンピューティング環境で動作します。

重要なポイント

  • クラウド ネイティブとは、組織が最新のアーキテクチャ、テクノロジー、プラクティスを使って、クラウド コンピューティング向けに構築されたアプリを開発および運用することを意味します。
  • クラウドネイティブ アプリケーションは、複数のコンテナ化されたマイクロサービスで構成されており、パブリック、プライベート、ハイブリッドのクラウド間で個別に更新および拡張できます。
  • オーケストレーション プラットフォーム、サーバーレス コンピューティング、コンテナ向けに最適化されたツールとサービスは、クラウドネイティブ開発で一般的に使用されています。
  • 自動化された統合パイプラインの利用を含む DevOps プラクティスは、クラウドネイティブ アプリの開発を加速します。
  • ユース ケースは多岐にわたり、小売業のトラフィック急増を管理するクラウドネイティブ アプリや、医療分野でウェアラブル デバイスを活用して患者ケアを向上させるクラウドネイティブ アプリなどがあります。
  • 新たなトレンドとして、AI アプリとエージェント、クラウドエッジ アーキテクチャ、プラットフォーム エンジニアリングへの重点化が挙げられます。

クラウドネイティブ開発と従来型開発の違いは何ですか?

従来のソフトウェア開発手法では、オンプレミス インフラストラクチャでサポートされるモノリシック アプリケーションを構築するために、サイロ化された硬直的なプロセスが用いられていました。このアプローチでは、開発者が複数のソフトウェア機能を同時にテストして提供する必要がありました。今日では、従来の開発手法を使うと、イノベーションが遅れ、アプリの更新や拡張が困難になり、変化の激しい市場での組織の競争力に影響を与えます。

オンプレミス環境向けに設計された従来の手法で構築されたアプリは、クラウド インフラストラクチャ上で実行できるようにすることが可能です。しかし、クラウド環境向けに最初から設計されていないため、クラウドに移行したアプリはパフォーマンスが低く、管理が難しいことがあります。

クラウドネイティブ開発は、ソフトウェア開発における拡張性と俊敏性の向上に向けた根本的な転換点となります。開発者および運用チームは、クラウド ツールとテクノロジーを使って、「マイクロサービス」と呼ばれる複数の小さな単一機能サービスで構成されるクラウドネイティブ アプリを迅速に作成および更新できます。

このアプローチは、チームがアプリ全体のパフォーマンスに影響を与えることなく、独立したサービスを継続的に展開および拡張できるようにすることで、デジタル変革をサポートします。さらに、クラウドネイティブ アプリは、従来のソフトウェアよりも管理が容易です。

クラウドネイティブ開発の主要な原則

次の 3 つの基本原則に従うことで、クラウドネイティブ アプリの拡張性、回復性、俊敏性を最大限に高めることができます:

1. マイクロサービスを使って柔軟なクラウドネイティブ アーキテクチャを作成する。
マイクロサービスは、明確に定義された API を介して通信する疎結合のソフトウェア コンポーネントです。それらが一緒になって完全なアプリケーションを構成します。マイクロサービス アーキテクチャはモジュール性が高いため、チームはアプリ全体に影響を与えることなく、アプリの個々の部分を更新および拡張できます。

2. マイクロサービスをコンテナにデプロイして、どこでも実行できるクラウドネイティブ アプリを構築する。
コンテナは、アプリケーション コードと、それを実行するために必要なオペレーティング システムのライブラリや依存関係をバンドルした、スタンドアロンのソフトウェア パッケージです。軽量で移植可能なコンテナ化されたマイクロサービスは、ハイブリッドやマルチクラウド プラットフォームを含むほぼすべての種類のインフラストラクチャで安定して実行できます。

組織がクラウドネイティブ アプリを効果的に管理、保護、拡張できるように設計されたコンテナ最適化ツールとサービスには、次のものがあります:
  • Kubernetes などのコンテナ オーケストレーション プラットフォームは、自動スケーリング、自動更新、自己回復機能を備え、コンテナのライフサイクルを自動的に管理します。
  • サービス メッシュは、アプリ コードを変更せずにマイクロサービス間で複数の機能を実行する、プログラム可能で安全な通信レイヤーを提供します。たとえば、トラフィックの管理、相互 Transport Layer Security (TLS) 認証の追加、一貫したポリシーの適用を行います。
  • サーバーレス コンピューティングは、クラウド サービスとしてサーバーとインフラストラクチャを自動的にプロビジョニング、スケーリング、管理するため、チームはコンテナ化されたアプリをより迅速に構築し、実行できます。 トラフィックの急増に対応する必要があるイベント駆動型アプリケーションに最適です。
3. DevOps アプローチを採用することでクラウド ネイティブ開発を加速する。
DevOps は、クラウド、AI、その他のテクノロジーを活用して、ソフトウェア配信ライフサイクル全体でプロセス、ツール、プラクティスを統合することで、運用効率と俊敏性を向上させます。継続的インテグレーションと継続的デリバリー (CI/CD) パイプラインは、ビルド、テスト、デプロイを自動化するため、DevOps の基盤となります。

クラウドネイティブ開発の利点は何ですか?

組織がクラウドネイティブ アプローチを採用することで得られる主な利点は次のとおりです:

  • 市場投入までの時間短縮: マイクロサービスと自動化された CI/CD パイプラインにより、ボトルネックが減り、DevOps サイクルが短縮されます。これにより、チームは信頼性の高い新機能をより迅速にリリースし、頻繁な増分更新を実施できます。
  • スケーラビリティと回復性の向上: アプリケーションはトラフィックの急増に対応するために水平方向に拡張し、コストを抑えるためにスケールダウンします。 また、障害が局所化されるため、1 つのマイクロサービスが失敗しても他は稼働を継続し、ダウンタイムを最小限に抑えます。
  • 移植性と柔軟性: チームはコンテナベースのワークロードをパブリック、プライベート、ハイブリッドといった異なるクラウド コンピューティング プラットフォーム間で大幅な手直しなしで移行できます。これにより、ベンダー ロックインを回避し、マルチクラウド戦略を追求することが可能になります。
  • 効率の向上: サーバーレス コンピューティングと、インフラストラクチャーとしてのサービス (IaaS)プラットフォームとしてのサービス (PaaS)ソフトウェアとしてのサービス (SaaS) といったさまざまな種類のクラウド コンピューティングを利用することで、組織はアプリの展開を簡素化し、使用したリソースに対してのみ料金を支払うことができます。 これらのサービスを利用することで、チームはインフラストラクチャやその他のリソースの設定や管理に時間を費やすことなく、新しいアプリや機能を顧客に提供することに集中できます。
  • AI 導入のサポート: チームは、サービスとしての AI (AIaaS) およびサービスとしてのモデル (MaaS) を活用することで、AI 搭載アプリやエージェントを使った実験とそれらの迅速な提供が可能になります。
  • コラボレーションの強化: 開発者、運用チーム、ビジネス チームは DevOps のプロセス、ツール、プラクティスを活用して、より効果的に連携できます。
  • 組み込みのセキュリティとコンプライアンス: クラウドネイティブ開発ではセキュリティおよびガバナンス ポリシーをコードに組み込み、ソフトウェア ライフサイクル全体にわたって自動化された継続的な保護を提供します。 独立して保護される小規模なマイクロサービスを使用することで、データ セキュリティ全体がさらに強化されます。

業界別クラウドネイティブのユース ケース

あらゆる種類と規模の組織がクラウドネイティブ アプローチで競争優位を実現している実例を紹介します:

小売業
小売業者は、オンライン店舗、ショッピング カート、レコメンデーション エンジン、決済ゲートウェイを実行するマイクロサービスのホスティングに、マネージド コンテナー サービスへの依存度を高めています。各サービスがコンテナ化されているため、小売業者は季節的なトラフィックの急増時に決済サービスなどの個別サービスを独立してスケーリングできます。

銀行および金融
クラウドネイティブ技術により、金融機関は堅牢なセキュリティとコンプライアンスを維持しながら、イノベーションの俊敏性を高めることができます。 たとえば、銀行はサーバーレス コンピューティングを使用して、大量の取引をオンデマンドで安全に処理できます。 また、リアルタイム分析を活用して、疑わしいアクティビティがエスカレートする前に検出してブロックすることもできます。

医療
医療提供者は、クラウドネイティブ アプリを、データをソースでローカルに分析するエッジ コンピューティングと統合することで、患者ケアにおける画期的な成果を実現しています。 ウェアラブル、輸液ポンプ、心拍モニターなど、モノのインターネット (IoT) デバイスからのデータは、バイタル サインを分析し、異常を検出し、臨床医に即座に警告するコンテナ化されたマイクロサービスに安全にストリーミングできます。

製造業
クラウドネイティブ テクノロジーは、製造業にとって Industry 4.0 への移行の中心的な役割を果たします。 たとえば、製造業者はクラウドネイティブ アプリを使用して、サプライ チェーン全体の可視性を確保できます。出荷が遅延した場合、マイクロサービスが自動的に代替調達先をトリガーしたり、生産スケジュールを調整したりすることが可能です。 また、工場はスマート センサーやロボットからのデータをエッジで処理して、待機時間を短縮できます。

クラウドネイティブ開発の未来

クラウドネイティブ開発はクラウド コンピューティングを最大限に活用して、チームがパブリック、プライベート、ハイブリッド環境全体で効率的にワークロードを設計、構築、運用できるようにします。クラウドネイティブ アーキテクチャとテクノロジーが進化し続ける中で、組織が革新的で適応力があり、回復性がある状態を維持するために役立つトレンドをいくつかご紹介します:
AI アプリおよびエージェントの統合: クラウドネイティブ プラットフォームは、DevOps プロセスにインテリジェントなアプリやエージェントの組み込みを進め、自動化によって効率と回復力を高めていきます。たとえば、チームは AI 搭載サービスを使用してリソースを自動的にスケーリングし、潜在的な脅威を検出して対応します。また、機械学習モデルを活用して、データ駆動型の意思決定をサポートするリアルタイムのインサイトを提供します。
クラウド エッジ アーキテクチャの普及: クラウドネイティブ アプリがエッジ デバイスと集中型クラウド インフラストラクチャ間でタスクを分散する事例の増加が予想されます。これにより、組織はデータが生成された場所でデータを処理できるようになり、スケーラビリティ、高可用性、セキュリティの確保に役立ちます。例として、自動運転車や遠隔診断デバイスの運用に必要なアプリが挙げられます。
プラットフォーム エンジニアリングの重視: より多くの組織がクラウドネイティブの取り組みを拡大して、標準化されたツール、環境、ワークフローへのセルフサービス アクセスを提供する内部開発者プラットフォームを構築するチームを編成していきます。これらのプラットフォームは複雑さを軽減し、出荷を早め、プロジェクト全体にわたるセキュリティとコンプライアンスをサポートします。
リソース

クラウド コンピューティングの知識を広げる

Azure 上のクラウド コンテナーを含む最新の開発者テクノロジーについて、学生向けや専門家向けの幅広いリソースを使って学べます。
1 台のノート PC を見ている人々
学生開発者向けリソース

テクノロジー業界でキャリアをスタート

学生向けのツールとプログラムを使用して、クラウド テクノロジーについて学び、開発者スキルを養います。
ノート PC で何かを確認している女性
トレーニング コース

Azure とオープンソース ソフトウェアを使ってクラウドネイティブ アプリを作成する

コンポーネントの選択、統合の構築、Azure へのデプロイに関する無料の実践トレーニングを受けられます。
1 つのテーブルに向かって着席している人々。
Azure リソース

Azure のイベントとウェビナーを探索する

デジタル イベントや対面イベント、仮想トレーニングで Azure の専門家や開発者とつながることができます。
よくあるご質問

よく寄せられる質問

  • クラウドネイティブとは、開発チームと運用チームがクラウド向けに最適化されたツールとテクノロジーを使用して、拡張性、回復性、俊敏性に優れたアプリケーションを設計、作成、実行することを意味します。
  • クラウドとは、コンピューティング リソースやサービスへのオンデマンド アクセスを提供するために使用される広大なオンライン ストレージ スペースを指します。 クラウドネイティブとは、クラウド コンピューティングを最大限に活用するように構築および運用されるソフトウェアを指します。
  • クラウドネイティブ ソフトウェアはクラウド環境で動作するように最初から設計されているのに対し、クラウド対応ソフトウェアは、クラウド コンピューティング向けに改良されたものです。
  • クラウドネイティブ デバイスとは一般的に、モノのインターネット (IoT) やその他のエッジ デバイスを指し、クラウド接続と管理を利用してデータをローカルで処理するデバイスを指します。
  • クラウドネイティブ ソフトウェアは、コンテナーとしてパッケージ化されたマイクロサービスで構成され、DevOps の手法を用いて構築、テスト、デプロイされます。