Azure学習記録
-
クイックスタート: ASP.NET Web アプリをデプロイする
- Visual Studio 2022の「発行」フローに沿って進めると、およそ1分でデプロイできる
- デプロイが完了すると、ブラウザが起動してデプロイ先のページが表示される
-
profile.arm.json
が生成される(ARMテンプレートと呼ぶらしい)
- チュートリアル: Azure App Service に ASP.NET Core および Azure SQL Database アプリをデプロイする
試験 AZ-900: Microsoft Azure の基礎
試験日:6/4
残り12日で残り5モジュール
7割正解で合格ギリギリを目指す
- 主要概念 94分
- 基礎の概要 43分
- 基本的な概念 24分
- アーキテクチャのコアコンポーネント 27分
- 主要サービス 115分
- Azure Computeサービス 52分
- ネットワークサービス 36分
- ストレージサービス 27分
- データベースおよび分析サービス 43分
- コアソリューションおよび管理ツール 113分
- ニーズに最適なAIサービスを選択 23分
- ビジネスシナリオに最適なサーバレステクノロジを選択 20分
- 組織がより優れたソリューションを構築するための最適なツールを選択 21分
- Azure環境の管理と構成に最適なツールを選択 27分
- 可視性、分析情報、サービス停止の軽減策のために最適な監視サービスを選択 22分
- 一般的なセキュリティ機能およびネットワークセキュリティ機能 59分
- Azureでのセキュリティ脅威からの保護 25分
- Azureネットワーク接続をセキュリティで保護する 34分
- ID、ガバナンス、プライバシー、およびコンプライアンス機能 92分
- Azure ID サービスを使用してアプリケーションへのアクセスをセキュリティで保護する 17分
- Azureでのクラウドガバナンス戦略を構築 48分
- Azureのプライバシー、コンプライアンス、データ保護の標準 27分
- Azure Cost Management およびサービスレベルアグリーメント 70分
- Azureのコストを計画して管理 43分
- SLAとサービスライフサイクルを調べて適切なAzureサービスを選択 27分
Azure Portal
多くの点で、Azure CLI で実行できることは Azure PowerShell とほぼ同じです。 主な違いは使用する構文です。 既に PowerShell または Bash に習熟している場合は、好みのツールを使用できます。
テスト1週間前
AZ900のラーニングパスを消化した
模擬試験を受ける
- データベースの種類がたくさんあって、名前と中身が一致しない
- 可用性ゾーンやら管理グループやら、最初のほうに学習したことが頭から抜けている
- ラーニングパスの知識チェックは1問選択形式ばかりだが、本屋に並んでいる参考書では該当するものをすべて選べ形式がある(まずい)
余談
料金計算ツールは、これからAzureツールを無料で使うための見積もり計算に使えそう
練習問題(問題集)( Azure Fundamentals(Azure基礎)AZ-900)
ほんとうに類似問題が出るのかわからないが利用してみる
解説にMSドキュメントへの関連リンクが置いてあって使いやすい
下17問間違えた。ギリギリ合格できるか・・・
Q3: Azure StorageはIaaS?PaaS?
Q9: 物理サーバのセキュリティ管理はベンダー責任
Q11: よくわからないが、専門性はパブリック以外に置く
Q15: 可用性ゾーン=AZ≒データセンター。西日本はAZが1個、東日本は3個
Q16: AIは関係ない。Apache Sparkと連携。Hadoopに比べSparkは後発であり、リアルタイム処理が得意だとか
Q17: 分析基盤のHDInsightはHadoopのHDかとおもったけど、、比較表を読んでもわからない。復習すること!
Q21: サブスクリプションの上限を引き上げるにはサポート要求する
Q29: Powershell Core だけでは足りない
Q30: 「AppService はサーバレス環境を提供する」がなぜ間違いなのか?
Q39: Service Health以外にもポータルから仮想マシンのところを見ると計画メンテ情報が得られる
Q44: IoTで取得したデータはDataLakeにいれる
Q45: AzureCLIはアンドロイドにはインストールできない
Q48: Public IP はそれ単体でリソースであることを知った
Q59: セキュリティトークンはADから取得する
Q61: タグを必須にすることもポリシーで規定できる
Q66: Security Center はクラウドディフェンダーに名称変更した。参照。ディフェンダーで検知し、Sentinelで対処する。
Q72: MS Learnで勉強しなかったような・・・。サポートプランの比較
海外のExamをChromeで翻訳して解説を読む
- 英語も平たんなので、十分に読める
- 1ページに5問掲載されていて、次ページに行くたびに「ロボットですか?」と聞かれる
- ひっかけ臭い問題だったり、どうしても納得いかない問題がある場合、併設されているディスカッションページを開くと、同じように愚痴っている人がいて気が収まる
Azure Storage はIaasか?PaaSか?
こちらでも議論されている。投票も真っ二つ。この問題は出題してほしくない・・。
試験前日までにAZ-900と名の付く参考書を4冊ほどパラ読み
模擬試験を解いた感じだと7割はいけそうな予感(フラグ?)
次はAZ-104を受けるのがよさそう
1つの部門の請求は1つにまとめたい
- Azureの請求単位はサブスクリプション
- 管理グループには複数のサブスクリプションが含まれる
- たとえば「総務部」という管理グループであっても、請求が分かれてしまう。(それはめんどくさい)
- 一方で、サブスクリプションにはタグをつけることができる
- 同一のタグを持つものをグループ化できる
- 論理的にサブスクリプション(請求)を1つにまとめることができる
- 同一のタグを持つものをグループ化できる
- 「総務部」管理グループは「Soumu」タグをつけよう!、と総務部長が決めれば、総務部にある複数のサブスクリプションを1つに(論理的に)まとめることができる
部長の命令を忘れてしまった!
- 人は忘れる生き物である
- 総務部のうっかり者が新たな仮想マシンを作ったときにSoumuタグをつけるのを忘れてしまった!
- サブスクリプション分だけ費用は払ったものの、タグで論理的にまとめた請求と計算が合わない
- (うっかり者が仮想マシンにタグをつけ忘れたので、その1台分の請求が論理的には計上されていないからだ)
タグ付けを忘れないようにポリシーにおまかせ
- 「あなたが作るリソースにはSoumuタグをつけなさい」という総務部長の命令をポリシーに書く
- そのポリシーを「総務」管理グループに適用する
- ポリシーの評価を行うことで、タグをつけ忘れた仮想マシンがあぶりだされる
- ポリシーを適用した途端に、すべてのリソースにタグ付けが自動的にされたりはしない
- あくまで「ポリシーに違反してますよ~」と教えてくれるだけ
AZ-900合格
試験中に悩んだ問題
-
ロックの継承
- ロックは継承される
-
サブスクリプション間で仮想マシンを移動する
- 条件によっては移動できる
-
帯域幅 の価格
- AZ内は無料
- 複数のサブスクリプションを1つに統合することはできる?
AZ-104に向けて
- テナント: Azure AD の信頼された専用インスタンス
- デバイスを Azure AD に参加させる
AZ-104のラーニングパス
- AZ-104:Azure 管理者向けの前提条件
- ツールを使用して Azure リソースを構成する
- Azure Resource Manager を使用する
- Azure Resource Manager テンプレートを使用してリソースを構成する
- PowerShell でスクリプトを使用して Azure タスクを自動化する
- CLI を使用した Azure サービスの制御
- JSON ARM テンプレートを使用して Azure インフラストラクチャをデプロイする
- AZ-104:Azure での ID とガバナンスの管理
- Azure Active Directory を構成する
- ユーザー アカウントとグループ アカウントを構成する
- サブスクリプションを構成する
- Azure Policy を構成する
- ロールベースのアクセス制御の構成
- Azure Active Directory に Azure のユーザーとグループを作成する
- Azure ロールベースのアクセス制御 (Azure RBAC) を使用した Azure リソースのセキュリティ保護
- Azure Active Directory のセルフサービス パスワード リセット を使用して、ユーザーがパスワードをリセットできるようにする
- AZ-104:Azure でのストレージの実装と管理
- ストレージ アカウントの構成
- BLOB ストレージを構成する
- ストレージ セキュリティを構成する
- Azure Files と Azure File Sync を構成する
- ツールを使用したストレージの構成
- Azure Storage アカウントの作成
- Shared Access Signature を使用して Azure Storage へのアクセスを制御する
- Azure Storage Explorer を使用してデータをアップロード、ダウンロード、管理する
- AZ-104:Azure のコンピューティング リソースのデプロイと管理
- 仮想マシンの構成
- 仮想マシンの可用性を構成する
- 仮想マシン拡張機能を構成する
- App Service プランを構成する
- Azure App Service を構成する
- Azure Container Instances を構成する
- Azure Kubernetes Service の構成
- Azure CLI を使用して仮想マシンを管理する
- Azure で Windows 仮想マシンを作成する
- Azure App Service で Web アプリケーションをホストする
- Azure Automation State Configuration を使用して仮想マシンの設定を保護する
- AZ-104:Azure 管理者向けの仮想ネットワークの構成と管理
- 仮想ネットワークを構成する
- ネットワーク セキュリティ グループを構成する
- Azure Firewall を構成する
- Azure DNS を構成する
- 仮想ネットワーク ピアリングを構成する
- VPN Gateway を構成する
- ExpressRoute と Virtual WAN を構成する
- ネットワーク ルーティングとエンドポイントを構成する
- Azure Load Balancer を構成する
- Azure Application Gateway を構成する
- Azure デプロイの IP アドレス指定スキーマを設計する
- Azure 仮想ネットワーク全体にサービスを分散させ、仮想ネットワーク ピアリングを使用して統合する
- Azure DNS でドメインをホストする
- ルートを使用して Azure デプロイでのトラフィック フローを管理および制御する
- Azure Load Balancer を使用してアプリケーションのスケーラビリティと回復性を向上させる
- AZ-104:Azure リソースの監視とバックアップ
- ファイルとフォルダーのバックアップを構成する
- 仮想マシンのバックアップを構成する
- Azure Monitor を構成する
- Azure アラートを構成する
- Log Analytics の構成
- Network Watcher を構成する
- Azure のアラートを使用したインシデント対応の向上
- Azure Monitor ログを使用して Azure インフラストラクチャを分析する
- Azure Monitor VM Insights を使用して仮想マシンのパフォーマンスを監視する
ラーニングパスAZ104をひと通り読み終えた
模擬試験サイトに着手した
設問1から議論が紛糾している(学びがある)
グローバル管理者
- 既存のAzureADでUser1とUser2がグローバル管理者
- User1があたらしいテナントを作成する
- このときUser2はあたらしいテナントに新規ユーザーを作成できるか?
答えは「できる」となっているが、議論では「できない」派が多数
ある人の意見を引用↓
外部テナントを作成すると、グローバル管理者自身がゲストアカウントになるため、別のアカウントを追加してグローバル管理者にする必要があります。ユーザー2が2番目のテナントにアカウントを作成するには、最初にゲストとして招待されてから、管理者ロールまたはユーザー管理者ロールの割り当てが行われる必要があります。
ユーザー管理者
ユーザーの追加、ユーザー管理者はできそうだけど、設問3の答えはNo!
ユーザーを追加または削除するには、ユーザー管理者またはグローバル管理者である必要があります。
動的グループ
- 「部長」グループに決裁権を与えるイメージ
- グループ自体は存続し続け、そのグループに属する人が半期ごとに入れ替わったりする
アクセスレビュー
全然頭に入ってなかった・・・
設問8 VNetの作成が禁止されているところでVMを作成できるか?
- ネットワークがつくれないRGでVMをつくって意味があるのかわからないが、つくれることはつくれる?
- サブスクリプションは管理グループ間を移動できるが、同時に2か所に属することはできない
組み込みロール
おもったよりもAzure 組み込みロールの話が多い
DevTest Labs Userは仮想マシンの起動・再起動などはできるが、Logic Appの作成はできない
Logic App Contributor ロジック アプリを管理できますが、アクセス権を変更することはできません。
Logic App Operator ロジック アプリの読み取り、有効化、無効化ができますが、編集または更新はできません。
kusto
Azure Monitor Log Analytics でのクエリはkusto
search
とパイプでつなぐ構文が特徴的
Kusto クエリは、データを処理して結果を返すための、読み取り専用の要求です。
DNS
実際の業務では必要なドメイン管理のところ
Blobストレージ
オブジェクトストレージデータは、Blobストレージおよび汎用v2(GPv2)アカウントのホット、クール、またはアーカイブにのみ階層化できます。汎用v1(GPv1)アカウントは、階層化をサポートしていません。
汎用v2アカウントは、Azure Storageのギガバイトあたりの最低容量価格と、業界で競争力のあるトランザクション価格を提供します。https://www.examtopics.com/exams/microsoft/az-104/view/10/
LRSは3回レプリケートされる
AzCopy を承認する
ストレージの種類 現在サポートされている認証方法
Blob Storage Azure AD および SAS
File Storage SAS のみ
File Sync手順
- プレミアムファイル共有はファイルストレージのみ
- hot/coolなどの階層化が汎用v2またはブロブストレージのみ
スケールセットの更新
アプリケーションのダウンタイムを最小限に抑えるため、アップグレードはバッチで行われ、いつでもスケール セットの 20% を超えてアップグレードされることはありません。
テスト2週間前
Microsoft AZ-104 Examは総ページ数の半分までしか実施できないとわかる。残り半分の問題にアクセスするためには、アカウント登録が必要。
面倒くさいので、登録はせず、時間があれば前半だけを復習する。
MS Learn AZ-104 知識チェック
知識チェックのページだけ復習し、頭に入っていないところを記録する。
- Azure ADのデバイスの参加とかIAMとかがあいまい
-
Azure AD価格比較
- IAMが使えるP1からが企業が使うレベルかと
-
Azure AD価格比較
- "全体管理者"なんてロールはないと思ったら、グローバル管理者のことだったっぽい
-
保存されているアクセス ポリシーの定義
- 条件付きアクセス(Azure AD P1以上)との合わせ技
保存されているアクセス ポリシーを使用すると、サーバー側でのサービス レベルの共有アクセス署名 (SAS) をさらに制御できます。 保存されているアクセス ポリシーを設定することで、共有アクセス署名をグループ化し、ポリシーによって規定された署名を詳細に制限できます。
- Azure File Sync 設問2間違えた。要復習!!
- AzCopy設問3間違えた!
- DSCと拡張機能の違いがわかっていない
- 論理的に削除された状態の項目は、14日間保管される。アクティビティ ログは 90 日間保持される
App Serviceプラン
知識チェックの答えが腑に落ちない。
Stanndardの容量は50GBだから、正解はPremiumではないのか?
テスト2週間前じゃなくて、来週がテストだった
無料国際認定試験参考書
Qiitaで紹介されていたのをみつけた。
MS Learnや日本語の参考書章末問題にくらべて、けっこう難しい
- 障害ドメインのMAXは3だけど、MAXでも指定できる?(なら更新ドメインもMAXでいい気がする・・)
-
カスタムドメインの登録方法
- Azure AD にカスタム ドメイン名を追加する
- ドメイン レジストラーに DNS 情報を追加する
- カスタム ドメイン名を検証する
- ストレージ同期サービスを作る手順
-
ストレージの種類
- プレミアムシェアはFileStorageのみ。アーカイブはBlobもしくは汎用ストレージ
-
Azure CNI
- 参考書でも大々的に触れられていない。覚えてなかった。
- 基本はkubenetでノードから先h(ポッド)はNATを介す。CNI(コンテナ ネットワーク インタフェース)をつかうと、ポッドに直接アクセスできる。
-
AWSをサイトリカバリーで移動
- 構成サーバとしてEC2をデプロイ→サイトリカバリーをインストール→仮想マシンへレプリケート
-
Express RouteとVPNの共存
- すでにゲートウェイサブネットは存在する
- Basic VPNゲートウェイはつかえない!。
- App ServiceのFreeは60分/日のCPUしかつかえない(Devは240min)→Basicで時間制限なし
- オンプレミスに素早くファイルを復元する
-
Azure Policyは実行できるときは実行する。準拠していない場合は"評価"でエラーになる。
- 常にエラーを確認→手動で変更かと思っていたが、いける場合はいくのがPolicy
- 新規リソースへのタグ付けは自動でできる
-
File Syncの2問目回答がまちがえている。
-
登録済みサーバーは複数のサーバー エンドポイントをサポートできますが、同期グループには、常に登録済みサーバーあたり 1 つのサーバー エンドポイントしか含めることができません。
-
- App ServiceのバックアップはStanndard以上が必要!
-
Policyの割り当て範囲と除外範囲
- サブスクリプション、管理グループ、リソースグループに割り当て
- リソースグループとリソースを除外
- 前回からのつづきで割り当ての問題はおかしい
- App Serviceとプランは同一リージョン
-
Standard HDD では、ローカル冗長ストレージ (LRS) のみがサポートされます。
- DNSとLinkが全然わかってない
- パブリックIPとロードバランサーのSKUを揃える
- file recovery
- file syncの同期周期
ファイル操作元 同期周期
サーバーエンドポイント 即時
クラウドエンドポイント (Azure Portal または SMB) 約 24 時間ごと
examtopicsだ
やっぱり解きやすい問題サイトは手持ちの章末問題にくらべて、実際の問題のほうが難しい(当たり前?)で不安になる
- ネットワークコントリビューターはバックエンドプールもヘルスプローブも設定できる
- 180日後に削除ときたら
-
有効期限ポリシーは、Azure Active Directory(Azure AD)のOffice365グループに対してのみ設定できます
-
- タグ付けポリシーは、先にあったものは変更かからない。後から追加したものはそのタグがつく
- リソースグループ間でAppServiceを移動すると、そのRGに割り当てられているポリシーを適用できる
- 質問#34Office365ライセンスがなくても動的割り当ては行われる
- blobとfileがリカバリーと同じリージョンにあっても、バックアップできるのはfileのみ
- アクセスの方法:SAS、blobのみAzure AD
試験当日(2022/7/2)
- 無事合格
- 8割以上は見たことのある問題だった(ネットにあるフリーの過去問)
- 近接通信配置グループという文字は初見だった
- 30分くらい余裕をもって終わり、見直しをして10分前に終わろうとしたらまだ問題が続いていた!
- ケーススタディのような情報がたくさん書いてあって設問が3つくらいあるやつ
- 最初に56問?100分ってあって、問題が46問くらいしかなくて違和感はあったものの、完了を押して次のフェーズに進むものとは・・・
試験 AZ-204: Developing Solutions for Microsoft Azure
- Azure App Service Web アプリを作成する
- Azure Functions を実装する
- BLOB ストレージを使用するソリューションを開発する
- Azure Cosmos DB を使用するソリューションを開発する
- サービスとしてのインフラストラクチャ ソリューションを実装する
- ユーザー認証と承認を実装する
- セキュリティで保護されたクラウド ソリューションを実装する
- API Management の実装
- イベントベースのソリューションの開発
- メッセージ ベースのソリューションを開発する
- 監視とログ記録をサポートするソリューションをインストルメントする
- キャッシュとコンテンツ配信をソリューション内に統合する
機能フラグ
ポータルの構成を変更することで
デプロイした後からでもアプリのふるまいを変えることができる
あとで実際に使ってみたい
スロットのルーティング
?x-ms-routing-name=
をself
またはstaging
にすることで、明示的にアクセス先を切り替えることができる
WebJobs
AZ-104では聞いたことがなかった
Functionsの前身になるらしい
Azure FunctionsとCosmos DBのバインド
これもあとで使ってみたい
Duarable Functions
"永続的な関数"
パターンがいくつかある。チュートリアルもしっかり用意されている
なんか内容が盛りだくさんすぎてついていけない
参考になりそうな記事👇
これは1度手を動かしてみないと、全然手のひらに乗った感じがしない
BLOBの種類
- ブロック:テキストとバイナリ
- 追加:ロギング
- ページ:VHD、仮想マシンのディスク
論理パーティションはパーティションキーで区切られる
az group create --location japaneast --name testrg
ストアドプロシージャ
データが格納される前後で実行される関数をJavascriptで書く
ここまでは.NETで完結していたのに、ついにJavascriptが出現してしまった
CosmosDBの整合性
RDBでいうところのリピータブルリードなどの区分けに相当するのか?
日本語だとまったくイメージがわかない。とりあえず5種あることだけ。
強固、有界整合性制約、セッション、一貫性のあるプレフィックス、最終的
テンプレートスペック
Azureポータルでは"テンプレートの仕様"と表現される
ARMテンプレートを保持しておくためのリソース
GraphAPI
いろいろAzureいじってみたけど、.NET コンソールから自分のプロファイル取得できず。
リベンジする。
マネージドID
種類 | 説明 |
---|---|
システム割り当て ID | アプリが削除されると消える。アプリは1つしかIDを持てない |
ユーザー割り当て ID | 独自のリソース。アプリは複数IDを持てる |
Azureポータルからはアクセス権を付与できなかったりするので、初心者には敷居が高い
Azure App Configuration
こんな機能があるのも初めて知った
無料版もある
Key Vault
- 認証のベストプラクティスは、リソースのマネージドID(ユーザー割り当てID)を使う方法
- キーボルトにアクセスできるIDをあらかじめ作成しておき、適宜アプリに割り当てる
- アプリにIDを割り当てられない場合は、Azure ADにアプリを登録する
Event Hub
無料プランが無いだけで、(気軽に試せないという理由で)学習意欲が下がる
Event Grid
こちらは一か月あたりの無料枠がある!なので演習ができる!
システムトピックでAppServiceのリソースが一覧に出てこなくて、画面を閉じた。
CDN
とくに書くことなし
Redis
NoSQLのインメモリDB
SQLiteのNoSQL版?
API Managementの演習
キュー
Storageのキューと、Service Busのキューの2種類がある
Service Busのメッセージングは3種
- キュー
- 取り出してしまう方法と、ロックして削除をマークする方法の2方式
- Peekとは、中身を取り出さずに見るだけの操作
- トピックおよびサブスクリプション
- Pub/Subパターン
- ルール/アクション
- プロパティに変更を加える?よくわからない
AMQPでシリアル化する
従来型の通信規格であるHTTPと比べ、通信時間が短縮できるAMQPは、IoT産業における作業の効率化に役立ちます。IoT用語辞典
演習はこちら
メッセージキューとは
AWSだけど・・・
キューがバッファになるから、処理系はピーク時のことを考えずに平常運転すればよい
ExampTopics
AZ-204は1~22ページまでは無料、23ページ以降は月26ドルの有料コンテンツ
とりあえず22ページまでを完璧にする
ログインすれば23ページ以降も無料かと思ったら、そうではなかった・・・
page1
質問2
- 「Azure Storage キュー→Azure Function」 を Kubernetes に移行
- Kubernetes カスタム リソース定義 (CRD)
質問3
GitHubを使ったAppServiceのデプロイ。実用的。
質問4
- ユーザーがWebアプリに画像をアップロード
- WebアプリがBlobストレージに画像を保存
- 保存されたらFunctionsがモバイル要画像を生成
Event Gridを使う?
関数アプリがアイドル状態になっている場合、新しい BLOB の処理が最大で 10 分間遅延する可能性があります。
page2
質問5
- デプロイスロットの自動スワップ設定
- configファイルの
applicationInitialization
質問8
質問4と同じ
page3
質問9
クライアント照明書はリクエストヘッダーにBase64エンコーディングされている
質問10
- Linux 上の App Service でコンテナーを実行
- まだリソースグループは無い
- 3つの Azure CLI コマンドは?
グループ作成→プラン作成→アプリ作成
質問11
Docker イメージをホストし、カスタム ドメインを App Service Web アプリにマップする
模範解答と議論が食い違っているが
おそらく「変数定義→アプリ作成→コンテナセット→ホスト名設定」だと思う
質問12
- Azure Functions ホストのインスタンスを動的に追加および削除
- 自動スケール
- コールド スタートを回避(インスタンスが常にウォーム)
- 事前ウォーミングはプレミアムプランのみ
- VNet に接続
- プレミアムプランのみ
- Functionsが削除された場合は、Azure Key Vault インスタンスへの認証を削除
プランは「プレミアム」にして、システム割り当てIDをつくり、キーボルトのポリシー変更
page4
質問15
Javascriptの問題、雰囲気で解ける気がする。アンスコ2連続の意味は分かってない
getRequest
→(!"tip" in i)
→setBody
最後ローカル変数r
にserBody
したところで何になるのだろうか?
質問16
Duarable Function の非同期APIで実現可能か?
このパターンを実装する一般的な方法は、HTTP エンドポイントによって実行時間の長いアクションをトリガーすることです。
要件「アプリがタイムアウトせず、BLOB データを処理することを確認する必要があります。」に対して、Functionsのタイムアプトは230秒でタイムアウトする
関数アプリのタイムアウト設定に関係なく、HTTP トリガー関数で要求に応答するためにかかる最大時間は 230 秒です。
より長い処理時間では、Durable Functions async pattern の使用を検討するか、実際の作業を遅らせて、即座に応答を返します。
page5
質問17
またもやAzure Functionの230秒問題に係る問題
ディスカッションを読む限り、「Duarable Functionが最適解だけどService Busで受けるのもあり」という感じ
質問18
質問17と同じ問題
App Serviceのプラン変更では対応できない
質問19
これも既出の問題
ユーザー→Web サービスに写真アップ→Blob ストレージに保存
この先にAzure Functionへ処理が移動することは正解
途中でEvet Gridを挟む場合、汎用v2とBlobのみがEvent Gridに対応していることに注意する
イベントの統合をサポートしているのは、StorageV2 (汎用 v2) 、BlockBlobStorage、および BlobStorage の種類のストレージ アカウントだけです。 Storage (汎用 v1) では、Event Grid との統合はサポート "されていません"。
質問20
Blobストレージのあれこれを保存するには、change feed
(変更フィード)を有効にする
page6
質問21
Dockerfileの書き方
- FROM - WORKDIR - COPY - RUN - CMD
の順
質問22
Blobストレージの格納後にAzure Functionを発動するには
常にON状態のプラン(≒従量課金)を選択し、トリガーを機に発動する
トリガーとバインドの違い
質問23
ARMテンプレートの穴埋め
-
concat
の第一引数にはcopyIndex()
関数 -
copy
構文でリソースを複数生成 - VMの依存
dependsOn
には各リソース
質問24
HTTPトリガーしか使ったことないからわからなかったけど
キューをトリガーとした場合、5回試行&バッチ16がデフォルトらしい
5回試行してダメだった場合、有害キュー=ポイズン(毒)に移動する
page7
質問25
CosmosDBの整合性レベル
両極端のStrong
とEventual
以外がまだあやふや
質問26
チーム全体に整ったVMを配布する場合は、Powershellでジェネレイトし、そのイメージはBlobに保存する
質問27
プロジェクトファイルにPreBuild
を追加と、リポジトリに.deployment
を置くのが正解らしいけど、要検証!!
質問28
ARMテンプレートをエクスポートして、他のリージョンへコピーする作業
順不同のように思える選択肢があり、議論がまとまっていないようにみえ、正解わからず
page8
質問29
VMのFirewallの構成にはコマンド実行、Powershellスクリプトの実行はカスタムスクリプト拡張機能
質問30
App Serviceのデプロイ手順。Powershellコマンドになったところで、難しくはない
質問31
VMにシステム割り当てIDを付与する
質問32
既出。Azure Functionの従量課金プランはコールドスタート
Strong
Bounded staleness
Session
Consistent prefix
Eventual
page9
質問33
スワップ時のウォームアップについて
applicationInitialization
の記述がないから「いいえ」かと思ったら、議論では「はい」が優勢っぽい
質問34
Powershellスクリプトの問題。長い割には易しい問題。
質問35
rustを使ってAzure FunctionでBlobストレージと接続もする
カスタムハンドラーでrustが使える。拡張バンドルについては要復習!!
質問36
AzureコンテナAppのログを永続化する方法
WEBSITES_ENABLE_APP_SERVICE_STORAGE=true DIAGDATA=/home
page10
質問37
Application Gatewayの問題。全然わからなかった!
- [アプリ サービスに使用]
- [バックエンド パスをオーバーライドする]
証明書を登録する必要はない!
ここから質問セット2
質問1
- CosmosDBはTableAPIが使える
-
gameId
がパーティションキーであることは問題文からは読み取れない
質問2
AcquireLeaseAsync
の引数がnull
だから無限リースなのか・・・まんまと引っかかった。(というか、この関数を知らない状態で挙動を推測するのは酷)
If null, an infinite lease will be acquired.
質問3
アーカイブ層のリハイドレーションは15時間
page11
質問4
Bounded Staleness
単一書き込みリージョンで構成されているマルチリージョン Cosmos アカウントの場合、Azure CLI または Azure portal を使用して自動フェールオーバーを有効にします。
Region障害に耐えるよう、マルチリージョンにする
どうもやっぱり、この5つの整合性がまったくわからない。変な訳語のせいでもある。
質問5
linux に v1.0.0 指定で、-docker-registory-serverとユーザ/パスも指定
質問6
質問7
- FetchAttributesAsync
- Metadata.Add
- SetMetadataAsync
// Add metadata to the dictionary by calling the Add method
metadata.Add("docType", "textDocuments");
// Set the blob's metadata.
await blob.SetMetadataAsync(metadata);
page12
質問8
イベントをキャプチャするのはEventGridではなくEventHub
質問9
メッセージを受信する.NETのオブジェクトはQueueClient
クラス
質問10
質問が壊れている気がする
質問11
.NET APIでNoSQLに接続するには、CosmosClient
を使う
page13
質問12
ストレージ間でデータを自動でコピーするにはAzCopy
質問13
Instance Metadata Serviceからの応答をJsonデシリアライズしてトークンを得る
質問14
- ORDER BYは
compositeIndexes
- DESCは直前の1列のみ修飾する。デフォルトはASC
質問15
”高速道路ごと”と書いてある。それがPK
page14
質問16
Kubernetes 難しい・・・
デプロイはHelm、確認(View)はKubeCtl、ルーティングはイングレス
質問17
"何も通さないフィルター"としてCorrelationFilter
が使える
質問18
CDNの4選択肢並べ替え問題
質問19
NoSQLのパーティションキーはカーディナリティが高いモノを選ぶ
乱数やハッシュ値がサフィックスになっている、など
page15
質問20
CosmosDBを.NETで操作する問題。簡単。
質問21
AzureADにアプリを登録する問題。簡単。
※ディスカッションのほうが正しい回答だと思われる。
質問22
多要素認証を使うには、AzureADをPremiumプランにして条件付きアクセスポリシーを作成
質問23
CosmosDBオペレーターはアカウントやコンテナを作成できるが、キーにはアクセスできない
記載誤り:「質問21~質問23」は質問セット3の質問1~質問3をさす
page16
質問4
AppServiceの承認
「はい」が正解のようにもみえるけど、「いいえ」が多数 (承認の機能がないから?)
日本語が難しい
質問5
つづきの問題
質問6
こちらもつづきの問題。別の解決方法。
質問7
論理削除を有効にして、パージ保護を強制する
page17
質問8
API Managementの認証
質問9
AzureAD アプリケーションへのAPI許可
user_impersonation
と委任が答え
質問10
ASP.NETミドルウェアの問題
認証、認可、機能フラグを使えるようにする
質問11
Appアプリとユーザー割り当てマネージド IDを組み合わせてキーボルトの秘密情報にアクセスする問題
page18
質問12
受付フォームの情報ごと公開鍵で暗号化して、DBに保存する
質問13
続きの問題。DBデータは暗号化されていても、ダウンロード先では複合されてしまう
質問14
続きの問題。意味がよくわからない。
質問15
VMの暗号化。問題数が多いだけで、内容は簡単。
page19
質問16
API の呼び出し元は、資格情報を API に送信してはなりません。
資格情報を送れない→AzureのマネージドIDをアプリに付与し、マネージドIDで認証
(システム割り当てでもユーザ割り当てでも、どちらでもよい)
質問17
GetとSetを繰り返しつかう
質問18
質問19
続きの問題。
Invoke-RestMethod コマンドレットを実行して、Azure リソース エンドポイントのローカル マネージド ID に要求を行います
page20
質問20
リクエストヘッダーのHTTP_USER_AGENT
を見ればiPhone
まで特定できる
質問21
既出。ユーザの認証をする問題
質問22
既出。
Invoke-RestMethod コマンドレットを実行して、Azure リソース エンドポイントのローカル マネージド ID に要求を行います。
質問23
OAuthをつかってアプリへのアクセス制御する
"oauth2AllowImplicitFlow": false,
page21
質問24
Blobのコピー自動化は、EventGridでStart-AzureStorageBlobCopy
質問25
FrontDoorキャッシュから、特定のファイルを削除する必要がある
→単一パスで指定して消す
質問26
既出。マネージドIDでAzureFunctions
質問27
認証なしでいくつかの Web サービスを呼び出すことができる
jwtのトークンで認証する
page22
質問28
APIマネージメント
入ってきたものをキャッシュする
すぐに試せそうなので、あとでやってみる!
質問29
SecretClient
のデフォルトクレデンシャルでキーボルトに接続できる
CloudClients
クラスは、主語が大きすぎるし、そもそも複数形だから違うとわかる
質問30
WebAppからユーザ情報を更新する
WebAppにAPIの許可をする
- MSAL
- GraphAPI
AZ204ラーニングパスでGraphAPIつかったときに、うまくいかなかった気がする
MSALが関係しているのだうか・・・要検証!
質問31
SASが侵害されたときの対処
キーを取り消して、RBACを見直す
IT EXAMS
アカウントを使ってログインすると、ケーススタディのほうの問題もできる
普通の質問のほうは、ざっと見た感じだとExamTopicsと同じ
ケーススタディ1
質問1
Azure コンテンツ配信ネットワーク (CDN) を使用して、動的コンテンツのパフォーマンスを最大限に高めながら、待機時間とコストを最小限に抑えます。
CDNの種類 Standrd Akamai の動的サイトアクセラレーション
質問2
VMのAzure BackupとNetworkアクセラレーション
質問3
関数アプリがタイムアウトする
⇒実行時間の長い HTTP 非同期 API Durable Functions を使用する
質問4
関数アプリを従量課金にせず、プレミアムプランにして常時ONにする
質問5
Azure Container RegistryとEventGridを連携して、イメージが更新されたら検証するRepositoryUpdated
質問6
AKSにビルドしてエイリアスしてプッシュ
質問7
ClaimsPrincipal
クラスをヘッダーから取り出す
Microsoft.AZ-204J.v2022-01-26.q97
質問1
Azure Functionsの遅延問題。単純にforeach
ループを並列にする
質問2
DBのデータをマネージャーだけ閲覧可能にする→Masking
質問3
SpanContextなのか、CorrelationContextなのか?
質問4
レストラン配達
Service BusのNamespaceを1つ。トピックをレストランごとにたてて、ドライバーが購読する
質問5
EventGridからのメッセージをService Busのトピックで受信する
質問6
質問12
領収書処理の同時実行を防ぐためにBLOBリースをつかう
質問14
マイクロソフトにサポート依頼をするために
Set-AzRoleDefinition -InputFile "C:\CustomRoles\ReaderSupportRole2.json"
読み取りread
権限をサポートに授ける
質問15
Redisはキーバリュー型であるからSetString(key,value)
でキャッシュを消す
質問21
SearchServiceClient
ではなくSearchIndexClient
をつかう
質問22
AKSクラスター内のAzureリソースを管理するには?
イングレスで定義されたネットワークからのトラフィックのみ受信可能にする
質問24
Service BusのSessionID
はReplyToSessionID
(応答先)に、
MessageID
はCorrelationID
(一意制)に、それぞれ割り当てる
質問25
MSAL、証明書を使った認証→ConfidentialClientApplicationBuilder
久しぶりにExam Topicsにアクセスしたら
AZ-204 の質問は、2022 年 9 月 7 日に最終更新されました。
とのこと!
page1
質問1
VMを移動するには再デプロイする
質問2
パスワードを平文で保存しないためには、キーボルトとアクセスポリシー
質問3
kubectl apply -f ./my-manifest.yaml # リソースを作成します
質問5
WebジョブなのかFunctionsなのか・・・
もし本番で出題されたらFunctionsを選びたくなる
page2
質問6
障害ドメインの数はMAXにする。そもそも10や30などは規定値外!
質問7
更新ドメインの最大値は20
質問8
SendGrid bindingで電子メールをFunctionsから送る
質問9
mongoDB→CosmosDBはAzCopyではなくmongorestore
をつかう
質問10
Webアプリとキーボルトの組み合わせときたら、マネージドID
page3
質問11
モバイルAppのOAuth・・リダイレクトURIがあればいいらしい
(下線部が表示されてないから問題文がよくわからない)
質問12
キーボルトの90日間保持→論理削除とパージ保護
質問13
質問が壊れている?
質問14
AD統合認証をつかってSSMSからAzure SQL DBに接続できる!
質問15
キーボルトの90日保護のスクリプト版
選択肢4は論理削除をfalse
にしているから誤り
page4
質問16
"avg Percentage CPU > 90"
、5分間で:--window-size
質問17
Redisはキーバリュー型であるから、ビデオのキャッシュには不向き
質問18
つづきの問題。CDNをつかって配信することで、ユーザ体験を向上させる
質問19
続きの問題。SAN(ストレージエリアネットワーク)では実現できない
質問20
Webアプリの自動スケーリングはD1(開発)ではなく標準プランで行う
page5
質問21
アラートはメトリック信号
質問22
AzureSearchで正規表現を使用してインデックスを検索
→QueryType
質問23
LogicAppはLogic App Code View または Logic Apps Designerを使う
とくに開発者はコードビュー、一般ユーザはデザイナをつかう
質問24
API Managementの認証
HTTPエンドポイントに対しては基本認証(ID,PASS)もしくはクライアント証明書
質問25
続きの問題
page6
質問26
続きの問題
質問27
続きの問題
質問28
AzureSearchで距離や価格の範囲で絞り込む場合は、Filter
プロパティをつかう
質問29
既出。開発者がLogicAppを編集する場合はコードビューをつかう
質問30
IndexBatchを渡す
SearchIndexClient indexClient = CreateSearchIndexClient(configuration);
page7
質問31
EventGridでトピックとサブスクリプション
質問32
C++を使ったAzureFunctionsのhost.jsonの書き方
typeはhttpでカスタムハンドラーをつかう。
以上、32個の質問が9/7に新規追加された