AZ-900 Microsoft Learningセクション３の内容をまとめてみた

🌾個人の勉強のアウトプットとして投稿しているものです🌾
解釈が間違っている可能性があります。ご容赦ください。

今回勉強したラーニングパス
Azure の基礎 第 3 部:Azure のコア ソリューションおよび管理ツールに関する説明
2 時間 18 分
Azure
管理者
初級

https://docs.microsoft.com/ja-jp/learn/paths/az-900-describe-core-solutions-management-tools-azure/

# IoT

目標・ビジネスシナリオに最適なAzure IoTサービスを選択できる。



### Azure IoT Hub

Azure IoT Hubはクラウド提供のマネージドサービスであり、 IoTアプリとデバイスの中央メッセージハブとして使われる。実際にはデバイス制御の要求応答、デバイスからファイルのアップロードなど様々なパターンで使える。（命令と制御）

### Azure IoT Central

デバイスの接続、監視、管理が画面上から可能になる。様々な業界用のテンプレートが用意されている。

### Azure Sphere

Azure Sphereは IoTデバイスに組み込むチップである。これを使うと IoTソリューションの安全性を高められる。



## IoTサービスを決定するときの条件

### デバイスへの侵害の重要性

例えば洗濯機とATMではデバイスの侵害に対する重要性は異なる。セキュリティが重要な場合Azure Sphereの利用を勧める。Azure Sphereを使う事で受信送信が安全にでき、ソフトウェアアップデートもリモートで実行できる。



### 管理でダッシュボードは必要か？

レポート機能がいらない場合、AzureIo THub単独で実装することをお勧めします。この場合、IoT HubのRestfulAPIを使いレポート機能を作成することは可能です。

カスタマイズ可能なデバイスで、リモート制御の必要がある場合は IoTCentralから実装することが勧められています。この場合、メリットとし一括でデバイス制御ができ、アラートの設定も可能になります。また、ダッシュボードからの管理も可能です。



# AI

目標：最適なAzureAIサービスを選択する



そもそもAIとは

1. 人間の脳をモデル化したディープラーニング（経験から発見、学習、成長できる）
2. データを使ってトレーニングをして、動作、結果、傾向を予測するスタイル。



### Azure Bot Service

Azure Bot Serviceを使うことで、ナレッジソース・言語処理・チャネル間のやりとりを可能にでき、 自然言語を理解すして人間と対話するAIを作ることができる。自然言語の理解や、応答を顧客の言語に変換する翻訳機能などを AIサービスに依存している。Azure MarketplaceからQuA Makerを使うとUIからRESTAPIを介してFAQページ、サポートサイト、マニュアル、ボットをトレーニングし公開できる。



### Aure Cognitive Services

Azure Cognitive Servicesを使うと画像、ビデオ、音声などコンテンツから対象を識別して変換することができる。

またAzure Cognitive ServicesのPersonalizer（ペルソナライザー）を使うとアプリ内のアクションを監視できる。パターンを覚えてユーザーの動作を予測して関連のあるエクスペリエンスを提供する。



### Azure Machine Learning

Azure Machine Learningを使うとサービス提供の新しいパターンを見つけられるかもしれない。ただし数年分のデータから分析する必要がある。

最大限の柔軟性が必要であれば、AzureMachineLearningを選択すること。

 

### どのようにサービスを選ぶか

自然言語を介して人間を対話したい→Bot Service

画像、ビデオ、音声のコンテンツの意味を理解して別の言語に翻訳したい→Cognitive Services

ユーザーの行動を予測したり、適切な事項をユーザーに提供したい→Coginitive Servicesのペルソナライザー

プライベートの履歴データに基づいて予測したい→Machine Learning





# サーバーレステクノロジ

目標：最適なサーバレステクノロジが選択できる。



### Azure Logic Apps

Azure Logic Apsはノーコード開発（もしくはローコード）できるプラットフォームである。Webベースで開発でき、Azureのサービスを使ってロジックを実行する。コネクタと呼ばれる実装ずみのサービスをトリガーされるロジックに追加していく。大体のロジックはあるが、もしない場合でも自分でカスタムすることができる。Functionsと違ってコネクタによって金額が変わるので注意。

### どうやって選ぶか

よく知られているAPI全体でオーケストレーションが必要な場合→Logic Apps

カスタムが必要だったり特殊なデータ解析や検索が必要→Azure Functions

命令型プログラミング言語で書いた既存の自動化タスクがある→Azure Functions

ビジュアル（宣言型）と記述（命令型）どちらを使用するか→宣言型ならLogicApps、命令型ならFunctions



# ソリューション

### Azure DevOps Services

Azure DevOps Services はソフトウェア開発の全ての段階に対応するサービスである。**Repos**はコード公開できるリポジトリである。**Boards**はアジャイルのプロジェクト管理スイートである。かんばんボードやレポート、アイデア追跡が使用できる。**Pipelines**はCI /CD（ビルド・テスト・デプロイの自動化：継続的インテグレーション）のパイプラインオートメーションツールである。**Artifacts**は成果物をホスティングするリポジトリである。**TestPlans**は自動テストツールである。

### Azure DevTest Labs

 VMの構築、設定、破棄のプロセスを管理するじどうか手段が提供する。ARMテンプレートを使ってデプロイできるものはDevTest Labsからプロビジョニングできる。



### どうやって決定するか

テストラボの作成、自動化、管理が必要→AzureDevTestLabs

オープンソースのソフトを構築しているか→使用しているならGitHub、していないならAzure DevOps

アクセス許可を高めたい→Azure DevOps

プロジェクト管理とレポートを高度にする→AzureDevOps

サードパーティとの依存→Git



# 監視サービス

### Azure Advisor

AzureAdvisorはリソースを監視する。監視結果から信頼性や、セキュリティ、パフォーマンスの向上やコスト削減などに役立つレコメンデーションが作成される。

### Azure Monitor

Azure MonitorはAzureとオンプレ全体のメトリックとログデータを使って分析、視覚化、収集が可能。

### Azure Service Health

Azure Service Healthを使うとサービス・リージョン・リソースの正常性を監視できる。また、Service HealthではAzure依存の小さいローカルな問題や計画メンテナンスのアラートが設定できる。

### 🌟どうやって決めるか

コスト削減の分析が必要か？回復性の向上か？セキュリティの強化か？→Azure Advisor

Azureの使用状況を監視するか？→Azure Service Health

カスタムイベントと使用状況メトリックを同時に測定→Azure Monitor

サービス停止のアラート、スケーリングで増加する時のアラート→Azure Monitor