$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Azure Verified Moduleを触って分かった注目ポイント/azure-verif...
Search
みずほリサーチ&テクノロジーズ株式会社 先端技術研究部
October 04, 2024
Technology
1
2.5k
Azure Verified Moduleを触って分かった注目ポイント/azure-verified-module-begin
「Japan Azure User Group14周年イベント」での登壇資料です。
イベントURL:
https://jazug.connpass.com/event/327273/
みずほリサーチ&テクノロジーズ株式会社 先端技術研究部
October 04, 2024
Tweet
Share
More Decks by みずほリサーチ&テクノロジーズ株式会社 先端技術研究部
See All by みずほリサーチ&テクノロジーズ株式会社 先端技術研究部
NetworkXとGNNで学ぶグラフデータ分析入門〜複雑な関係性を解き明かすPythonの力〜
mhrtech
3
1.7k
AWS CDKでホストゾーン一式を管理しよう!/nw-jaws15
mhrtech
3
880
Fin-JAWS第38回reInvent2024_全金融系セッションをライトにまとめてみた
mhrtech
2
340
AWS CDKでデータリストアの運用、どのように設計する?~Aurora・EFSの実践事例を紹介~/aws-cdk-data-restore-aurora-efs
mhrtech
6
2.6k
BLEA v3.0.0の新しいベストプラクティスを取り入れた効率的なAWS CDK開発/jawsug_cdk16
mhrtech
3
1.1k
あなたのアプリケーションをレガシーコードにしないための実践Pytest入門/pyconjp2024_pytest
mhrtech
7
5.6k
静的サイトのCI/CDでも侮るなかれ!Docs as Codeに沿ったセキュアな開発プロセスの実践/secure-docsascode-cicd-for-static-sites
mhrtech
14
4.3k
Kubernetes でワークフローを組むなら cdk8s-argoworkflow がよさそう!/ cdk8s-argoworkflow is great!
mhrtech
4
2.5k
IaCでセキュリティを強化しよう!~IAMが苦手な開発者でも簡単に権限を絞れる。そう、AWS CDKならね!~/secjaws32
mhrtech
6
3.6k
Other Decks in Technology
See All in Technology
AIエージェント開発と活用を加速するワークフロー自動生成への挑戦
shibuiwilliam
4
360
子育てで想像してなかった「見えないダメージ」 / Unforeseen "hidden burdens" of raising children.
pauli
2
300
Python 3.14 Overview
lycorptech_jp
PRO
1
120
通勤手当申請チェックエージェント開発のリアル
whisaiyo
2
160
Kiro を用いたペアプロのススメ
taikis
1
500
SQLだけでマイグレーションしたい!
makki_d
0
1.1k
NIKKEI Tech Talk #41: セキュア・バイ・デザインからクラウド管理を考える
sekido
PRO
0
160
Lessons from Migrating to OpenSearch: Shard Design, Log Ingestion, and UI Decisions
sansantech
PRO
1
150
AWS CLIの新しい認証情報設定方法aws loginコマンドの実態
wkm2
7
760
たまに起きる外部サービスの障害に備えたり備えなかったりする話
egmc
0
310
チーリンについて
hirotomotaguchi
6
2.1k
打 造 A I 驅 動 的 G i t H u b ⾃ 動 化 ⼯ 作 流 程
appleboy
0
360
Featured
See All Featured
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
740
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
29
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
1
110
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
670
The SEO identity crisis: Don't let AI make you average
varn
0
32
First, design no harm
axbom
PRO
1
1k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.8k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
73
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
120
Embracing the Ebb and Flow
colly
88
4.9k
How to train your dragon (web standard)
notwaldorf
97
6.4k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
0
1k
Transcript
© 2024 Mizuho Research & Technologies, Ltd. Azure Verified Moduleを触って分かった
注目ポイント 技術開発本部 先端技術研究部 田代 健人 0 Japan Azure User Group14周年イベント (免責事項) 当レポートは情報提供のみを目的として作成されたものであり、商品の勧誘を目的 としたものではありません。本資料は、当社が信頼できると判断した各種データに 基づき作成されておりますが、その正確性、確実性を保証するものではありません。 また、本資料に記載された内容は予告なしに変更されることもあります。
© 2024 Mizuho Research & Technologies, Ltd. Strictly Confidential 自己紹介
田代 健人 みずほリサーチ&テクノロジーズ株式会社 技術開発本部 先端技術研究部所属 1 名前と所属 今までのAzure関連業務: ・ PaaS Webアプリアーキテクチャ設計 ・ 社内向け開発基盤や生成AIチャットボット基盤 の構築・運営 ・ EA契約にまつわるアカウント運営の設計 好きなAzureサービス ・ Azure Policy ・ Entra Family Azureにまつわるもの Qiita:k_tashiro@mhrt-adv
本日お話すること Azure Verified Moduleを触って分かった 注目ポイント • Azure Verified Module (AVM)とは
• AVMを導入するきっかけと期待 • AVMの使い方 • AVMの使用感/使いこなすための一歩 • まとめ 2
Azure Verified Module (AVM)とは AVMを導入するきっかけと期待 3
© 2024 Mizuho Research & Technologies, Ltd. Strictly Confidential Azure
Verified Module (AVM)とは 4 Microsoftが検証し標準化されたIaCモジュール群 標準化 AVMとしての仕様が定義されており、モジュール間の一貫性確保 (現在はBicepとTerraformをサポート) モジュールはUnit Testやe2e Testを通じて仕様準拠・デプロイ可能な状態を保証 検証 MSが公式にサポートするOSSプロジェクト AVMコアチームによる長期的な運営とサポート規約の明示 サポート WAF Aligned WAFなどの推奨事項に(可能な限り)準拠するようにデフォルトパラメータを設定 信頼性のあるIaCモジュールで開発者が安心して効率的に開発できるように
© 2024 Mizuho Research & Technologies, Ltd. Strictly Confidential AVMを導入するきっかけと期待
弊社内の生成AIチャットボット環境はAzure Developer CLI(azd) Starter Bicepを利用して立ち上げ • プロジェクト雛形生成と、多くのリソーステンプレート、GitHub Actionsテンプレートが プリセット • MS命名規則の接頭辞コレクション 5 > azd init -t azd-starter-bicep > azd up できるだけ用意されたものを使って、1から Bicepを書く必要がないようにしたい 生成AIチャットボット コード管理/CI/CD 開発者 ※azdは気に入っているのですが今回説明は割愛致します・・・
© 2024 Mizuho Research & Technologies, Ltd. Strictly Confidential AVMを導入するきっかけと期待
ただし、カバーされていないリソースなど不足要素はもちろんあり、都度追加実装するものの、正 しい実装が出来ているかの検証に頭を悩ませたり時間がかかってしまう・・・ →AVMの存在を知り、求める要件に合致しそうであるため、azdとAVMの組合せについて現在進行中 6 PaaSのような「開発に集中できる」メリットを享受できるかも 生成AIチャットボット コード管理/CI/CD 開発者
AVMの使い方 7
© 2024 Mizuho Research & Technologies, Ltd. Strictly Confidential AVMの使い方
AVMプロジェクトページのモジュールインデックスから、使いたいモジュールを選定 8 1.モジュール選定 現在136モジュール https://azure.github.io/Azure-Verified-Modules/
© 2024 Mizuho Research & Technologies, Ltd. Strictly Confidential AVMの使い方
各モジュールのREADMEに記載されているパラメータセット等の仕様に沿ってBicepを構築する 用途に応じた利用例が用意されているので、取り掛かりはこちらを参考に 9 2.Bicep構築 • AVMは、Bicep Registry Module で公開さ れているパスを指定して利用する VSCodeのBicep拡張機能により補完が効 くのでとても便利 • バージョン指定することで、AVMの更新 が意図せず反映されてしまうことを防止 https://github.com/Azure/bicep-registry- modules/tree/main/avm/res/web/site#example-1-function-app-using-only-defaults
AVMの使用感/使いこなすための一歩 まとめ 10
© 2024 Mizuho Research & Technologies, Ltd. Strictly Confidential AVMの使用感/使いこなすための一歩
11 柔軟な用途に対応したテンプレートがありがたい! • こちらは先ほどの最小限のパラメータでのデプロイ とは違い、WAF準拠に必要なパラメータで構築する 使用例 • 気軽に始めることもできれば、このような大規模な パラメータでの構築も対応 →再使用可能・多目的対応なテンプレートを目指すほど パラメータの増加やコードの品質維持の労力が比例して 高くなるため、公式検証されたものはとても有用
© 2024 Mizuho Research & Technologies, Ltd. Strictly Confidential AVMの使用感/使いこなすための一歩
12 WAFへの準拠はよく見極めよう! 一方で、 WAFへの準拠の推奨値であることはしっかりと認識すべきであるため、要件に照らして 取捨選択の見極めをするプロセスが大事 AVMとのインターフェイスはパラメータのみであり、(ソースは公開されているものの)AVMの中身 の挙動はユーザーからはブラックボックス AVMのデフォルトパラメータ次第で、ユースケースによっては過剰なスペックになるケースも このサービスを勉強したいから 最小限のパラメータで作ってみよう 最初から3台にスケールアウトして いるぞ・・・ WAF(可用性):AZの確保が推奨
© 2024 Mizuho Research & Technologies, Ltd. Strictly Confidential AVMの使用感/使いこなすための一歩
13 子モジュールの情報を認知できない点に注意! AVMでは子モジュールの扱いは親モジュールのソースで決められており、ユーザーからはブラック ボックスのため、子モジュールの情報をAVM呼び出し元のBicepで利用したいケースでは注意が必要 親 API Management 子 apiVersionSets apis outputs: { name: hoge resourceId: XXX } apiVersionSetsのresourceIdを 使いたいのに。。。 例:ある子モジュールで他の子モジュールのデプロイ結果(Outputs)を使いたいとき、親モジュール にはOutputsが返るがAVM内で完結するため、呼び出し元のBicepでは子モジュールのOutputs を認知することはできない
© 2024 Mizuho Research & Technologies, Ltd. Strictly Confidential AVMの使用感/使いこなすための一歩
当たり前のことではありますが、ドキュメントにはヒントがたくさん詰まっていますので、ご一読 オススメです 特にFAQは充実している印象ですので、理解促進の助けになるはずです! (今日お話したこともいくつかこちらにあります) 14 公開されている仕様やFAQにはヒントがたくさん! https://azure.github.io/Azure-Verified-Modules/faq/#can-i-call-a-bicep-child-module-directly-eg- can-i-update-or-add-a-secret-in-an-existing-key-vault-or-a-route-in-an-existing-route-table
© 2024 Mizuho Research & Technologies, Ltd. Strictly Confidential まとめ
• MSが検証・サポートし長期的な取り組みを標榜しているため、安心して使っていけそう • 標準化されたモジュールは、実装者のIaCスキルを補完し、コードの品質確保に繋がりそう • 意図しないデフォルトパラメータの設定や、パラメータのみのやり取りが制約となるようなアーキ テクチャ設計などは利用時に留意しつつ、ベストプラクティスに乗っかれるように活用を検討する 15 Microsoftが検証し標準化されたIaCモジュール群 (再掲)
16