アプリケーション開発・管理・運用

マイクロソフトのクラウドネイティブとは?確認したい6つの確認事項と事例

Microsoft Azureは世界的な大企業から個人にまで幅広く利用されているサービスです。なかにはMicrosoft Azureを活用してクラウドネイティブ開発を実現した企業も存在しています。同じようにAzureによってアプリ開発を検討しているけど、クラウドネイティブについてよくわからないという方もいるでしょう。
そこでこの記事では、クラウドネイティブに大切な6つのポイントと事例を紹介しています。検討中の方は、ぜひ開発事例も含めて参考にしてください。

マイクロソフトのクラウドネイティブとは?確認したい6つの確認事項と事例

アプリケーション開発における課題別の解決方法とは? 〜Azureを導入するメリットも紹介〜

クラウドネイティブアプリケーションの6つの重要な柱

クラウドネイティブは、クラウドが持つメリットを可能な限り活用しているシステムのことを言います。単にオンプレミスで運用している状態からクラウドに移行するだけでは、クラウドネイティブとは言えません。CNCFガイドラインによると、クラウドネイティブアプリケーションでは、以下のような6つの重要な柱があります。

  • クラウド
  • 最新の設計原則
  • マイクロサービス
  • コンテナ化とコンテナのオーケストレーション
  • データベースやメッセージ ブローカーなどのクラウドベースのバッキング サービス
  • コードとしてのインフラストラクチャやコード デプロイを含む自動化

クラウドネイティブアプリケーションの活用には、その柱を生かすことが必要です。ここからは、それぞれのポイントについて詳しく解説していきましょう。

クラウド

1つ目のポイントは、クラウドが持つ特性を最大限に活用することです。クラウドネイティブでは、システムのベースとなるインフラを基本的にディスポーザブルとして扱います。従来では一度構築したインフラは使い続けることが当たり前でした。しかしクラウドの登場により、インフラでさえも別のものに切り替え、いわば「使い捨て」ができるようになったのです。
Microsoftが提供しているクラウドサービス、「Azureクラウドプラットフォーム」なら、自動スケーリング、自己復旧が可能です。さらにインフラはエラスティックなサポートがあるので、利用時の状況に対応できます。

最新の設計原則

設計原則は最新である必要があります。指標となる設計原則は設計上の重要な決定事項になるため、構築方法には注意しましょう。昨今では、「 Twelve-Factor Application」がクラウドベースアプリケーションの構築方法として広く受け入れられています。
Twelve-Factor Applicationとは、アメリカのIT企業Herokuが提唱した方法論です。膨大なアクセスへの対応力を持ち、スピーディーな操作性を実現するモダンアプリケーションにおいて、最善の方法は何であるかをまとめています。

マイクロサービス

Microsoftでは、クラウドサービスを提供するためにさまざまな回答を用意しています。クラウドサービスは複数のサービスを組み合わせて一つの大きなアプリケーションを構築するので、アップデートなどに素早く対応できるというメリットがあります。そして無料でオープンソースであるMicrosoft .NET プラットフォームは、開発を簡易化する機能が含まれているので最適です。

コンテナ化とコンテナのオーケストレーション

仮想化技術の一つであるコンテナ化を導入すると、環境間での移植性が提供され、一貫性が保証されます。多数の独立した実行中コンテナを使用して大きな規模で運用する場合は、設置や管理は自動化しましょう。

データベース・メッセージ ブローカーなどのクラウドベースのバッキング サービス

 クラウドネイティブ開発では、「アタッチされるリソース」として扱い、外部構成に格納された構成情報 (URL および資格情報))を使用して、動的にマイクロサービスに関連づけることがポイントです。独自にホスティングすると、トラブルなどの運用リスクが発生します。コスト増加へつながる恐れもあるため、注意しなくてはなりません。

コードとしてのインフラストラクチャやコード デプロイを含む自動化

「Azure Resource Manager」や「Azure Bicep」「HashiCorp の Terraform」「Azure CLI」などのツールを使用すると、必要なクラウド インフラストラクチャを宣言することでスクリプト化ができます。すると統合プロセスの一貫性によって、チームはコードの変更を頻繁にコミットできるようになります。こうした取り組みは、コラボレーションとソフトウェアの品質を向上させます。

Microsoft Azureを使ったクラウドネイティブ開発事例

近年では、クラウドネイティブアプリケーションは内製化が進んでいます。そこでここからはMicrosoft Azureを使ったクラウドネイティブ開発事例を紹介していきます。

Azure Kubernetes Service

1つ目は、Azure Kubernetes Serviceによる開発事例です。Azure Kubernetes Serviceとはクラスタの構築や管理を行うサービスのことです。このサービスを活用して、Microsoftや富士通などの4社がETFプラットフォームの開発に試験運用をしました。そこで「Cloud Native Dojo」が開発され、これは企業向けに誕生した開発者育成プログラムで、開発の内製化を可能にします。

Data Hack

2つ目は、Data Hackによる開発事例です。Data Hackとは企業向けのデータ分析サービスです。これは生活雑貨を販売する大手海外メーカーが導入しました。企業のデータ分析プロジェクトの導入過程に参加し、データ分析によって顧客生産価値の向上に成功しています。

Azure Synapse Analytics

そして3つ目は、Azure Synapse Analyticsによる開発事例です。Azure Synapse Analyticsとは、ビッグデータにおける分析サービスです。これは国内大手運送会社にも採用され、運用管理の負荷を減すことや、機械学習によって現場業務の予測精度向上を実現しました。

Microsoft Azureとは何か?入門から応用まで徹底解説

クラウドとは何か?Azureとは何か?導入のメリットや構成、コストに至るまでの基礎的な知識から、どのように活用すべきかまでを徹底的に解説しています。

Microsoft Azureとは何か?入門から応用まで徹底解説

ブログ記事を見る

まとめ

この記事では、Microsoftのクラウドネイティブについて紹介しました。クラウドネイティブはクラウドを可能な限り利点を生かしたシステムのことです。パフォーマンスを高めるには、6つのポイントを抑えることが大切です。また、企業によってはクラウドネイティブアプリケーションの内製化も進んでいます。開発事例も含めて参考にし、ぜひAzureの導入を検討してみてください。

  • fb-button
  • line-button
  • linkedin-button

無料メルマガ

RELATED SITES

関連サイト

CONTACT

サイト掲載の
お問い合わせ

TOP