はじめに
こんにちは!今回は2023年10月18日に開催された「AWS JumpStart 2023 運用編」に参加してきたので、その体験レポートを残そうと思います。
参加経緯
私は普段、サーバーサイドとフロントエンドの開発に携わっています。 社内のプロダクトでAWSを使用しており、開発時のデバッグ環境構築やデプロイ、本番障害の調査などでAWSコンソールを操作する機会もあります。 AWSの知識としてはアーキテクチャ図を見て各AWSサービスの役割や基本的な概要は理解できる程度です。
弊社では「Fail Fast, Go Higher(大胆に試そう、そして成長しよう)」を行動指針のひとつとしています。
社内には専任のインフラエンジニアもいますが、AWSは開発に密接に関わるので自身でもより実践的な知識を習得したいと考えています。アプリケーションの効率的な運用とスムーズな開発を実現するために、パフォーマンスの最適化やモニタリングなど、どこに改善の余地があるかまたその実現方法としてどんなサービスがあるのか。視野を広げるヒントとなればと思い、今回の研修プログラムに参加しました。
イベント概要
「AWS JumpStart 2023 運用編」は AWS 初学者のエンジニアの方々を対象とした、実践的な研修プログラムです
将来的にAWS 活用をリードする人材になるための第一歩をスムーズに踏み出せるようなプログラムをご提供します 単なるAWS サービスの学習だけでなく、運用時に直面する具体的なユースケースや課題を例に適切な対応をご自身で検討・実施できるようになる部分にフォーカスした内容となっております
イベント当日には350人前後が参加されており、インフラエンジニア、サーバーサイド、フロントエンド、情シス、QAなどなど異なるポジションの方が集まっていました。 講義中は質問をslackに投稿していく形式で行われ、他の参加者の質問も見ることができます。自身とは異なる視点で新しい気づきにもなり、後日一通り眺めてみても面白かったです。
プログラムの内容
IaC編
講義では「Infrastructure as Code(IaC)」について学び、IaC関連のサービスである「AWS CloudFormation」と「AWS CDK」の構成、仕組み、開発フローについて解説を受けました。 ハンズオンでは「AWS Cloud9」を使いコードを書き、CDKでCloudFormationのテンプレート作成からデプロイまでの実際のプロセスを体験しました。
実施したハンズオンはこちらに公開されているので、ご興味がある方はぜひお試しください。
CI/CD編
CI/CD編では必要性について学び、その実現のためのサービスのひとつとして「Amazon CodeCatalyst」が紹介されました。 ハンズオンではCodeCatalystを使用して、Issueの管理からプルリクエストの作成、デプロイまでのフローを体験しました。
実施したハンズオンはこちらに公開されているので、ご興味がある方はぜひお試しください。
モニタリング編
モニタリング編ではObservability(可観測性)に焦点を当て、監視の目的について学びました。また、アンチパターンからベストプラクティスまでの実例の解説を聞けました。 ハンズオンでは「Amazon CloudWatch」を活用して、ELB、ECS、RDSのメトリクスを確認し、それをダッシュボード上に可視化できるようグラフを作成。さらに、「AWS CloudShell」を使用して、アプリに大量のリクエストを送り続ける負荷をかけ、数値やグラフの変化を観察できました。
最終的に作成したダッシュボードはこちらのようになりました。
参加してみて
ハンズオンで実際にコードを書いて印象的だったのは、CDKのコードが非常に簡潔である点です。少ない記述で、AWSのベストプラクティス設定内容がCloudFormationテンプレート生成時に自動的に反映されるため、非常に便利でした。 弊社ではTerraformを使用していますが、CDKとの利点と欠点について今後深掘りして比較してみたいなと思いました。
モニタリングでは業務上、CloudWatchを使用する機会は以前からありましたが、ダッシュボードなどは主に既存の完成したものを参照する程度にとどまっていました。ですが今回の研修プログラムを通じて、具体的なメトリクスの解釈方法やグラフの作成方法など、詳細な可視化手法を学ぶことができ、非常に有意義でした。
今回学んだ内容を起点として、さらに気になった内容を深掘りして学んでいきたいと思います。