すべてのラボ
Azure Blob Storage の作成と Blob のアップロード
Azure Blob Storage の基本要素である Storage Account・Blob Container・Blob を作成し、匿名アクセスとデータ保護機能を体験します。
初めての Azure 仮想マシンをデプロイして接続する
Azure Portal から Windows Server の仮想マシンを作成し、RDP でリモート接続して動作を確認した後、ポータルから VM を停止するまでの一連の操作を体験します。
Azure App Service で Web アプリをデプロイする
Azure Portal から Web App リソースを新規作成し、Deployment Center 経由で Microsoft 公式の Python サンプル Web アプリをデプロイして、公開ドメインで動作確認します。
仮想ネットワークとサブネットのデプロイ
Azure Portal からカスタムアドレス空間の仮想ネットワーク(VNet)を作成し、追加のサブネットとネットワークセキュリティグループ(NSG)を関連付けて、ネットワーク基礎構成を体験します。
Azure Portal の操作とカスタムダッシュボードの作成
Azure Portal のナビゲーション、外観カスタマイズ、リソース検索、カスタムダッシュボードの作成と共有設定を体験する初学者向けラボです。
Azure Data Factory でデータパイプラインを構築する
Azure Data Factory のパイプラインを使って、SQL Database のデータを別テーブルにコピーし、Web トリガーや成功・失敗の依存条件を含む複数アクティビティから成るデータパイプラインを構築します。
SAS でストレージアカウントへのアクセスを制限する
Azure Storage アカウントに対して Service レベルと Account レベルの SAS(Shared Access Signature)を生成し、Storage Explorer から SAS で接続して、許可された操作のみが実行できることを実機で確認します。
Azure Cloud Shell の構成とカスタマイズ
Azure Cloud Shell を初回構成し、Bash と PowerShell の切り替え、フォントなどの外観カスタマイズ、複数セッションの起動、ファイルの作成・ダウンロードまでを体験する初学者向けラボです。
既存データディスクを別の VM に移し替える
送信元 VM からマネージドデータディスクを安全にデタッチし、宛先 VM にアタッチして、ディスク内のテストデータがそのまま読み取れることを確認します。Azure における VM のライフサイクル管理とデータ保全の基本を学びます。
Cloud Shell でデータリソースを Azure CLI でクエリする
Azure ポータルの Cloud Shell を Bash モードで初期構成し、Azure CLI(`az resource list`)を使ってサブスクリプション内のデータリソース(SQL Database、Cosmos DB)を様々な出力形式(テーブル、リスト、YAML、クエリフィルタ)で調査します。
Azure Container Instances でコンテナをデプロイ・更新する
Azure Cloud Shell から YAML ファイルを使って Azure Container Instances(ACI)に Web サーバーをデプロイし、DNS ラベルの変更や CPU/メモリの再構成を通じてコンテナのライフサイクル管理を体験する初学者向けラボです。
Azure Functions CLI でタイマー関数を作成する
Azure Cloud Shell 上で Azure Functions Core Tools(`func` CLI)を使って、タイマートリガーで定期実行される C# Function を作成・編集・実行する流れを体験する初学者向けラボです。
Windows Server を Azure Arc にオンボードする
Azure ポータルで Windows Server 用のオンボーディングスクリプトを生成し、RDP 接続した Windows Server 上で PowerShell スクリプトとして実行することで、Azure Arc 管理下のサーバーとして登録します。Azure 外の Windows マシンを Azure 管理下に取り込むハイブリッド構成の基本を体験します。
Azure Functions を C# で作成・ローカル実行・デプロイ
DevVM 上の VS Code で C# の Azure Functions プロジェクトを作成し、Azurite でローカル実行 → Azure に Function App としてデプロイ → HTTP エンドポイントの動作を検証します。
ACR Tasks でコンテナイメージをビルド・実行
ローカルに Docker をインストールせずに、Azure Container Registry (ACR) Tasks で Cloud Shell からコンテナイメージをビルド・プッシュ・実行します。
Terraform で Azure ネットワーク基盤を構築
Cloud Shell から Terraform でデジタル コミック サイト向けのネットワーク基盤(VNet + Subnet + Public IP + Standard Load Balancer)を構築します。
VM のバックアップ ポリシー構成
Recovery Services Vault を作成し、夜間バックアップ ポリシーを定義して、既存の VM にバックアップを有効化します。
Blob Storage への Private Endpoint 構成
Private Endpoint と Private DNS Zone を使い、VNet 内の VM から Blob Storage に Private IP 経由でアクセスできるよう構成します。
Azure Files を Windows からマップ
Azure Files の SMB ファイル共有を作成し、Windows VM から PowerShell スクリプトでドライブとしてマップして使用します。
Azure Table Storage で NoSQL データを管理
Azure Table Storage を作成し、PartitionKey / RowKey ベースのエンティティを挿入してフィルタクエリで取得します。
Azure Machine Learning Studio で基本パイプラインを構築する
Azure Machine Learning Studio の Designer (ノーコード GUI) を使って、レストラン評価データから評点を予測する機械学習パイプラインを構築・実行・公開します。
Terraform で AKS クラスタをデプロイ
このラボでは、デジタル コミック サイトの開発チーム向けに、モノリスから移行する Kubernetes クラスタを IaC で立ち上げます。Terraform の HCL で AKS リソースを宣言し、`init / plan / apply` のサイクルでクラスタをデプロイし、最後に `kubectl` でノードの稼働を確認します。 学習目標: - Cloud Shell に File Share をマウントし、Terraform 作業ディレクトリを準備する - `providers.tf` / `variables.tf` / `aks.tf` / `output.tf` の 4 ファイルに役割を分離して記述する - Terraform で **既存の Resource Group をインポート** する手順を理解する - AKS クラスタ(System Assigned Managed Identity 認証)を Terraform でデプロイする - `terraform output` で kubeconfig を取り出し、`kubectl get nodes` で稼働確認する 前提知識: - Cloud Shell および bash の基本コマンド - Terraform の基本概念(providers / resources / variables / outputs) - Kubernetes の基本概念(Pod / Node / kubectl) 完了条件: - AKS クラスタ `k8s` が `japaneast` にデプロイされていること - ノード数 3 で稼働中であること - `kubectl get nodes` がすべてのノードを `Ready` で返すこと
AKS にコンテナ アプリを ACR Build でデプロイ
事前構築の AKS と ACR に対して、Python (Flask) アプリをコンテナ化して `az acr build` でクラウドビルド → AKS にデプロイ → LoadBalancer Service で外部公開します。
Azure Database for MySQL Flexible Server をデプロイ
Azure Database for MySQL Flexible Server をポータルからデプロイし、Cloud Shell から接続して PaaS データベースの基本を体験します。
Blob Storage のライフサイクル管理で古いデータを自動削除
ライフサイクル管理ポリシーで、Blob Storage の特定フォルダ内のデータを 30 日経過後に自動削除する仕組みを構築します。
SQL Database から ARM テンプレートをエクスポートし Template Specs に保存
既存の Azure SQL Database から ARM テンプレートをエクスポートし、Template Specs に保存して再利用可能な IaC アセットにします。
Azure AI のセキュリティ設定の不備を Key Vault と Managed Identity で修正する
Azure AI Services (Cognitive Services) のキーをコードに直書きしている脆弱な構成を、Key Vault + Managed Identity + ネットワーク制限で安全な構成に作り変えます。
Azure AI Vision で画像分析
Azure AI Vision の Python SDK を使い、Wikimedia Commons の画像から説明文・タグ・顔の境界ボックスを取得します。
Azure AI Search で Knowledge Mining を実装
Azure AI Search で養子縁組可能猫の CSV データから検索インデックスを構築し、言語検出スキルでエンリッチメント、Knowledge Store として Azure Storage Table への並行投影を実現します。
Azure Private DNS でカスタムドメインの社内サーバ名前解決を構成する
Azure Private DNS Zone でカスタム ドメイン `tokyofintech.private` を作成し、VNet 内の VM 同士が IP アドレスではなくドメイン名で通信できる構成を構築します。
既存 Azure リソースを Terraform にインポート
既存の Azure Resource Group を Terraform State にインポートし、HCL で管理を開始する実務シナリオを最小構成で体験します。
Azure Arc でハイブリッド環境を Ansible + Bicep で大規模管理
オンプレ サーバ模擬の Linux VM を Ansible で大規模に Azure Arc にオンボーディングし、Bicep で Arc 拡張機能(Azure Monitor / Custom Script)を一括展開します。
Azure CLI でリソースのタグを管理
Azure CLI を使い、リソース グループ・仮想マシン・仮想ネットワークに対してタグの追加・削除・上書きを行います。
Azure Service Bus と Queue Storage でメッセージング処理を Managed Identity で実装する
Azure Service Bus Queue と Azure Storage Queue の 2 種類のメッセージング サービスを、.NET 8 コンソール アプリと Managed Identity (DefaultAzureCredential) でパスワードレス接続して送受信を比較します。
NSG で VM への Web アクセスを許可
Ubuntu VM に Nginx をインストールし、NSG の Inbound ルールで HTTP を許可してブラウザからアクセスできるよう構成します。
AKS 向けセキュア開発環境を VS Code + Trivy + SonarQube で構築
Windows DevVM の VS Code に SonarQube for IDE と Aqua Trivy をインストールし、コンテナと JavaScript の脆弱性をスキャン・修正します。
AzCopy で Storage Account 間データ転送
AzCopy と委任 SAS トークンを使い、汎用 Storage Account から ADLS Gen 2 (Hierarchical Namespace) Storage Account へファイルを転送します。
Azure AI Search で Scoring Profile と Synonym Map による検索結果をチューニングする
Azure AI Search の Scoring Profile (freshness 関数 + フィールド重み) と Synonym Map で、検索結果の関連性とユーザー体験を改善します。
Azure Monitor のアラート機能を理解する
Azure Monitor のアラートルール、アクショングループ、アラート処理ルールという3つの主要機能を、事前構築済みの Storage Account と仮想マシンを対象に実機で構築します。Azure 監視の基本ワークフローを体験する初学者向けラボです。
Azure Policy とリソースロックを使う
Azure Policy のインターフェース(コンプライアンス、修復、定義、割り当て、例外等)を一通り確認した後、Web App と仮想マシンに対してリソースロック(削除ロック、読み取り専用ロック)を設定する初学者向けガバナンスラボです。
Amazon S3 で静的Webサイトをホスティング
S3 バケットを作成し、静的ウェブサイトホスティングを有効化して HTML を公開します。東京リージョンで AWS の基本操作を体験します。
CodePipeline にセキュリティ/ガバナンス検査ステージ(CodeBuild)を追加する
S3 をソースとする CodePipeline を構築し、CodeBuild による独自のセキュリティ/ガバナンス検査ステージを追加します。ハードコードされた認証情報や過剰な IAM 権限を検知してパイプラインを自動停止させる「ガバナンスゲート」の作り方を学びます。
IAM ユーザーとグループで最小権限アクセスを設計・適用する
カスタマー管理ポリシー・IAM グループ・IAM ユーザーを組み合わせ、特定の S3 バケットだけを読める最小権限アクセスを設計します。最後に作成したユーザーで実際にサインインし直し、「読み取りは成功・書き込みは拒否」を確かめて権限の境界を検証します。
AWS CloudTrail を有効化してアカウントの監査証跡を残す
CloudTrail で証跡(Trail)を作成し、API 操作の記録を S3 と CloudWatch Logs に保存します。実際に S3 バケット作成という操作を発生させ、イベント履歴とログから「誰が・いつ・何をしたか」を追跡する監査の基本を東京リージョンで学びます。
CodePipeline と CodeBuild で品質・コンプライアンスゲートを実装する
S3 をソースにした CodePipeline を構築し、CodeBuild ステージでコード品質チェック(flake8 lint)と簡易コンプライアンススキャン(秘密情報検出)を実行して、違反があればパイプラインを自動で失敗させる「品質ゲート」を体験します。さらに手動承認ステージで人によるコンプライアンス承認も組み込みます。すべて東京リージョンで自己完結します。
CodePipeline に手動承認とSNS通知でガバナンスゲートを追加する
S3 をソース/デプロイ先に使う簡易な CodePipeline を構築し、本番反映の前に「手動承認(Manual approval)」ステージを挿入します。承認待ちを SNS のメール通知でレビュー担当者に知らせ、承認/却下によってデプロイを制御するガバナンスの仕組みを学びます。すべて東京リージョン(ap-northeast-1)で完結します。
AWS WAF で Web アプリ(ALB)を保護する
事前構築済みの Application Load Balancer に AWS WAF の Web ACL を関連付け、マネージドルール・レートベースルール・カスタムルールで不正リクエストをブロックする実践ラボです。許可・拒否の挙動と、サンプリングされたリクエスト/CloudWatch メトリクスの確認まで一通り体験します。すべて東京リージョン(ap-northeast-1)で完結します。
AWS Glue と Athena で分析用データを準備しクエリする
S3 上の CSV データを Glue Crawler でデータカタログに登録し、Athena で SQL クエリを実行します。さらに CTAS で Parquet 形式に変換して、スキャン量を抑えた高速・低コストな分析基盤を体験します。
VPC のネットワーク到達性トラブルシューティング(ルートテーブル・セキュリティグループ・ネットワーク ACL)
わざと壊した構成の Web サーバー EC2 に外部からアクセスできない原因を、ルートテーブル・セキュリティグループ・ネットワーク ACL の 3 層に分けて切り分けて修正し、HTTP 到達性を回復させます。Web サーバーは OS 標準ツールでブート時にインターネット接続なしで起動するため、ルートを壊した初期状態でも確実にコンテンツを配信できます。
AWS コンソールで Lambda 関数を作成・テストする
マネジメントコンソールだけで初めての AWS Lambda 関数を作成し、コードエディタで Python 関数を書き、テストイベントで実行して CloudWatch Logs で結果を確認します。サーバーレスの最初の一歩に最適なラボです。
Terraform(CloudShell)で AWS インフラをデプロイ・管理する
AWS CloudShell に Terraform をインストールし、コードで VPC・サブネット・セキュリティグループ・EC2 インスタンスを宣言的にデプロイします。変更・破棄のライフサイクルまでを実機で体験する Infrastructure as Code 入門ラボです。
3層ネットワークの VPC を一から構築する
VPC、6つのサブネット(Web/App/DB の Public/Private 構成)、インターネットゲートウェイ、NAT ゲートウェイ、ルートテーブルを手作業で組み合わせ、3層アーキテクチャの土台となるネットワークを東京リージョンにゼロから構築します。
Glue で S3 のデータを Redshift にロードする
AWS Glue Studio のビジュアル ETL ジョブを使い、Amazon S3 に置いた CSV データを Amazon Redshift(プロビジョンド・ra3.large 2ノード)のテーブルへロードする一連の流れを、東京リージョンのコンソール操作だけで体験します。Glue が Redshift へ書き込む際に必要となる S3 ステージング領域と IAM ロールの構成まで含め、サーバーレス ETL の基本パターンを手を動かして学びます。
Step Functions で S3 アップロードデータを自動分類するワークフロー
S3・Lambda・Step Functions を組み合わせて、アップロードされたファイルの中身を検査し、内容に応じて「請求書 / ログ / その他」へ自動振り分けするステートマシンを構築します。Choice ステートによる分岐とサーバーレス連携を実践的に学びます。
Lambda + API Gateway + DynamoDB でサーバーレス CRUD API を作る
DynamoDB テーブル、Python Lambda 関数、API Gateway REST API を組み合わせ、サーバーを 1 台も立てずに「商品メモ」を作成・取得・更新・削除できるサーバーレス CRUD API を構築します。
EC2 上に CI サーバー(Jenkins)を構築し ALB 配下で公開する
EC2(t3.medium)上にオープンソースの CI ツール Jenkins をユーザーデータで自動インストールし、Application Load Balancer(ALB)経由で安全に Web UI へアクセスする構成を、VPC のサブネット設計を含めて一から構築します。
音声をテキスト化して分析する処理パイプライン(Transcribe + Comprehend)
Amazon Polly で作ったサンプル音声を S3 に置き、Amazon Transcribe で文字起こしし、その完了を EventBridge が検知して Lambda を起動、Lambda が Amazon Comprehend で感情・キーフレーズ・エンティティを抽出して S3 に保存する、サーバーレスな音声分析パイプラインを東京リージョンで構築します。
IAM ポリシーのリソース指定と条件キーでワークフローのアクセスを保護する
S3・SQS・DynamoDB から成る最小ワークフローに対し、最小権限の IAM ポリシーをリソース ARN と条件キー(タグ・MFA・暗号化必須など)で絞り込み、IAM Policy Simulator で「許可される操作・拒否される操作」を実証的に検証します。すべて東京リージョン・サンドボックス対応サービスのみで完結します。
EventBridge でジョブ完了イベントを受けて後処理を自動化する
カスタムイベントバスと EventBridge ルールを使い、ジョブ完了イベントを起点に Lambda での後処理と SNS でのメール通知を自動的に走らせるイベント駆動ワークフローを構築します。
GuardDuty と CloudTrail でセキュリティインシデントを調査する
GuardDuty を有効化してサンプル検出結果を生成し、CloudTrail のイベント履歴で関連する API 呼び出しを突き合わせ、EventBridge と SNS / CloudWatch Logs を使って検出結果の自動通知・集約パイプラインを構築しながら、実践的なインシデント調査の流れを学びます。すべて東京リージョンで完結します。
S3 / EBS / EFS ストレージを KMS 暗号化とアクセス制御で保護する
KMS のカスタマー管理キーを作り、S3 バケット・EBS ボリューム・EFS ファイルシステムを保存時暗号化で保護します。さらに S3 のパブリックアクセスブロックとバケットポリシー、IAM/セキュリティグループでアクセス制御を実装し、SSM 接続した EC2 から実際に読み書きして暗号化を確認します。東京リージョン・cloud_user のみで完結します。
GuardDuty でライブに脅威を検知し自動対応する
Amazon GuardDuty を有効化してサンプル脅威を発生させ、EventBridge と Lambda を使って検出結果(Findings)を自動的に解析・通知する一連の脅威検知&自動対応パイプラインを構築します。Lambda の重大度しきい値で自動トリアージし、High/Critical の脅威だけを SNS メールでライブに受け取る体験まで行います。すべて東京リージョンで完結します。
Amazon Inspector で EC2 と ECR の脆弱性を検出・管理するワークフロー
Amazon Inspector を有効化し、EC2 インスタンスとコンテナイメージ(ECR)の脆弱性を自動スキャンします。検出結果(Findings)の確認・深刻度による優先順位付け・抑制ルールによる運用ノイズの削減まで、脆弱性管理の一連のワークフローを東京リージョンで体験します。
S3 ライフサイクルと Glacier 階層化でストレージコストを最適化する
S3 のライフサイクルルールを使って、オブジェクトを Standard から Glacier 系ストレージクラスへ自動的に階層化し、不要なデータを自動削除する設定を実践します。バージョニングや非現行バージョンの管理も含め、ストレージコストを最適化する仕組みを手を動かして学びます。すべて東京リージョン内・S3 と CloudShell のみで完結します。
Auto Scaling グループと ALB で高可用な Web 層を構築する
起動テンプレート・Application Load Balancer・ターゲットグループ・Auto Scaling グループを組み合わせ、複数のアベイラビリティーゾーンに分散した自己修復型の Web アプリケーション層をコンソールだけで構築します。スケーリングポリシーとヘルスチェックによる自動復旧まで体験します。専用の VPC とパブリックサブネットは CloudFormation で事前に用意されています。
SSM Parameter Store でアプリ設定と機密を外部化する
AWS Systems Manager Parameter Store にアプリの設定値と機密情報を保存し、IAM ロール経由で EC2 インスタンスから安全に読み出す方法を学びます。設定をコードから分離する「設定の外部化」と、パス単位の最小権限制御を実践します。
Ansible(CloudShell)で AWS リソースをプロビジョニングする
AWS CloudShell に Ansible と amazon.aws コレクションを導入し、Playbook を使って VPC・サブネット・セキュリティグループ・EC2 インスタンスを東京リージョンに宣言的にプロビジョニングします。Infrastructure as Code(IaC)の基本と冪等性を体験します。
Web API を Lambda + API Gateway にデプロイする
AWS Lambda 関数を作成し、API Gateway(REST API) と統合して、サーバーレスな Web API をインターネットに公開します。ブラウザや curl から HTTP リクエストで呼び出せる JSON API を、サーバーを一切管理せずに構築します。リージョンは東京(ap-northeast-1)で実施します。
Amazon EKS(標準サポート版)にコンテナ Web アプリをデプロイする
ECR にコンテナイメージを格納し、Amazon EKS(standard support 版)の Kubernetes クラスターと管理対象ノードグループを作成して、CloudShell の kubectl から Web アプリをデプロイ・公開します。コンテナと Kubernetes の基本ワークフローを一気通貫で体験します。すべて東京リージョン (ap-northeast-1) で完結します。
AWS Network Firewall を VPC に構成して送信トラフィックを検査する
AWS Network Firewall をシングル AZ の VPC に展開し、ステートフルルール(ドメインリスト型)でアウトバウンドのドメインフィルタリングを実装します。分散デプロイモデルの3ルートテーブル構成で送信トラフィックをファイアウォール経由に強制し、テスト用 EC2 から実際に通信して許可ドメインと拒否ドメインの挙動を検証します。
Secrets Manager で RDS の認証情報を保存し自動ローテーションする
RDS for PostgreSQL のマスター認証情報を Secrets Manager に保存し、Secrets Manager が自動デプロイする Lambda ローテーション関数で 30 日ごとの自動ローテーションを構成します。Lambda を VPC に接続し、Secrets Manager のインターフェイス VPC エンドポイントを使って、Lambda が DB と Secrets Manager の両方へインターネットに出ずに到達できる構成を学びます。
Security Hub のセキュリティ標準でプロアクティブに是正する
Security Hub と AWS Config を有効化し、AWS 基礎セキュリティのベストプラクティス(FSBP)標準のコントロールで非準拠リソースを検知します。意図的に弱い設定(パブリックアクセスブロック無効)の S3 バケットを作って FAILED 検出を確認し、設定を是正してコントロールが PASSED に変わるまでを体験します。すべて東京リージョン・コンソール操作のみで完結します。
Security Hub の検出結果を EventBridge + Lambda で自動対応する
Security Hub を有効化し、検出結果(Findings)を EventBridge ルールで Lambda にルーティングして、セキュリティ問題を自動で是正・通知する仕組みを構築します。実際にパブリックアクセスを許可した S3 バケットを作り、Lambda がそのバケットのパブリックアクセスを自動でブロックするところまで体験します。すべて東京リージョン(ap-northeast-1)・コンソール操作のみで完結します。
AWS Fault Injection Simulator で回復性の弱点を見つける
ALB 配下の Auto Scaling グループに対して AWS FIS でインスタンス障害を意図的に注入し、自己修復の様子と回復性の弱点を観察します。カオスエンジニアリングの基本フローをコンソールで体験します。
Amazon SQS から Lambda をトリガーして非同期処理する
標準キュー(Standard Queue)に投入したメッセージをイベントソースマッピングで Lambda 関数に自動配信し、非同期にバッチ処理する構成を一から構築します。あわせて失敗メッセージを退避するデッドレターキュー(DLQ)も設定します。
IAM ロールを作成し STS AssumeRole で引き受ける
IAM ロールと信頼ポリシー・権限ポリシーを作成し、CloudShell から STS AssumeRole を実行して一時的な認証情報を取得し、ロールに切り替わったことを確認します。AWS の認可モデルの中核である「ロールの引き受け」を手を動かして理解できます。確認用の S3 バケットは東京リージョンに作成します。
EC2 にインスタンスプロファイル(IAMロール)を付与してキーレス運用
EC2 インスタンスに IAM ロール(インスタンスプロファイル)を付与し、アクセスキーを一切置かずに S3 へ安全にアクセスする方法を学びます。一時クレデンシャルの仕組みと最小権限ポリシーの作り方、Session Manager によるキーレス接続も確認します。
IAM 権限境界(Permissions Boundary)で委任時の権限上限を設ける
IAM 権限境界を使って、権限を委任された管理者ロールが作成できる IAM プリンシパルの実効権限に「上限」を設ける方法を学びます。境界ポリシーの作成、委任ロールへの境界強制、実効権限の検証までを AWS マネジメントコンソールで一通り体験します。検証は実 API を呼ばないポリシーシミュレーターで安全に完結します。
AWS Config でリソースを評価し SSM Automation で自動修復する
AWS Config を有効化してマネージドルール restricted-ssh でセキュリティグループの違反(SSH 22番ポートの 0.0.0.0/0 開放)を検出し、AWS 所有の SSM Automation ランブック AWS-DisableIncomingSSHOnPort22 を使った自動修復で、違反ルールを人手を介さず自動的に閉じる仕組みを構築します。東京リージョン内で完結する構成・統制(ガバナンス)ハンズオンです。
Step Functions + API Gateway + Lambda + S3 で注文処理のサーバーレスワークフローを作る
API Gateway(HTTP API)で受けた注文リクエストを Step Functions でオーケストレーションし、複数の Lambda で処理して結果を S3 に保存する。
SSM Automation ランブックで EC2 運用作業を自動化する
Systems Manager Automation のカスタムランブックと IAM ロールを作り、EC2 の「タグ付け→スナップショット取得→停止」を一括自動実行します。
S3 ゲートウェイ VPC エンドポイントでプライベートに S3 へアクセスする
プライベートサブネットの EC2 から、インターネット(NAT/IGW)を経由せず S3 ゲートウェイ VPC エンドポイント経由で Amazon S3 にアクセスできることを確認します。
VPC ピアリングで 2 つの VPC をプライベート接続する
CIDR が重複しない 2 つの VPC を作成し、VPC ピアリング接続とルート設定で EC2 同士のプライベート通信(ping)を確立します。
カスタム VPC と DHCP オプションセットの作成
カスタム VPC を作成し、独自ドメイン名と DNS サーバーを指定した DHCP オプションセットを関連付けて、EC2 のホスト名と名前解決に反映されることを確認します。
コンソールで自分専用の EC2 ワークステーションを作る
キーペアとセキュリティグループを作成し、東京リージョンに Amazon Linux 2023 の t3.micro インスタンスを起動して、EC2 Instance Connect でブラウザからログインし基本操作を体験する EC2 入門ラボです。
Lambda と EventBridge で EC2 を自動停止/起動してコスト最適化する
Lambda(Python/boto3)で EC2 を停止/起動し、EventBridge Scheduler で定期実行する自動化をコンソールから構築します。
AWS CDK 入門: TypeScript で S3 スタックをデプロイする
CloudShell 標準搭載の AWS CDK で cdk init / bootstrap / deploy / destroy を一通り体験し、TypeScript で S3 バケットを Infrastructure as Code として構築します。
Kinesis Data Stream を作成して CloudShell からデータを投入・取得する
オンデマンドの Kinesis Data Stream を作成し、CloudShell から put-record でデータを投入、get-records で読み出しを確認します。
タグとリソースグループでクラウド資産を整理する
EC2 と S3 に Environment / Project タグを付与し、Tag Editor で横断的にタグを一括管理、タグベースの Resource Groups を作成して、増え続けるリソースを「環境」「プロジェクト」単位で整理・横断管理する基礎を実践します。
CodePipeline の状態変化を EventBridge で捕捉して SNS メール通知する
S3 ソース→CodeBuild のパイプラインを作り、EventBridge ルールで成功/失敗を捕捉して SNS でメール通知する監視を構築します。
AWS コンソールではじめる DynamoDB(テーブル・項目・インデックス)
マネジメントコンソールだけで DynamoDB テーブル(パーティション/ソートキー)を作成し、項目を追加し、グローバルセカンダリインデックス(GSI)を作って、PartiQL とクエリでデータを検索するサーバーレス NoSQL 入門ラボです。
AWS マネジメントコンソールの歩き方
リージョン切替・サービス検索・CloudShell・コスト/課金・CloudWatch・タグ・ユーザーメニューなど、AWS コンソールの基本操作を一通り体験する入門オリエンテーション。
Network Load Balancer を作成して TCP 負荷分散を構成する
2 つの AZ のパブリックサブネットに簡易 Web サーバーを乗せた EC2 を起動し、Network Load Balancer (NLB) とターゲットグループを作成・登録して、レイヤー 4 (TCP) の負荷分散とヘルスチェックをコンソールだけで確認します。土台の VPC とサブネットは CloudFormation で事前構築されています。
Aurora クラスターの認証情報を Secrets Manager で自動ローテーションする
専用 VPC 上に Aurora MySQL 互換クラスター(db.t3.medium / 単一インスタンス)を作成し、認証情報を Secrets Manager で管理して 30 日ごとの自動ローテーションを構成・確認します。
Azure Event Grid と CLI でイベント駆動オートメーションを構成する
Event Grid のカスタムトピックと Storage キューへのサブスクリプションを作り、CLI でイベントを発行して配信を確認する。さらに System Topic で Blob 作成イベントを購読し、疎結合なイベント駆動の流れを体験する。
Azure SQL Database の動的データマスク(DDM)で機密データを保護する
Azure SQL Database に顧客テーブルを作り、メールやクレジットカード番号などの列に動的データマスク(DDM)を適用する。マスク対象外の管理者と、マスクされる一般ユーザーで同じクエリの結果がどう変わるかを実際に確かめる。
Azure Cosmos DB を Python と .NET の2つのSDKで操作する
Cosmos DB(NoSQL API)を作成し、Cloud Shell から Python SDK と .NET SDK の両方でアイテムの作成・読み取り・クエリを行って、2つの言語の書き味の違いを体験します。
Application Insights でアプリケーションを監視・分析する
App Service で動かす Web アプリに Application Insights を接続し、ライブメトリックを主役にリアルタイムのリクエストを観察します。さらにトランザクション検索・アプリマップ・KQL ログで挙動と失敗を補助的に可視化します。curl で確実に負荷をかけて生のテレメトリを発生させ、何が遅く何が落ちているかをコードに触れず突き止めます。
Azure AI Custom Vision で物体検出モデルを学習・公開する
Custom Vision の Training と Prediction リソースを作成し、customvision.ai ポータルで物体検出プロジェクトを構築する。画像にバウンディングボックスでタグ付けして独自モデルを学習・公開し、クイックテストで推論を確認する。
Azure Update Manager で VM のパッチを評価・適用する
小型の Linux VM を作成し、Azure Update Manager で更新評価(Assessment)を実行して不足更新を把握、ワンタイムのパッチインストールで適用し、定期スケジュール用のメンテナンス構成を作成する。
Key Vault でシークレットとキーを管理し RBAC でアクセス制御する
Key Vault を RBAC 認可モードで作成し、自分に Key Vault Administrator ロールを割り当ててシークレット 2 件とキー 1 件を管理します。CLI での取得からローテーションまでを一通り体験します。
VM のマネージド ID で Storage へ資格情報レスにアクセスする
パスワードや接続文字列を一切使わずに、VM のシステム割り当てマネージド ID で Blob Storage からデータを取得します。データプレーンのロール割り当てと IMDS の仕組みを体験できる AZ-500 / AZ-204 対策ラボです。
Storage Account をファイアウォールとサービスエンドポイントで保護する
仮想ネットワーク サービスエンドポイントと Storage ファイアウォールを組み合わせ、Storage Account へのアクセスを特定のサブネットからのみに制限します。拒否と許可の挙動を Cloud Shell と VM の両方から実際に確認します。
NSG と ASG で多層ネットワーク制御を構成する
VNet 内に web/db の 2 層構成を作り、ASG を送信元・宛先に指定した NSG ルールで層間通信を制御します。Run Command での疎通テストにより、許可と拒否の両方の動作を確認します。
Azure SQL Database の監査ログを構成して確認する
SQL Server と Basic データベースを作成し、サーバーレベル監査を Storage Account 宛に有効化します。sqlcmd でクエリを実行し、生成された .xel 監査ログを確認する AZ-500 / DP-300 対策ラボです。
App Service のデプロイスロットで Blue-Green デプロイを行う
App Service の staging スロットに新バージョンをデプロイし、スワップ操作で本番環境を無停止で切り替える Blue-Green デプロイの一連の流れを体験します。
Azure Functions の Queue トリガーと出力バインディングを構成する
従量課金プランの Function App に Queue Storage トリガーと出力バインディングを構成し、キューに投入したメッセージが別のキューへ連鎖して流れる仕組みをハンズオンで確認します。
Azure Container Apps でコンテナアプリをデプロイ・スケールする
Container Apps 環境を作成し、公開サンプルイメージを外部 Ingress 付きでデプロイします。リビジョン更新と 0〜2 レプリカの自動スケール構成まで、コンテナ運用の基本を一通り体験します。
Logic Apps で HTTP から Storage への自動化フローを作る
従量課金プランの Logic Apps で HTTP 要求トリガーから Blob 作成アクションまでの自動化フローを構築し、curl で実行して Blob が生成されることを確認します。
API Management で API を公開しポリシーを適用する
Consumption レベルの API Management を作成し、公開バックエンド httpbin を API として公開します。サブスクリプションキーによる保護からレート制限ポリシー(429 応答)の確認まで、AZ-204 で問われる API 公開の基本を一通り体験します。
VNet ピアリングで 2 つの仮想ネットワークを接続する
アドレス空間が重複しない 2 つの仮想ネットワークを作成して双方向ピアリングで接続し、公開 IP を持たない VM 同士がプライベート IP で通信できることを Run Command の ping で確認します。
ルートテーブル(UDR)でサブネットの経路を制御する
仮想ネットワークにルートテーブル(UDR)を作成し、ネクストホップ「なし(None)」のカスタムルートでサブネットからのインターネット向け通信を遮断します。有効ルートの出力からルートの優先順位を読み解くところまで体験します。
Azure DNS ゾーンでレコードを管理する
パブリック DNS ゾーンを作成し、A・CNAME・TXT レコードを登録して、Azure ネームサーバーへの直接照会で名前解決を確認します。ドメインを所有していなくても DNS の仕組みを体験できます。
Traffic Manager で DNS ベースの負荷分散を構成する
無料の F1 プランで作成した 2 つの Web アプリを Traffic Manager の優先度ルーティングで束ね、プライマリ停止時に DNS 応答がセカンダリへ切り替わるフェイルオーバー動作を確認します。
Event Hubs でイベントストリーミングを送受信する
Standard の Event Hubs 名前空間とイベントハブを作成し、最小権限の共有アクセスポリシー経由で Python からイベントを送受信します。ポータルのメトリックによる確認まで一通り体験できます。
Stream Analytics で Event Hubs から Blob へリアルタイム処理する
Event Hubs に届いたイベントを Stream Analytics ジョブ(1 SU)の SQL ライクなクエリでフィルター処理し、Blob Storage に JSON として出力するリアルタイム パイプラインを構築します。テストイベントの送信から出力確認まで一気通貫で体験します。
Azure SQL Database をコピーし BACPAC にエクスポートする
AdventureWorksLT サンプル データベースを作成し、az sql db copy で同一サーバー内に複製した後、BACPAC 形式で Blob Storage にエクスポートします。DP-300 のデータベース移行・保護分野の基本操作を実践で身につけるラボです。
VM スケールセットと自動スケールルールを構成する
Flexible オーケストレーション モードの VM スケールセット(Standard_B1s × 2)を作成し、CPU 使用率に基づく自動スケールルールを構成します。手動スケーリングとの関係も動作を通して確認します。
Log Analytics ワークスペースと KQL でログを分析する
Log Analytics ワークスペースを作成し、ストレージの診断ログを接続して、KQL の集計クエリ 3 種でログを分析します。AZ-104 / AZ-305 のモニタリング分野の基礎を実践的に学びます。
Bicep で Storage と VNet を宣言的にデプロイする
Cloud Shell で Bicep ファイルを作成し、what-if で差分を確認しながら Storage アカウントと VNet をデプロイします。再実行とパラメータ変更を通じて、宣言的 IaC の冪等性を体験します。
Azure OpenAI をデプロイしてチャット プレイグラウンドで挙動を確かめる
Azure OpenAI リソースを作成し、小型モデルをデプロイして、システム メッセージ・温度・最大応答トークンが回答にどう効くかをプレイグラウンドで比較します。生成 AI ラボの最初の 1 本。
Cloud Shell の Python から Azure OpenAI を呼び出す
openai SDK を使って Azure OpenAI のチャット補完を呼び出し、会話履歴の持ち回り、ストリーミング、トークン使用量の読み取りまでを Cloud Shell 上の Python で実装します。
構造化出力と関数呼び出しで Azure OpenAI を業務システムにつなぐ
自由文の問い合わせから JSON スキーマどおりのデータを取り出す「構造化出力」と、モデルに社内 API を呼ばせる「関数呼び出し(ツール)」を Python で実装します。生成 AI を既存システムに組み込む要の技術です。
Azure OpenAI と AI Search で社内文書に答える RAG チャットを作る
社内規程の文書を Blob に置き、AI Search の「データのインポートとベクター化」でベクター インデックスを作り、Azure OpenAI に「自分のデータ」として接続して出典つきで回答させます。生成 AI 案件で最も多い RAG 構成を一通り組みます。
埋め込みモデルで意味検索を作り、RAG の中身を理解する
Azure OpenAI の埋め込みモデルで文章をベクター化し、コサイン類似度で「意味が近い文」を探す検索を Python だけで実装します。AI Search が裏で何をしているかを手で確かめ、チャンク分割と類似度しきい値の効き方を体験します。
コンテンツ フィルターとブロックリストで Azure OpenAI の出力を制御する
Azure AI Foundry でカスタムのコンテンツ フィルターを作り、重大度のしきい値・ブロックリスト・プロンプト シールド(ジェイルブレイク検出)を設定してデプロイに適用します。責任ある AI の実装を、実際に拒否される様子を見ながら学びます。
Azure AI Evaluation SDK で RAG の回答品質を数値で評価する
「なんとなく良さそう」で終わらせず、根拠性・関連性・一貫性・流暢さを LLM 評価器で採点し、プロンプト変更の前後を比較します。生成 AI 案件で顧客に品質を説明するための評価パイプラインの最小形です。
診断設定と KQL で Azure OpenAI の利用量・エラーを監視する
Log Analytics ワークスペースを作り、Azure OpenAI の診断ログとメトリックを送って、トークン使用量・レイテンシ・エラー率を KQL で集計します。コスト超過や 429 の増加に気づける監視の土台を作ります。
Azure AI Foundry Agent Service で道具を使うエージェントを作る
Azure AI Foundry のプロジェクトを作り、エージェント サービスで「指示・知識(ファイル検索)・アクション(コード インタープリター)」を持つエージェントを構成して、プレイグラウンドと Python から動かします。チャット補完との違いを体感します。
Document Intelligence と Azure OpenAI で請求書を読み取り構造化する
Document Intelligence の事前構築モデルで PDF の請求書から項目を抽出し、その結果を Azure OpenAI に渡して要約と経費規程に照らしたチェックを JSON で返す、書類処理パイプラインを Python で組みます。
SQL 入門: PostgreSQL で売上データを月次・地域別に集計する
ブラウザで開く IDE と同居した PostgreSQL に対して、GROUP BY・集計関数・ビューを使って売上データを月次・地域別・製品別に集計します。クラウドの契約や環境構築は不要で、開いた瞬間から SQL を書き始められます。
Python でデータ整形: pandas で汚れた売上 CSV を集計できる形にする
日付の書式違い、全角数字、通貨記号つきの金額、空欄、重複行が混ざった売上 CSV を pandas で整形し、テストで確認しながら集計可能なデータにします。データ分析の実務で最も時間を使う「前処理」の練習です。
TypeScript で REST API を作る: Express で TODO API を実装する
型のある TypeScript と Express で、TODO を作成・一覧・完了・削除する REST API を実装します。入力検証と HTTP ステータスの使い分け、curl での動作確認、型チェックまで、バックエンド開発の基本を一通り体験します。
SQL 中級: JOIN とウィンドウ関数で顧客ランキングと累計売上を出す
受注管理の 4 テーブル(顧客・製品・注文・明細)を JOIN して注文合計のビューを作り、rank() や sum() OVER のウィンドウ関数で顧客ランキングと月次累計を求めます。LEFT JOIN で「注文の無い顧客」を洗い出す実務定番の分析も扱います。
Bash でログ集計: grep・awk・sort で Web サーバーのアクセスログを分析する
nginx 形式のアクセスログ 500 行を、ターミナルのコマンド(awk・sort・uniq・grep)だけでステータス別件数・アクセス上位 IP・404 の多いパス・転送量に集計し、再実行できるシェル スクリプトにまとめます。運用・障害対応で毎日使う基本技術です。
Python で REST API を作る: FastAPI で TODO API を実装する
FastAPI と pydantic で、TODO を作成・一覧・完了・削除する REST API を実装します。入力検証(422)、存在しない id の 404、204 の使い分け、自動生成される API ドキュメント、TestClient によるテストまで、Python バックエンド開発の基本を一通り体験します。
SQL パフォーマンス: EXPLAIN で実行計画を読み、インデックスで検索を速くする
30 万行のイベント ログに対して、EXPLAIN ANALYZE で「なぜ遅いか」を実行計画から読み取り、単一列インデックスと複合インデックスを作って Seq Scan を Index Scan に変えます。インデックスのサイズと更新コストのトレードオフも確認する、DB 運用の基本スキルです。
Git 入門: ブランチを切って作業し、マージと衝突の解消を体験する
用意された Git リポジトリで、ブランチの作成・コミット・fast-forward マージ・同じ行を変えた 2 つのブランチのマージ衝突(CONFLICT)の解消・タグ付けまでを、ターミナルの git コマンドで一通り体験します。チーム開発の最初の壁を安全な環境で越えるためのラボです。
SQL 第 3 弾: トランザクションとロックで「壊れない送金処理」を作る
口座間の送金を題材に、複数の更新をまとめて成功か失敗かにするトランザクション、同時更新を守る行ロック(FOR UPDATE)、不正な状態を DB で防ぐ CHECK 制約、更新履歴を残すトリガーを PL/pgSQL で実装します。2 つのターミナルでロック待ちも観察します。
Python 第 3 弾: pandas と matplotlib で売上レポートを可視化する
12 か月分の売上データを pandas で月次・地域別に集計し、matplotlib で折れ線と構成比のグラフを PNG に出力、要点を Markdown のレポートにまとめます。JupyterLab で試行錯誤してからスクリプトに固める、データ分析の実務の型を体験します。
TypeScript 第 2 弾: zod で入力検証、JSON に永続化、Node 標準テストで守る
第 1 弾で作った Express の TODO API を、zod による入力検証(優先度・期限)、todos.json への永続化と再起動後の復元、?done= の絞り込み、Node 標準テストランナー(node:test)による自動テストで「壊れにくい API」に育てます。
Bash 第 2 弾: 世代管理つきバックアップ スクリプトを書いて cron で回す
業務データのディレクトリを tar.gz に固めるバックアップ スクリプトを、引数チェック・エラー処理・ログ追記・最新 3 世代の管理まで含めて書き、cron の設定を用意します。運用で「毎晩勝手に動いて、壊れたら気づける」スクリプトの基本形です。
Git 第 2 弾: rebase で履歴を整え、revert で取り消し、追跡ミスを直してタグを打つ
チーム開発で毎週のように起きる 4 つの場面を扱います。誤ったコミットを revert で安全に取り消す、誤って追跡したログを .gitignore で外す、古い地点から分岐したブランチを rebase で最新の main に付け替える、fast-forward で取り込んで注釈付きタグを打つ。