catch-img

AWSサンドボックス環境をAWS Control Towerで運用しています

こんにちは。ラーニングサービス本部 テクニカルトレーニング部 第1チームの山下です。
私のメインの仕事はAWS認定クラスルームトレーニングを受講者さんに提供することです。
AWS認定クラスルームトレーニングはAAI(AWS Authorized Instructors)にのみ実施する権限があります。

  AWS 認定インストラクタープログラム | AWS トレーニングと認定 AWS 認定インストラクター (AAI) プログラムは、AAI ステータスによって認定された AWS 社員、パートナー雇用のインストラクター、およびフリーランスインストラクターといった、AWS の公式カリキュラムを実施する権限を持つすべてのインストラクターを集結するグローバルプログラムです。 Amazon Web Services, Inc.

AAIは、弊社のようなATP(AWS Training Partner)に所属し、AWS社による書類と実技のチェックプロセスをすべて通過したインストラクターです。
トレノケートには私も含む現在5名の正社員AAIと候補が1名在籍しています。
受講者さんに効果的なデモをご覧いただいたり、触れていただいたり、サービス機能の検証を行うためにはAWSアカウントが必要です。
そのAWSアカウント組織を検証やデモが中心ですので、「サンドボックス」と呼んでいます。
砂場です。
子供が砂場で遊ぶようにAWSのサービスや機能を検証できる、そんな環境として運用しています。
AWSサンドボックス環境をAWS Control Towerで構築、運用しています。
それによりどのような効果があったかを紹介します。

ランディングゾーン

Control Towerで作成するOrganizations組織のベストプラクティス構成はランディングゾーンと言います。
Control Towerを使用するとこのランディングゾーンを数クリックで作成できます。
トレノケートでは1人のインストラクターあたり10,000円と管理機能向けに15,000円で予算をとっています。
現在候補者を含んでAAIは6名ですので、75,000円の予算です。
充分に下回って運用できています。
超えそうな場合は事前相談として稟議を通していますが、すぐに相談するのではなく、Well-Architectedコストの柱にもとづいて無駄を発生させないように見直すべきと考えています。

コストのアラームや管理については次のサービス、機能を使用して無駄が発生しないようにしてます。

  • Amazon CloudWatch請求アラーム
  • AWS Cost Explorer
  • AWS Budgets
  • AWS Cost Anomaly Detection
  • AWS Compute Optimizer
  • 各種リザーブドオプション
  • Savings Plans

各アカウントのルートユーザーメールアドレスは、会社ドメインからサブドメインを1つもらって、マスターアカウントのRoute 53で管理しています。
Amazon SESにメールが届くようにMXレコードを設定しています。
SESのメールはS3バケットで受信して、Lambda関数により会社のメールアドレスに転送しています。

ログ

CloudTrailログとConfigスナップショットはランディングゾーンのデフォルトどおりに、ログ用アカウントのS3バケットに収集されます。
CloudTrailログファイル検証を有効にしていますので、検証用のダイジェストファイルも生成されています。
CloudTrailはランディングゾーンのデフォルトではデータイベントは有効化されていませんので、後から有効にしています。

S3に蓄積されたログデータはAthenaでクエリーできるようにGlueのデータカタログテーブルを作成し、Partition Projectionを設定していますので、パーティションが自動で反映されて管理が楽です。

通知

監査用に作成されているAuditアカウントのAmazon SNSトピックには、各アカウントのSNSトピックとLambda関数から通知が送信されています。
AuditアカウントのSNSトピックのサブスクライバーとしてLambda関数を作成して、会社で使用しているMicrosoft Teamsに通知内容を送信しています。
これでAAI全員が見える場所に通知が届きます。

Configアグリゲータもランディングゾーンによって自動でAuditアカウントに設定されているので、監査用のロールを使って確認できます。

コントロール(ガードレール)

SCP、Configルールで実装されているコントロールは、必須のみ有効にしています。
ほかのコントロールも今後必要に応じてコントロールライブラリから有効化します。

そのほか、独自のSCPも設定しています。
AAIがそれぞれ自由に検証はしてほしいのですが、高額なものや長期契約のものは全員で検討したいので、個別には操作できないようにSCPでOUに対して一括拒否しています。

アウトプット

サンドボックスを使って検証して、トレノケートのAAIが発信したアウトプットをいくつか紹介します。

  [Track_A][14:00-14:20]AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(シスコ認定インストラクター監修!) | JAWS DAYS 2021 セッション内容 ネットワークに馴染みのないエンジニアさんが DirectConnect や VPN でオンプレミスと触れ合うときに出てくる数々の謎ワード、たくさんありますよね。「動的ルーティング」「BGP」「ロンゲストマッチ」「Autonomous System」などなど、、、これらの用語を、AWS認定インストラクターがわかり易く解説致します。内容はトレノケートのシスコ認定インストラクターが監修し JAWS DAYS 2021 -re:Connect-

金井さんは、JAWS DAYSで「AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(シスコ認定インストラクター監修!)」と題して、知っておいたほうがいいネットワークの用語や設計基礎知識について発表されました。
トレノケートにはCiscoのアワードに選ばれるようなインストラクターも複数在籍していますので、監修協力してもらえました。

髙山さんはさまざまなコーストレーニングで使うツールを開発されていて、それらについてまとめてJAWS DAYS前夜祭で発表されていました。

ツールはToolという名前のOUを作ってそこで展開して共有利用しているものもあります。

  演習成果物を共有するファイル共有システムを AWS SDK で作った話 受講者と講師の間でファイルをやり取りするために FTP サーバーを用意してもセキュリティ上許可されていな場合があります。そこで、システムを AWS SDK ベースで作りました。 トレノケート公式ブログ

髙山さんは最近ではファイル共有システムを開発しました。

  AWS CDK を使って新入社員研修用の演習環境を構築した話 AWS CDK を使って研修で利用する大量のインフラストラクチャの環境を自動化しました。いつくか注意点も。 トレノケート公式ブログ

ほかには新入社員研修向けの環境をCDKで構築しました。
もちろんこのCDKの開発、テストもサンドボックスで行われました。

  Amazon Connectで毎日1時間の業務を自動化し削減しました Amazon ConnectとAWSのいくつかのサービスを使用して、毎日1時間発生していた業務を自動化して削減しました。 リリースにあたって、部門同士のAPI連携がうまくいったことと、ボトムアップとトップダウンがうまく作用したことも含めて記載します。 トレノケート公式ブログ

全社で使うAPIもサンドボックスで検証して、Control Towerからランディングゾーンに追加してアカウントで運用しています。
この件は日本各地の勉強会で発表しました。

  ご質問フォームの最近のアーキテクチャ~2020年10月~ 今日ご紹介するのは、トレーニングコース中に受講者さんからのご質問を匿名で受け付けるご質問フォームの最近のアーキテクチャです。 2018年からブログでは更新していなかったのですが、少しづつ見直しを図ったり、機能追加していました。 トレノケート公式ブログ

受講者さんの質問を匿名で受ける仕組みもサンドボックスから始まりました。

  Zoomの投票作成をAPIで秒処理 Zoomミーテイングの投票をAPI経由で何度もくり返し作成できるツールを使っています トレノケート公式ブログ

ZoomのAPI呼び出しをして業務の効率化をしたときも、すぐにチャレンジして実現できることを確認できました。

まとめ

AWS Control Towerを使用して、子供が砂場でけがをせず楽しく遊びながら学ぶように、安全に検証できる環境を構築、運用できています。
そうしてAAIは受講者さんに見たり触ったりしていただくデモを構築したり、コースで使用するツールを開発したり、社内サービスを内製したりできています。
それをアウトプットすることにより、社内外への共有と情報提供にもなっています。
会社としても社員の成長とコース品質の向上、社外へのPR要素など、充分に価値のある運用が続けられています。
もしも今、サンドボックスがないという組織は、ぜひ企画していただいて、所属されているエンジニアさんの成長とサービス向上、社外へのアウトプットに繋げていただく。
そんなご検討にこの記事を使っていただけますと幸いです。

山下 光洋(やました みつひろ)

山下 光洋(やました みつひろ)

トレノケート株式会社 講師。AWS Authorized Instructor Champion / AWS認定インストラクター(AAI) / AWS 認定ソリューションアーキテクト - プロフェッショナル /AWS認定DevOpsエンジニア - プロフェッショナル / AWS 認定デベロッパー - アソシエイト / AWS 認定 SysOps アドミニストレーター - アソシエイト / AWS 認定クラウドプラクティショナー / kintone認定 カスタマイズスペシャリスト他。AWS認定インストラクターとしてAWS認定コースを実施。毎年1,500名以上に受講いただいている。AWS 認定インストラクターアワード2018, 2019を日本で唯一受賞。著書『AWSではじめるLinux入門ガイド』(マイナビ出版社)。共著書『AWS認定試験対策 AWS クラウドプラクティショナー』(SBクリエイティブ社)。前職では2016年にAWS Summitにパネラーとして参加。その前はLotus Technical Award 2009 for Best Architectとして表彰されている。また、各コミュニティの運営にも個人的に関わり、勉強会にてスピーカーや参加をしている。
   

AWS認定資格サンプル問題に挑戦

AWS に関する記事

人気記事

© Trainocate Japan, Ltd. 2008-2023