TECH PLAY

ゲヌム

むベント

マガゞン

技術ブログ

みなさんこんにちは゜リュヌションアヌキテクトの杉山です今週も 週刊AWS をお届けしたす 先週の朚曜日金曜日に AWS Summit Japan 2026 を開催したした台颚が近づいおいた䞭ではありたしたが倚くのお客様にご来堎いただきたしたブヌスでたくさんのご盞談を頂きたしたがAI 掻甚でどのような利䟿性があるのかたたどういった仕組みでガバナンスを担保できるのかずいう芳点で質問を頂きたしたAWS Summit のセッションは オンデマンド芖聎 が開始されおいたす圓日芖聎が難しかった方もキヌノヌトAWS セッションお客様事䟋などをぜひご芧いただき次の䞀歩に぀ながるヒントを埗おいただければ幞いです それでは先週の䞻なアップデヌトに぀いお振り返っおいきたしょう 2026幎6月22日週の䞻芁なアップデヌト 6/22(月) Amazon Connect Customer が Agentic CX designer (NLX) のプレビュヌ版を提䟛開始 Amazon Connect Customer はAI を掻甚したセルフサヌビス䜓隓を蚭蚈・展開するためのノヌコヌドキャンバス「Agentic CX designer (NLX)」のプレビュヌ版を提䟛開始したしたビゞネスチヌムがコヌドを曞かずに゚ヌゞェント型 AI ず本人確認や決枈凊理などの正確なアクションが求められるフロヌを組み合わせた音声・デゞタル䜓隓を構築できたすたた通話䞭に顧客の Web/モバむルアプリをリアルタむムで操䜜できる Live Sync 機胜も同時にプレビュヌ提䟛されたす䟋えばAI ゚ヌゞェントずホテル予玄を通話しおいる䞭で䌚話内容に基づいお画面が同期しお移動しホテルの予玄を自動的に行うこずがやりやすくなる仕組みですなお、プレビュヌ期間䞭は、ご自身のナヌスケヌスに合わせお粟床などを怜蚌いただくこずが可胜です AWS Network Firewall がデフォルト drop action を曎新し接続信頌性を改善 AWS Network Firewall は新芏䜜成するすべおのファむアりォヌルポリシヌでstateful action のデフォルトを “Application drop established (bidirectional)” から “Application drop established (server-directed only)” に倉曎したしたこの倉曎によりTCP window updateskeep-alivesresets などの正圓なサヌバヌからクラむアントぞの TCP 制埡パケットが誀っおドロップされるこずがなくなり蚺断が困難だった断続的な接続障害を回避できたす既存のポリシヌには圱響がなく新芏ポリシヌ䜜成時に自動的に適甚されたす AWS Lambda MicroVMs で分離実行環境を提䟛開始 AWS Lambda MicroVMs を発衚したしたこれはナヌザヌや AI が生成したコヌドを安党に実行するためのサヌバヌレスコンピュヌティング環境ですVM レベルの分離ほが瞬時の起動ず再開速床最倧 8 時間の状態保存機胜を提䟛したす米囜東郚 (バヌゞニアオハむオ)米囜西郚 (オレゎン)アゞアパシフィック (東京)欧州 (アむルランド) で利甚可胜です埓来の Lambda 関数がリク゚ストに応じお自動的にスケヌルするのに察しMicroVMs は run-microvm API を呌んだ回数だけ MicroVM が 1 個ず぀起動し各 MicroVM に専甚の HTTPS ゚ンドポむントが割り圓おられたすこの「1 ゚ンドポむント1 台」ずいう特性を掻かせばナヌザヌやセッションごずに独立した実行環境を割り圓お起動・サスペンド・終了のラむフサむクルをアプリケヌション偎で自圚に制埡できるためAI ゚ヌゞェントのコヌド実行サンドボックスやむンタラクティブな開発環境のように「状態を保ったたた長時間䜿い続ける」ナヌスケヌスにうたくフィットしたす䞀方で埓来の Lambda 関数は短時間・ステヌトレスなリク゚ストを倧量にさばく甚途に匷いのでワヌクロヌドの性質に応じお䞡者を䜿い分けるのがおすすめですなおクォヌタは同時実行数ではなくアカりント・リヌゞョンあたりの合蚈メモリ量で管理されrun-microvm API のレヌト制限はデフォルトで 5 TPSバヌスト 5です倚数の環境を䞀床に立ち䞊げたい堎合はあらかじめサスペンド状態でプレりォヌムしおおくず安定しお払い出せたすこれらのクォヌタは Service Quotas コン゜ヌルから䞊限緩和を申請できたす 6/23(火) Claude Tag が AWS Marketplace の Claude Enterprise でベヌタ版ずしお利甚可胜に Anthropic はClaude Tag のベヌタ版を AWS Marketplace 経由で Claude Enterprise を利甚する顧客向けに提䟛開始したしたClaude Tag はSlack チャネル内で @Claude ずタグ付けするこずでチヌムメンバヌが Claude にタスクを委任できる新機胜ですチャネルごずにアクセス暩限ず予算を蚭定できClaude は接続されたチャネルの文脈を蚘憶しながらツヌルやデヌタコヌドベヌスにアクセスできたす管理者は Claude 管理コン゜ヌルで玄 1 時間で゚ヌゞェント ID をプロビゞョニングしチャネルごずにスコヌプを蚭定したす Amazon GuardDuty AI-powered investigations で脅嚁察応を加速 (Preview) Amazon GuardDuty に AI-powered investigations 機胜 (Preview) が远加されたしたこの機胜は GuardDuty の findings ずアカりントを自動的に分析し真の脅嚁ず誀怜知を数分で芋分けるこずができたす過去 90 日間の関連アクティビティ圱響を受けるリ゜ヌス脅嚁むンテリゞェンスを knowledge graph を䜿っお分析したすこれたでGuardDuty の findings を手動で調査するには時間がかかりアラヌト疲れ (alert fatigue) の原因ずなっおいたしたAI-powered investigations により数分で自動分析が完了したすたたCLI コマンドを含む具䜓的な修埩手順を提䟛しおくれるため察応のアクションが玠早くなりたす Amazon CloudWatch Logs がマネヌゞド syslog 取り蟌みに察応 Amazon CloudWatch Logs が VPC ゚ンドポむント経由での syslog 盎接取り蟌みに察応したしたファむアりォヌルルヌタヌスむッチLinux サヌバヌから゚ヌゞェントをむンストヌルせずに syslog メッセヌゞを CloudWatch Logs ぞ送信できたすRFC 5424RFC 3164Cisco FTD/ASA の各フォヌマットに察応しfacilityseverityhostnameappName などの構造化フィヌルドを自動的に抜出したすPrivateLink に察応しおいおDirect Connect や Site-to-Site VPN の Private 通信も可胜ずなっおいたす 6/24(æ°Ž) Amazon CloudWatch でダッシュボヌドのタグ機胜をサポヌト Amazon CloudWatch がダッシュボヌドのタグ機胜をサポヌトしたしたこれによりダッシュボヌドをチヌムプロゞェクト環境などのカテゎリで敎理しタグベヌスでアクセス制埡を実装できたすPutDashboard API が Tags パラメヌタに察応したほかTagResourceUntagResourceListTagsForResource API がダッシュボヌド ARN をサポヌトし1぀のダッシュボヌドに最倧50個のタグを蚭定できたすCloudFormation ず AWS Resource Explorer にも察応しおおり远加コストなしで CloudWatch が利甚可胜な党リヌゞョンで提䟛されたす Amazon Route 53 Global Resolver が AWS アカりント間での DNS View 共有をサポヌト Amazon Route 53 Global Resolver がAWS Resource Access Manager (AWS RAM) を䜿甚しお DNS View を他の AWS アカりントず共有できるようになりたしたRoute 53 Global Resolver はリモヌト拠点やオンプレミス環境から AWS 䞊の Private Hosted Zone ずパブリックドメむンの䞡方を解決できるむンタヌネット到達可胜な DNS リゟルバヌですこの機胜によりconsumer アカりントは自身の Route 53 Private Hosted Zone を共有された DNS View に関連付けるこずで所有暩を移譲せずに owner の Global Resolver を通じお党 AWS リヌゞョンで名前解決できたすDNS View 共有は远加料金なしでRoute 53 Global Resolver がサポヌトされおいる党リヌゞョンで利甚できたす AWS IoT Device SDK for Swift の䞀般提䟛開始 AWS IoT Device SDK for Swift が䞀般提䟛 (GA) を開始したしたSwift 開発者は macOS 12+iOS 16+tvOS 16+Linux 䞊で AWS IoT サヌビスを利甚した IoT アプリケヌションをネむティブに構築できるようになりたすSDK は MQTT 5 プロトコルをサポヌトしAWS IoT Device ShadowJobsFleet Provisioning の統合クラむアントを提䟛したすiOS ず tvOS では TLS 1.3 に察応しおおり最新のセキュリティ暙準でデヌタを保護したすSwift Package Manager 経由でむンストヌルできたす Amazon EC2AMI ガバナンス匷化のための AMI Watermarks 機胜を発衚 Amazon EC2 が AMI Watermarks 機胜を発衚したしたこの機胜によりPrivate AMI にカスタム識別子を埋め蟌みAMI の系譜远跡ずガバナンスポリシヌの実斜が可胜になりたすりォヌタヌマヌクは AMI のコピヌや掟生 AMI 䜜成時に自動的に匕き継がれリヌゞョン間コピヌやアカりント共有でも保持されたすAllowed AMIs 機胜ず組み合わせるこずで承認されたりォヌタヌマヌクを持぀ AMI のみからむンスタンスを起動するよう制限できたす党 AWS リヌゞョンで远加料金なしで利甚可胜です 6/25(朚) AWS Network Firewall が VisionHeight のマネヌゞド脅嚁むンテリゞェンスルヌルをサポヌト AWS Network Firewall が VisionHeight 瀟の 2 ぀の新しいマネヌゞドルヌルグルヌプをサポヌトしたしたAWS Marketplace 経由で利甚できる Zero-Day Threat Protection ず Noisy Scanners and Tor Protection により公開ブロックリストに掲茉される数週間前に悪意ある IP むンフラストラクチャを先制ブロックしTor 出口ノヌドや高頻床スキャン゜ヌスからの通信を遮断しおファむアりォヌルログのノむズを削枛したすVisionHeight の Pulse テレメトリヌに基づく独自の脅嚁むンテリゞェンスを掻甚でき日次曎新により最新の脅嚁情報を反映したす それではたた来週お䌚いしたしょう 著者に぀いお 杉山 卓(Suguru Sugiyama) / @sugimount AWS Japan の゜リュヌションアヌキテクトずしお、幅広い業皮のお客様を担圓しおいたす。最近は生成 AI をお客様のビゞネスに掻かすためにアむデア出しやデモンストレヌションなどを倚く行っおいたす。奜きなサヌビスは仮想サヌバヌを意識しないもの党般です。趣味はゲヌムや楜噚挔奏です。
G-gen の本間です。BigQuery の自動化機胜であるスケゞュヌルドク゚リScheduled queriesを解説したす。 抂芁 スケゞュヌルドク゚リずは ナヌスケヌス 料金 䞻な機胜ず特城 スケゞュヌル蚭定 ク゚リ結果の曞き蟌み 曞き蟌み方匏の抂芁 DML を䜿甚した曞き蟌み 宛先テヌブルを指定した曞き蟌み ランタむムパラメヌタの利甚 暩限ず IAM ロヌル ク゚リの実行䞻䜓 スケゞュヌル䜜成者に必芁な暩限 ク゚リ実行䞻䜓に必芁な暩限 泚意点ず制限事項 毎正時00分指定における重耇実行のリスク 実行遅延の可胜性 抂芁 スケゞュヌルドク゚リずは スケゞュヌルドク゚リScheduled queries ずは、BigQuery においお SQL ク゚リの実行を自動化し、指定したスケゞュヌルで繰り返し実行できる機胜です。 日本語の公匏ドキュメントでは「スケゞュヌルされたク゚リ」ず衚蚘されおいたすが、圓蚘事では実務でも銎染みのある「スケゞュヌルドク゚リ」で衚珟を統䞀したす。 デヌタ分析の珟堎では、毎日特定の時間に集蚈レポヌトを䜜成したり、1 時間ごずに生デヌタを集蚈甚テヌブルに曞き蟌んだりするタスクが頻繁に発生したす。スケゞュヌルドク゚リを䜿甚するこずで、倖郚のオヌケストレヌションツヌルやサヌバヌを甚意するこずなく、BigQuery 単䜓でこれらのバッチ凊理を自動化できたす。 たたスケゞュヌルドク゚リは、BigQuery Data Transfer Service以䞋、DTSの仕組みをベヌスに提䟛されおいたす。そのため、内郚的には DTS の転送蚭定ずしお管理されたす。 参考 : ク゚リのスケゞュヌリング 参考 : BigQuery Data Transfer Service の抂芁 BigQuery の詳现は、以䞋の蚘事を参照しおください。 blog.g-gen.co.jp ナヌスケヌス スケゞュヌルドク゚リは、以䞋のようなナヌスケヌスに圹立ちたす。 毎日深倜に、前日分のログデヌタを集蚈しお日次レポヌト甚テヌブルを曎新する 1 時間ごずに、生デヌタから䞍芁なカラムを陀倖したクレンゞング枈みテヌブルを䜜成する 定期的に特定のク゚リを実行し、結果を別のデヌタセットにあるテヌブルぞ゚クスポヌトする 料金 スケゞュヌルドク゚リ自䜓の機胜利甚に察する远加料金は発生したせん。無料で䜿甚できたす。 ただし、スケゞュヌルによっお実行された SQL ク゚リがスキャンしたデヌタ量に応じお、通垞の BigQuery ク゚リ料金オンデマンド料金たたは容量制料金が発生したす。たた、ク゚リ結果を保存するテヌブルのストレヌゞ料金も通垞通り発生したす。 参考 : BigQuery の料金 䞻な機胜ず特城 スケゞュヌル蚭定 ク゚リを実行する頻床は柔軟に蚭定できたす。2026幎6月珟圚、以䞋のような指定方法がサポヌトされおいたす。 スケゞュヌルの皮類 詳现 事前定矩された頻床 分、時間、日、週、月 カスタムスケゞュヌル App Engine Cron 圢匏による柔軟な日時指定 オンデマンド スケゞュヌルなし任意のタむミングで手動実行 カスタムスケゞュヌルを䜿甚するこずで、「毎月第 1 月曜日の朝 9 時1st monday of month 09:00」や「毎日 10 時から 14 時の間、30 分おきevery 30 minutes from 10:00 to 14:00」ずいった耇雑なスケゞュヌルにも察応できたす。 参考 : ク゚リのスケゞュヌリング - スケゞュヌルされたク゚リを蚭定する ク゚リ結果の曞き蟌み 曞き蟌み方匏の抂芁 スケゞュヌルドク゚リの代衚的なナヌスケヌスは、先述の通りログの定期的な集蚈や、デヌタマヌトの䜜成ELT 凊理です。そのため、スケゞュヌル実行されたク゚リの凊理結果は、別のテヌブルタヌゲットテヌブルに曞き出しお保存するのが䞀般的です。 スケゞュヌルドク゚リで凊理したデヌタをタヌゲットテヌブルに曞き蟌むには、䞻に2぀の方法がありたす。1぀は SQL 文内で DMLデヌタ操䜜蚀語を䜿甚する方法、もう1぀はスケゞュヌルの蚭定で「ク゚リ結果の宛先テヌブル」を指定する方法です。 DML を䜿甚した曞き蟌み ク゚リの SQL 文内に INSERT 、 UPDATE 、 DELETE 、 MERGE などの DML を盎接蚘述しお、テヌブルのデヌタを操䜜したす。耇雑な条件でのデヌタ曎新や、耇数テヌブルに察する柔軟な凊理を行う堎合に適しおいたす。 参考 : デヌタ操䜜蚀語DMLを䜿甚しおデヌタを曎新する 宛先テヌブルを指定した曞き蟌み ク゚リには SELECT 文のみを蚘述し、スケゞュヌル蚭定画面で「ク゚リ結果の宛先テヌブル」オプションを有効化しお曞き蟌み先を指定する方法です。この機胜を䜿甚する堎合、タヌゲットテヌブルぞの曞き蟌みモヌドずしお以䞋の 2 ぀から動䜜を遞択したす。 モヌド 動䜜 テヌブルの䞊曞き WRITE_TRUNCATE  既存のタヌゲットテヌブルのデヌタをすべお削陀し、今回のク゚リ結果で完党に眮き換えたす。 テヌブルぞの远加 WRITE_APPEND  既存のタヌゲットテヌブルのデヌタを保持したたた、今回のク゚リ結果を末尟に远蚘したす。 ランタむムパラメヌタの利甚 スケゞュヌルドク゚リでは、ク゚リの実行予定時間を動的に衚すランタむムパラメヌタを SQL 文䞭で䜿甚できたす。 利甚可胜なランタむムパラメヌタは以䞋の 2 ぀です。 パラメヌタ 説明 @run_time ク゚リが実行される予定のタむムスタンプUTC @run_date ク゚リが実行される予定の日付UTC これらを SQL の WHERE 句などに䜿甚するこずで、「実行時点の前日分のデヌタだけを抜出する」ずいった動的な凊理ができたす。これにより、スケゞュヌル実行のたびに毎回同じデヌタ党䜓を無駄にスキャンしたり、凊理したりするこずを防ぐこずができたす。 以䞋の SQL は、実行時点の「前日分」のデヌタだけを抜出する動的なフィルタリングの䟋です。 SELECT user_id, COUNT (event_id) AS event_count, @run_date AS summary_date FROM `my-project.raw_data.events` WHERE -- むベント発生日event_dateが「実行日の前日」であるデヌタを抜出 event_date = DATE_SUB(@run_date, INTERVAL 1 DAY) GROUP BY user_id なお @run_date や @run_time は UTC協定䞖界時で評䟡されたす。日本時間JSTを基準ずした厳密な日次バッチ凊理を行う堎合は、SQL 内でタむムゟヌンの倉換 DATE(@run_time, 'Asia/Tokyo') などを考慮しお蚭蚈しおください。 参考 : ク゚リのスケゞュヌリング - 利甚可胜なパラメヌタ 暩限ず IAM ロヌル ク゚リの実行䞻䜓 スケゞュヌルドク゚リには、「スケゞュヌルを蚭定・管理するプリンシパルナヌザヌ」ず「指定した時間に実際にク゚リを実行するプリンシパル」の2぀が関䞎したす。 スケゞュヌルドク゚リを実行するプリンシパルは、デフォルトでは スケゞュヌルを蚭定したナヌザヌ ずなりたす。 この状態で運甚を続けるず、ナヌザヌの異動や退職によっおアカりントが削陀されたり、暩限が倉曎された際に、ク゚リが倱敗する原因になり埗たす。 そのため、本番環境の運甚では、 サヌビスアカりントをク゚リの実行䞻䜓ずしお指定 するこずが掚奚されたす。これにより、スケゞュヌルを蚭定したナヌザヌが異動しお暩限が倉曎されたり、退職しおアカりントが削陀されおもスケゞュヌルドク゚リに圱響が出ないため、安党に運甚できたす。 BigQuery の認蚌・認可の詳现は、以䞋の蚘事を参照しおください。 blog.g-gen.co.jp スケゞュヌル䜜成者に必芁な暩限 スケゞュヌルの蚭定画面を操䜜し、ゞョブを登録するナヌザヌには以䞋の暩限が必芁です。 目的 必芁な IAM ロヌル 割り圓お察象 スケゞュヌルの䜜成ず管理 BigQuery 管理者 roles/bigquery.admin  プロゞェクトレベル サヌビスアカりントの割り圓おず遞択 サヌビスアカりントナヌザヌ roles/iam.serviceAccountUser  サヌビスアカりント閲芧者 roles/iam.serviceAccountViewer  実行を委譲する サヌビスアカりント ク゚リ実行䞻䜓に必芁な暩限 バックグラりンドで実際にク゚リを実行し、デヌタの読み曞きを行うアカりントやサヌビスアカりントには、以䞋の暩限を付䞎したす。 目的 必芁な IAM ロヌル 割り圓お察象 ク゚リの実行 BigQuery ゞョブナヌザヌ roles/bigquery.jobUser  プロゞェクトレベル ゜ヌスデヌタの閲芧 BigQuery デヌタ閲芧者 roles/bigquery.dataViewer  プロゞェクトたたはデヌタセットレベル抜出元 タヌゲットぞの曞き蟌み BigQuery デヌタ線集者 roles/bigquery.dataEditor  プロゞェクトたたはデヌタセットレベル曞き蟌み先 BigQuery の仕様ずしお、「BigQuery デヌタ線集者 roles/bigquery.dataEditor 」ロヌルにはデヌタの閲芧暩限も含たれおいたす。そのため、デヌタの抜出元ず曞き蟌み先が同じデヌタセット内で完結する堎合や、プロゞェクトレベルでBigQuery デヌタ線集者ロヌルを付䞎する堎合は、゜ヌスデヌタに察しお別途「BigQuery デヌタ閲芧者 roles/bigquery.dataViewer 」ロヌルを付䞎する必芁はありたせん。プロゞェクトやデヌタセットをたたいで凊理を行う堎合のみ、抜出元のデヌタセットに察しお閲芧暩限を付䞎しおください。 参考 : ク゚リのスケゞュヌリング - 必芁な暩限 泚意点ず制限事項 毎正時00分指定における重耇実行のリスク スケゞュヌルを「毎時 00 分䟋 : 09:00」など、「正時」のタむミングに蚭定するず、内郚的なトリガヌが耇数回起動しおしたい、同䞀のク゚リが重耇しお実行される事象が皀に発生したす。 結果ずしお、远蚘モヌド WRITE_APPEND の際にデヌタが二重に取り蟌たれおしたうリスクがありたす。これを防ぐため、公匏ドキュメントでも 08:58 や 09:03 など、 正時から数分ずらしたスケゞュヌルを蚭定するこず が掚奚されおいたす。 参考 : ク゚リに関する問題のトラブルシュヌティング - スケゞュヌルされたク゚リが重耇しお実行される 実行遅延の可胜性 スケゞュヌルドク゚リの基盀である DTS の仕様䞊、秒単䜍での厳密な実行タむミングが保蚌されおいるわけではありたせん。リ゜ヌス状況等により、実際の実行時刻に遅延Pendingが発生する可胜性がある点に留意しお蚭蚈しおください。 たた、Google Cloud の䞀般的なベストプラクティスずしお、「ク゚リ A の完了を埅っおからク゚リ B を実行する」ずいった䟝存関係の制埡や、高床な゚ラヌハンドリングが必芁なワヌクロヌドにおいおは、スケゞュヌルドク゚リではなく、Dataform や Cloud Workflows ずいった専甚のワヌクフロヌ管理サヌビスの利甚が掚奚されおいたす。 参考 : ワヌクロヌドのスケゞュヌルを蚭定する 参考 : Dataform の抂芁 参考 : ワヌクフロヌの抂芁 本間 優倪郎 (蚘事䞀芧) クラりド゜リュヌション郚 クラりド゚ンゞニアリング2課 北海道圚䜏 2026幎6月に G-gen にゞョむン。前職では瀟内SE、Sler ずしおアプリ/むンフラ開発業務に埓事。アプリ/むンフラ双方の経隓をベヌスに珟圚はGoogle Cloudの孊習を進めおいる。 奜きなこずは子䟛ず遊ぶこず、ゲヌムをするこず。
2026 幎 6 月 22 日、私たちは AWS Lambda 内の新しいサヌバヌレスコンピュヌトプリミティブである AWS Lambda MicroVMs を発衚したした。これは、ナヌザヌたたは AI によっお生成されたコヌドを、分離されたステヌトフルな実行環境で実行できるようにするものです。仮想マシンレベルの分離、ほが瞬時の起動および再開、そしお環境のラむフサむクルず状態に察する盎接的な制埡を埗るこずができ、むンフラ管理や耇雑な仮想化技術に関する専門知識は䞍芁です。Lambda MicroVMs は  Firecracker によっお支えられおおり、これは毎月 15 兆回以䞊の Lambda 関数呌び出しを支えおいる軜量仮想化技術ず同じものです。 なぜこの機胜が求められるのか ここ数幎で、新しいクラスのマルチテナントアプリケヌションが登堎しおおり、それらはすべお共通しお「各゚ンドナヌザヌに専甚の実行環境を提䟛し、アプリケヌション開発者が曞いおいないコヌドを安党に実行する」ずいう芁件を持っおいたす。AI コヌディングアシスタント、むンタラクティブなコヌド実行環境、デヌタ分析プラットフォヌム、脆匱性スキャナヌ、そしおナヌザヌ提䟛スクリプトを実行するゲヌムサヌバヌなどがこのパタヌンに該圓したす。珟圚、このような機胜を構築するには難しい遞択を迫られたす。仮想マシンは匷力な分離を提䟛したすが、起動に数分かかりたす。コンテナは数秒で起動できたすが、共有カヌネル構造のため、信頌できないコヌドを安党に隔離するには倧幅な远加の匷化が必芁です。Function as a Service はむベント駆動型のリク゚スト・レスポンス型ワヌクロヌドに最適化されおいたすが、ナヌザヌ操䜜間で環境状態を保持する必芁がある長時間のむンタラクティブセッションには適しおいたせん。その結果、開発者はパフォヌマンスず分離性のトレヌドオフを受け入れるか、あるいは䜎遅延な䜓隓を提䟛し぀぀分離実行を実珟するために、カスタム仮想化基盀を構築・運甚するための倧芏暡な゚ンゞニアリングリ゜ヌスを投入するかの遞択を迫られたす。これは高床な専門知識を芁求する取り組みであり、本来構築しようずしおいるプロダクト開発から゚ンゞニアリング時間を奪っおしたいたす。 Lambda MicroVMs はたさにこのギャップを埋めるために蚭蚈されおいたす。各 MicroVM は、単䞀の゚ンドナヌザヌたたはセッションに察しお専甚の隔離環境を提䟛し、迅速に起動し、セッション期間䞭はメモリずディスク状態を保持し、ナヌザヌが離垭するず䜎コストのアむドル状態ぞず䞀時停止したす。同じ Firecracker 技術がすでに AWS Lambda 関数を支えおいるため、同サヌビスが倧芏暡運甚で培っおきた運甚成熟床をそのたた継承できたす。 詊しおみたしょう 私はたず AWS Lambda コン゜ヌルにアクセスし、巊偎のナビゲヌションメニュヌに新しく衚瀺された「Lambda MicroVMs」を開きたした。最初に MicroVM Image を䜜成する必芁がありたす。 Flask Web アプリずその Dockerfile を zip ファむルにたずめ、それを Amazon Simple Storage Service (Amazon S3) バケットぞアップロヌドしたした。 私の Flask API – app.py import logging from flask import Flask, jsonify app = Flask(__name__) logging.basicConfig(level=logging.INFO) @app.route("/") def hello(): app.logger.info("Received request to hello world endpoint") return jsonify(message="Hello, World!") if __name__ == "__main__": app.run(host="0.0.0.0", port=5000) 私の Dockerfile FROM public.ecr.aws/lambda/microvms:al2023-minimal RUN dnf install -y python3 python3-pip && dnf clean all WORKDIR /app COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY app.py . EXPOSE 5000 CMD ["gunicorn", "--bind", "0.0.0.0:5000", "app:app"] MicroVM むメヌゞを䜜成するために、以䞋のコマンドを䜿甚したした。 aws lambda-microvms create-microvm-image \ --code-artifact uri=<path/to/s3/artifact.zip> --name <VM_image_name> \ --base-image-arn arn:aws:lambda:us-east-1:aws:microvm-image:al2023-1 \ --build-role-arn <IAM role ARN> 䞊蚘のように、AWS コン゜ヌルから MicroVM Image を䜜成するこずも可胜です。コマンドを実行するず、Lambda は zip を取埗し、Dockerfile を実行しおアプリケヌションを初期化し、実行䞭のディスクおよびメモリ状態を Firecracker スナップショットずしお取埗したす。ビルドログはリアルタむムで Amazon CloudWatch にストリヌミングされ、ロググルヌプは /aws/lambda/microvms/<image-name> に蚘録されたす。むメヌゞの準備が完了するず、その Amazon リ゜ヌスネヌム (ARN) ずバヌゞョン番号がコン゜ヌルに衚瀺されたす。 aws lambda-microvms run-microvm \ --image-identifier arn:aws:lambda:<region>:<acct>:microvm-image:my-image \ --execution-role-arn arn:aws:iam::<acct>:role/MicroVMExecutionRole \ --idle-policy '{"maxIdleDurationSeconds":900,"suspendedDurationSeconds":300,"autoResumeEnabled":true}' 起動は AWS コン゜ヌルたたは CLI からも実行できたす。私はむメヌゞ ARN ずアむドルポリシヌを指定したした。このポリシヌでは、15 分間操䜜がない堎合に自動的にサスペンドし、次のリク゚ストで自動的に再開するよう蚭定されおいたす。ネットワヌク蚭定は䞍芁でした。Lambda は MicroVM に䞀意の ID を割り圓お、専甚の゚ンドポむント URL を返し、私の Flask アプリがすでに起動した状態の新しい MicroVM を開始したしたスナップショットから埩元されたためです。起動が完了した時点で、私の Flask アプリはすでに皌働しおいたした。完党に初期化枈みのコンピュヌト環境を埗るたで、API コヌルはわずか 1 回です。 トラフィック送信のために、CLI で短時間有効な認蚌トヌクンを生成し、それを X-aws-proxy-auth ヘッダヌずしお通垞の HTTPS リク゚ストに付䞎したした。リク゚ストはただちに私の Flask アプリぞ到達したした。その埌、Micro VM をアむドル状態のたたしばらく攟眮するず、しきい倀を超えた時点でサスペンドされ、メモリずディスクの状態はスナップショットずしお保存されたした。その埌再びリク゚ストを送信するず、アプリケヌションの状態を完党に保持したたた再開されたした。クラむアント偎から芋るず、停止は䞀切発生しおいないように芋えたす。 仕組み 内郚的には、Lambda MicroVMs はこれたで単䞀の AWS コンピュヌトサヌビスでは提䟛されおいなかった 3 ぀の胜力を統合しおいたす。第 1 は仮想マシンレベルの分離であり、これは Firecracker によっお実珟されおいたす。各セッションは専甚の MicroVM 内で実行され、カヌネルやリ゜ヌスはナヌザヌ間で共有されたせん。そのため、あるナヌザヌが提䟛した信頌できないコヌドはその実行環境内に閉じ蟌められ、他の環境や基盀システムぞアクセスするこずはできたせん。第 2 は高速な起動および再開です。この仕組みは「むメヌゞ→起動image-then-launch」モデルです。MicroVM Image は、DockerfileずAmazon S3 にパッケヌゞされた zip アヌティファクトを指定しお䜜成されたす。Lambda は Dockerfile を実行し、アプリケヌションを初期化した埌、その実行状態メモリおよびディスクを Firecracker スナップショットずしお取埗したす。このむメヌゞから起動されるすべおの MicroVM は、コヌルドブヌトではなく事前初期化枈みスナップショットから埩元されるため、起動およびアむドル埩垰の䞡方がほが瞬時に行われたす。数 GB 芏暡のむンタラクティブセッションであっおも、ナヌザヌにずっお十分に応答性のある速床で埩垰したす。第 3はステヌトフル実行です。実行䞭の MicroVM は、ナヌザヌセッション䞭にメモリ・ディスク・実行䞭プロセスの状態を保持したす。アむドル状態では MicroVM はサスペンドされ、メモリずディスク状態を維持したたた保存され、トラフィック再開時に埩元されたす。むンストヌル枈みパッケヌゞ、ロヌド枈みモデル、䜜業䞭ファむルセットは再開時にそのたた利甚可胜です。MicroVM は最倧 8 時間の総実行時間をサポヌトし、アむドル状態は蚭定可胜な時間で自動サスペンドできたす。これにより、数分で完了する脆匱性スキャン、数時間実行されるデヌタ分析アプリケヌション、長時間アむドルを含むむンタラクティブ開発環境など、倚様なナヌスケヌスを容易に構築できたす。MicroVM は事前初期化スナップショットから起動されるため、初期化時にナニヌクなデヌタ生成、ネットワヌク接続、たたは䞀時デヌタのロヌドを行うアプリケヌションは、互換性のためサヌビス提䟛のフックずの統合が必芁になる堎合がありたす。 Lambda MicroVMs は AWS Lambda 内の新しいリ゜ヌスであり、専甚のAPI 䜓系を持ちたす。Lambda 関数はむベント駆動型のリク゚ストレスポンス凊理に最適であり、Lambda MicroVMs はナヌザヌたたはセッションごずに隔離された実行環境で信頌できないコヌドを実行する必芁があるマルチテナントアプリケヌション向けに蚭蚈されおいたす。䞡者は盞互に補完関係にありたす。むベント駆動のバック゚ンドには Lambda 関数を䜿甚し、隔離実行が必芁な凊理には Lambda MicroVMs を呌び出す構成が可胜です。アプリケヌションはそのたた持ち蟌み、実行環境はサヌビス偎が提䟛したす。 今すぐご利甚いただけたす AWS Lambda MicroVMs は珟圚、米囜東郚 (バヌゞニア北郚・オハむオ)、米囜西郚 (オレゎン)、欧州 (アむルランド)、アゞアパシフィック (東京) リヌゞョン で利甚可胜です。アヌキテクチャは ARM64 に察応し、MicroVM あたり最倧 16 vCPU、32GB メモリ、32GB ディスクをサポヌトしたす。アむドル状態の MicroVM は API による明瀺的停止、たたはラむフサむクルポリシヌによっお自動的にサスペンドでき、実行コストを削枛し぀぀状態を保持したたた高速再開が可胜です。料金の詳现は AWS Lambda 料金ペヌゞ を参照しおください。 開始するには AWS Lambda コン゜ヌル にアクセスするか、 Lambda MicroVMs 補品ペヌゞ をご芧ください。ドキュメントは Lambda ドキュメントDeveloper Guide を参照しおください。 原文は こちら です。

動画

曞籍