こんにちは。 ロールベースのAZ認定資格をコンプリートした荒井です。
社内の若手エンジニアを中心にAZ-103合格者が溢れ、さらにHR採用担当もAZ-103合格し始めたので、いよいよ次の試験対策ブログを作らねばと思いながら、はや数カ月。やっと試験対策ブログを綴ることにしました。
AZ-300は2020年9月30日まで受験可能です。こちらのブログをご覧の方は、ぜひ9月中に合格を目指していただきたいです。では2020年10月以降は、どうなるか。AZ-300の後継試験であるAZ-303で日本語試験が提供され切り替えが完了すると思われます。
「ちょっと待てよ。Azure Solutions Architectエキスパート認定を取るには、AZ-301も必要じゃないか。2020年9月30日までにAZ-301も取得しないとだめなの?今からAZ-300、AZ-301ダブル合格、間に合うかな(不安)」
と思った方!ご安心ください。新旧試験混在でも認定資格は得られます。
マイクロソフトラーニングブログで以下のような情報が提示されていますので、学習期間が2020年9月30日を跨いでも大丈夫です。これで安心して、Azure Solutions Architectエキスパート認定を目指せますね!
AZ-300またはAZ-301にすでに合格している場合は、新しいバージョンの補足試験を受けることができます。次の試験の組み合わせは、Azure Solutions Architect Expert認定の取得に有効です。AZ-300およびAZ-301。AZ-300およびAZ-304; AZ-301およびAZ-303; またはAZ-303およびAZ-304。(合格した試験を確認するには、成績証明書を確認してください)。
引用元:Azureソリューションアーキテクト向けの新しいベータ試験AZ-303およびAZ-304
受験するこれらの試験の組み合わせに関係なく、合格すると、Azure Solutions Architectエキスパート認定を取得し、2年間有効です。
さてさて、前置きが長くなりましたが、早速試験対策の内容に入っていきましょう!
AZ-300 概要
AZ-300(AZ-303):Microsoft Azure Architect TechnologiesはApp&Infraカテゴリの最上位にあたる試験です。
出題内容は、Microsoft Azure で実行されるソリューションの設計と実装全般に関する専門知識を問われます。またビジネス要件を満たすために非機能面(セキュリティ、ビジネス継続性、障害回復、データ管理、予算編成、ガバナンスなどIT 運用関連)の知識も問われます。これだけ聞くと「範囲が広く、難しそうだな」と感じる方もいると思いますが、ご安心ください。
既にAZ-103を合格した方であれば、AZ-300試験はチャレンジしやすい試験となっております。過去ブログで各Azure試験の出題範囲のイメージを紹介しましたが、ご覧のとおりAZ300の出題範囲をAZ-103がけっこうカバーしております。(あくまでの個人的な意見です)
つまり、AZ-103合格者は断然有利です!!!
(あくまでの個人的な意見です[再掲])
AZ-300試験の基本情報。AZ-103試験やその他試験とそれほど変わりません。
前提資格 | 無し。強気な方は、最初から直AZ-300受験もOK! |
試験時間 | 180分 |
問題数 | 約40~60問程度 |
合格点 | 700 点(1000 点満点) |
試験形式 | 筆記/実技 |
AZ-300 試験形式
大きく分けると試験は筆記/実技形式で出題されます。試験形式はAZ-103試験とそれほど変わりません。
まずは筆記試験の基本情報です。
筆記試験 | 内容 |
選択問題(2択) | 問題に対する提案が問題解決に至っているか問われる 2択問題。2択問題は連続出題されます。 問題は共通で提案が異なる形で正誤を解答するイメージです |
選択問題(4択) | 問題を読んで適切な回答を4択から正解を選ぶ形式の問題。 |
並べ替え | 問題を解決する為に与えられた選択肢を正しい順番に 並び替える問題。 3つ~6つ程度ある選択肢から正しい順番で並び替えをします |
穴埋め | 穴埋めになった文章やソースコードに正しい選択肢を 埋めていく問題です。 3つ~6つ程度ある選択肢から正解を埋めていきます。 |
シナリオ | ストーリー仕立ての問題。お客様の要件や現在の構成などを 理解し、問題を解決する為に何が適切か選択する問題です。 |
では、次に実技試験の基本情報です。巷では「試験では実技が無かっ…ゴフォッゴフォン」のような都市伝説を耳にします。信じるかどうかはあなた次第です!個人的には実技領域も押さえて受験してほしいです。
実技試験 | 内容 |
新規のリソース作成 | Azure Portalにて新規リソースを作成する問題です。 単純に1リソースを作成し完了する問題もあれば複数の リソースの作成と設定が要求される問題などがあります |
既存リソースの変更 | Azure Portalにあるリソースグループの既存リソースに 対して変更を加える問題です。 |
以上が AZ-300の概要と試験形式の説明となります。
AZ-300 試験対策
AZ300試験対策ブログでは、公式サイトのAZ-300のスキルの評価を基にして、参考情報をまとめて、学習コンテンツ的なものにしたてます。
では、早速始めていきます!まずはAZ-300の全体像から!!
評価されるスキル
引用元:試験 AZ-300: Microsoft Azure Architect Technologies - 評価されるスキル
インフラのデプロイと設定 (40-45%)
ワークロードとセキュリティの実装 (25-30%)
アプリの作成とデプロイ (5-10%)
認証とセキュアなデータの実装 (5-10%)
クラウド用およびAzure用ストレージの開発 (15-20%)
評価されるスキルの記載だけでは、AZ-103と連関がつきずらいため、ざっくり整理しました。
【AZ-300試験とAZ-103試験の重複割合】※個人的な意見です
インフラのデプロイと設定 (40-45%)
⇒ AZ-300:1割 AZ-103:9割
ワークロードとセキュリティの実装 (25-30%)
⇒ AZ-300:2割 AZ-103:8割
アプリの作成とデプロイ (5-10%)
⇒ AZ-300:1割 AZ103:3割 AZ-203:6割
認証とセキュアなデータの実装 (5-10%)
⇒ AZ-300:1割 AZ103:6割 AZ-203:2割 AZ-500:1割
クラウド用およびAzure用ストレージの開発 (15-20%)
⇒ AZ-300:2割、AZ-103:2割、AZ-203:6割
AZ-103経験者の方は、「アプリの作成とデプロイ」と「クラウド用およびAzure用ストレージの開発」部分を押さえば、合格に近づくと思います!
AZ-300 試験対策(詳細)
では、試験対策の詳細に入ります!!評価されるスキルごとに参考情報とポイントを羅列していきます。
インフラストラクチャの導入と構成(40〜45%)
リソースの利用と消費を分析する
-リソースの診断設定を構成する
-リソースのベースラインを作成する
-アラートを作成してテストする
-サブスクリプション全体でアラートを分析する
-サブスクリプション全体のメトリックを分析する
-アクショングループを作成する
-未使用のリソースを監視する
-支出を監視する
-支出に関するレポート
-ログ検索クエリ機能を利用する
-Azure Monitorログでアラートを表示する
-Azure Monitor Workbooksを使用して診断データを視覚化する
参考情報
・コスト分析を使用してコストを調査および分析する
[補足] コスト分析では、タグによるフィルタや表示されたコストレポートがエクスポートできます。便利ですよね。コスト分析、フィルタ、エクスポートの手順は押さえておきましょう。
・Azure Monitor の自動スケーリング
[補足] 本カテゴリは、AZ-103試験対策を講じていれば、AZ-300対策にとって代わると思います。学んだことが揮発しないように技術は定期的に磨いてキープしましょう!
・アクション グループの作成および管理
[補足] アラートを検知して特定の方法で通知などを行う時はアクショングループを使います。電子メール発報という1つのアクショングループに対して、複数のルール(閾値や検知したい状態)を紐づけてるなどして管理します。アクションを増やす場合はアクショングループも増やさなければいけません。
ストレージアカウントを作成して構成する
-ストレージアカウントへのネットワークアクセスを構成する
-ストレージアカウントを作成して構成する
-共有アクセス署名を生成する
-ストレージにAzure AD認証を実装する
-Azure Storage Explorerをインストールして使用する
-アクセスキーを管理する
-Azure Monitorログを使用してアクティビティログを監視する
-Azureストレージレプリケーションを実装する
-Azureストレージアカウントのフェールオーバーを実装する
参考情報
・Azure Blob Storage のライフサイクルを管理する
・Shared Access Signatures (SAS) を使用して Azure Storage リソースへの制限付きアクセスを許可する
[補足] ストレージへのアクセスをセキュアにできるSAS。参照可能にする期間や、読み込み、書き込み、削除などの操作も制御可能です。
WindowsおよびLinux用のVMを作成して構成する
-高可用性を構成する
-監視を構成する
-ネットワークを構成する
-ストレージを構成する
-仮想マシンのサイズを構成する
-専用ホストを実装する
-スケールセットの展開と構成
VMの展開を自動化する
-Azure Resource Managerテンプレートを変更する
-新しいVMの場所を構成する
-VHDテンプレートを構成する
-テンプレートから展開
-デプロイをAzure Resource Managerテンプレートとして保存する
-WindowsおよびLinux VMを展開する
仮想ネットワーク間の接続を作成する
-Vnetピアリングを作成して構成する
-VnetからVnetへの接続を作成および構成する
-仮想ネットワーク接続を確認する
-仮想ネットワークゲートウェイを作成する
参考情報
・Azure のハブスポーク ネットワーク トポロジ
・仮想ネットワーク ピアリング
[補足] ピアリングめっちゃ便利ですよね。仮想ネットワークが既に複数ある場合にピアリングするケース。ピアリング済みの仮想ネットワークがある時に名前空間をちょろり修正したいなぁ的なケース、色々なケーススタディがあると思いますが、やり方、制約含めて、この際、全部覚えちゃいましょう。
[補足]ハブスポークで構成した時、ハブ⇔スポークはおしゃべりできますが、スポーク⇔スポークはデフォルトではおしゃべりできません。明示的におしゃべりできるようにトラフィック転送してあげる必要があることに注意ですね。
・仮想ネットワーク ピアリングの作成、変更、削除
・仮想ネットワーク トラフィックのルーティング
・仮想ネットワーク ピアリングの VPN ゲートウェイ転送を構成する
仮想ネットワークの実装と管理
-プライベートIPアドレス指定を構成する
-パブリックIPアドレスを構成する
-ネットワークルートを作成および構成する
-ネットワークインターフェイスの作成と構成
-サブネットを作成して構成する
-仮想ネットワークを作成して構成する
-ネットワークセキュリティグループとアプリケーションセキュリティグループを作成および構成する
参考情報
・仮想ネットワークの作成、変更、削除
・仮想ネットワーク サブネットの追加、変更、削除
・パブリック IP アドレスの作成、変更、削除
Azure Active Directoryを管理する
-カスタムドメインを追加する
-Azure AD Identity Protectionを構成する
-Azure AD参加を構成する
-セルフサービスパスワードリセットを構成する
-条件付きアクセスポリシーを実装する
-複数のディレクトリを管理する
-アクセスレビューを実行する
参考情報
・オンプレミスの Active Directory ドメインと Azure Active Directory を統合する
・カスタム ドメインにおける Web アプリの DNS レコードの作成
・Identity Protection ポリシー
・Azure Active Directory のセルフサービス パスワード リセットを使用して、ユーザーが自分のアカウントのロック解除またはパスワードのリセットを実行できるようにする
・Azure Active Directory ポータルを使用してカスタム ドメイン名を追加する
・Azure AD Privileged Identity Management とは
・Privileged Identity Management で Azure AD ロールのアクセスをレビューする
ハイブリッドIDの実装と管理
-Azure AD Connectをインストールして構成する
-フェデレーションを構成する
-シングルサインオンを構成する
-Azure AD Connectの管理とトラブルシューティング
-パスワードの同期と書き戻しのトラブルシューティング
仮想マシン(VM)を使用するソリューションを実装する
-VMのプロビジョニング
-Azure Resource Managerテンプレートを作成する
-VM用にAzure Disk Encryptionを構成する
-Azure Backup for VMを実装する
ワークロードとセキュリティを実装する(25-30%)
サーバーをAzureに移行する
-Azure Migrateを使用してサーバーを移行する
サーバーレスコンピューティングを構成する
-オブジェクトの作成と管理
-ロジックアプリリソースを管理する
-Azure Functionアプリの設定を管理する
-イベントグリッドの管理
-サービスバスの管理
アプリケーションの負荷分散を実装する
-アプリケーションゲートウェイを構成する
-Azureフロントドアサービスを構成する
-Azure Traffic Managerを構成する
参考情報
・Traffic Manager のルーティング方法
[補足] AZ-103はリージョン内、AZ-300はリージョン間に関する理解が求められますので、Traffic Managerは押さえておきましょう!
・Azure Application Gateway の機能
[補足] AZ-103は負荷分散と言えば、Azure Load Balancerでしたが、AZ-300では、加えてAzure Application Gatewayの理解が求められます。Azure Application Gatewayはどんな機能が提供されているのか、ユースケースは何かなど概要は押さえておきましょう!SSL/WAF/ルーティング/ホスティングあたりは学習推奨ポイントです。
オンプレミスネットワークをAzure仮想ネットワークと統合する
-Azure VPNゲートウェイを作成して構成する
-サイト間VPNを作成して構成する
-ExpressRouteを構成する
-仮想WANを構成する
-オンプレミスの接続を確認する
-Azureとのオンプレミス接続のトラブルシューティング
参考情報
・ExpressRoute 回線とピアリング
[補足] AZ-103よりやや深めの領域までAZ-300では理解が求められます。概要からもう一歩踏み込んだ学習をしてみましょう!
・VPN フェールオーバー付きの ExpressRoute を使用してオンプレミス ネットワークを Azure に接続する
[補足] AZ-300だったか、AZ-301で出題されたか既に記憶が怪しいのですが、コスパよく高可用性ネットワークを構築する時は、サブでVPN引いておけば障害起きてもダイジョーブ。と覚えておきましょう!(汗)
多要素認証を実装する
-MFAのユーザーアカウントを構成する
-詐欺警告を構成する
-バイパスオプションを構成する
-信頼できるIPを構成する
-検証方法を構成する
参考情報
・Azure Multi-Factor Authentication の設定を構成する - 信頼できる IP
[補足] 信頼できるIPは、デフォルトだとパブリックIPのみ有効であることに注意しましょう。
役割ベースのアクセス制御を管理する
-カスタムの役割を作成する
-ロールを割り当ててAzureリソースへのアクセスを構成する
-Azureへの管理アクセスを構成する
-RBACのトラブルシューティング
-Azureポリシーを実装する
-RBACの役割を割り当てる
アプリを作成してデプロイする(5-10%)
PaaSを使用してWebアプリを作成する
AzureアプリサービスWebアプリを作成する
-APIのドキュメントを作成する
-コンテナー用のApp Service Webアプリを作成する
-WebJobsを使用してApp Serviceバックグラウンドタスクを作成する
-診断ログを有効にする
コンテナーで実行するアプリを設計および開発する
-リソースの診断設定を構成する
-Dockerfileを使用してコンテナーイメージを作成する
-Azure Kubernetesサービスを作成する
-Azure Container Registryにイメージを公開する
-Azureコンテナーインスタンスで実行されるアプリケーションを実装する
-コードを使用してコンテナー設定を管理する
認証を実装してデータを保護する(5-10%)
認証を実装する
-証明書、フォームベースの認証、トークン、またはWindows統合認証
-Azure ADを使用して多要素認証を実装する
-OAuth2認証を実装する
-Azureリソースのサービスプリンシパル認証にマネージドIDを実装する
安全なデータソリューションを実装する
-保存中および転送中のデータを暗号化および復号化する
-Always Encryptedによるデータの暗号化
-Azure Confidential Computeを実装する
-SSL / TLS通信を実装する
-KeyVault APIを使用して、キー、シークレット、および証明書を作成、読み取り、更新、および削除します
クラウドとAzureストレージ用に開発する(15-20%)
メッセージベースの統合アーキテクチャを構成する
-メールを送信するようにアプリまたはサービスを構成する
-イベントグリッドを構成する
-Azureリレーサービスを構成する
-通知ハブを作成して構成する
-イベントハブを作成して構成する
-サービスバスの作成と構成
自動スケーリング用に開発する
-自動スケーリングのルールとパターン(スケジュール、運用/システムメトリック)を実装する
-シングルトンアプリケーションインスタンスに対処するコードを実装する
-一時的な状態に対処するコードを実装する
Cosmos DBストレージを使用するソリューションを開発する
-適切なAPIを使用してデータを作成、読み取り、更新、および削除する
-パーティションスキームを実装する
-運用に適切な整合性レベルを設定する
リレーショナルデータベースを使用するソリューションを開発する
-リレーショナルデータベースのプロビジョニングと構成
-Azure SQLデータベースのエラスティックプールを構成する
-Azure SQL Databaseマネージドインスタンスを実装する
-コードを使用してデータテーブルを作成、読み取り、更新、および削除する