pre re:Invent(re:Invent予選落ち)の個人的気になるAWSアップデート11選
概要
re:Invent前の11月中旬~下旬に、通称 "re:Invent予選落ち" と言われている、re:Inventの中では発表することができなかった大量のAWSアップデートがありました。(まだ収まっていないかも)
re:Invent本体の方が華やかなアップデートが多い一方でこの "re:Invent予選落ち" の方が通常の運用や開発の痒いところに手が届く実用性の高いアップデートが多いのも特徴?になっています。
re:Inventが終わるとこの時期のアップデート何があったけ?となる(去年はなった)のでre:Inventが始まる前のこのタイミングで自分の備忘録として気になったアップデートを整理したいというのが記事を書くモチベーションです。
順番はアップデートが発表された順にはなっていない点はご容赦ください。
Aurora Serverless V2 のゼロスケール
タイトル通り、Aurora Serverless V2でゼロスケール(使っていない時は料金がかからない)できるようになりました。今までServerlessと名前はついているもののゼロまではスケールダウンできませんでしたが、今回のアップデートでできるようになりました。ゼロからスケールアップするには数十秒(未検証)ほどかかると書かれていたところもあり使う用途は選ぶかもしれませんが、開発環境やリードレプリカ、レイテンシーを(かなり)許容できる環境などでは使えそうです!さらに、アップデート発表の数日後に値下げも発表されました。
(公式)
(公式ブログ)
(値下げの発表)
AWS Lambda SnapStart の Python, .NET対応
(公式)
2022 年 11 月 28 日、Java 関数向けの Lambda SnapStart をリリースし、起動パフォーマンスを最大 10 倍改善しました。Lambda SnapStart を使用すると、リソースをプロビジョニングしたり、複雑なパフォーマンス最適化の実装に時間を費やしたりすることなく、関数の初期化から生じる異常なレイテンシーを低減できます。
11 月 18 日、Python および .NET 関数向けの AWS Lambda SnapStart の一般提供の開始を発表しました。これにより、関数の起動パフォーマンスが数秒からわずか 1 秒未満にまで高速化され、通常は Python、C#、F#、Powershell におけるコード変更が最小限またはまったく不要になります。
と2022のre:Invent前後で発表されていたLambda SnapStartという起動を高速化できる機能が、Java以外の言語もサポートされるようになったというアップデートです。
発表された当時から最近まで、「対応言語はJavaだけかあ」と思っていたところもあり、着実に他の言語も対応されていっていて嬉しかったです。
Application Signal (サポート言語拡大, バーンレート, Lambdaサポート)
まだ使ったことがなく、薄めのコメントになりますが、2023年に発表されて今までこちらも対応言語がJavaのみだったのですが、今回NodeJSにも対応し、SLO/SLIを運用するのに欠かせないバーンレートの機能が追加され、サーバーレスのLambdaにAPM機能が対応するなど多くのアップデートが発表されています。
(NodeJS対応)
(バーンレート)
(Lambda)
CloudFormation のタイムラインビュー
CloudFormationのデプロイイベントがタイムラインビューで表示できるようになりました。2024年3月には部分的に並列化されるアップデートも発表されており、どのあたりがデプロイ時間のボトルネックになっているか、改善の余地がありそうか視覚的に見えるようになっています。個人的には、リソースのデプロイに、"進行中", "完了", "依存性チェック"などの状態も見えるようになっているのは良いなと思いました。
(公式)
(ブログ)
(2024年3月に発表された部分的に並列化されるアップデート)
@WinterYukkyさんがX上で教えてくれました!!
ALBとNLBにキャパシティ予約が事前に出来る Capacity Unit Reservation
ALBのキャパシティを増やしたい場合サポートに暖気申請して対応する必要があった(らしい)のですが、今回のアップデートでは自分たちでキャパシティをセットできるようになりました。自分は実際に運用でリードタイムが長くて困ったなどの経験はないですが、スパイクアクセスなどがあるユースケースでは便利なアップデートだなと思いました。
(公式)
DMSで特定のカラムレベルでデータのマスキングができるようになった
DBのデータをマスキングして検証環境のテストデータとして使うようなケースで個人情報などを秘匿化することができる機能のようです。
今まで同じようなことをすると、別のサービスやツールを組み合わせて実現する必要があったのですが、DMSでシュッとできるようになったアップデートです。(と、思っているが試していないので正確なことはまだわかっていません)
DMS自体に料金がかかったりもするのでその辺りも実際に使う際は注意が必要ですが、マネージドな仕組みである程度リアルタイム性を持って同期+マスキングができるのは良さそうです!
(公式)
(ブログ)
Amazon CloudWatch SyntheticsでPlaywrightでシナリオを実行をできるようになった
Playwrightを開発中に書いて、ローカルで回して、CIで回す、みたいな開発組織だと、SyntheticsでもPlaywrightでやれるとテストを作成するのが学習コストやメンテナンスなどの面で優位性が出てくる良いアップデートだと思いました。
PlaywrightのスクリプトをどうやってCloudWatch Syntheticsにデプロイするかなどの実際に運用していく際の課題はありそうで気になるところです。
(公式)
(クラスメソッドブログ)
ECSの予測スケーリング
過去の傾向から推測された「予測されるスパイク」に対してプロアクティブに ECS サービスをスケールアウトできるようになったようです。これに関しては実際に使うためには評価して使う必要があると思いますが、スケーリングの機能がより良いものになっていくと良いなと思い、気になりました。
(公式)
(ブログ)
(X)
CodePipelineにECR publish Actionが追加
CodePipelineを割と使うことが多いので気になりました。
docker build
→ ECR push
などをするためにCodeBuildを用意する必要があったのですが、今回それをやってくれるActionが追加されたようです。ECRへビルド・パブリッシュするだけでなく、Inspectorでの今テナイメージスキャンもできるようです。
イメージタグをどうするか、Actionを実行する基盤のスペックを選べるか、などの実際に使う場合には気になる点はいくつかありそうですが、コンテナを使っていてCodePipelineを使うケースではほとんどの人が必要なActionにもなりそうなので期待です。
(公式)
(クラスメソッドブログ)
(iret.media)
StepFunctions (変数が使えるようになった, JSONataで数学演算などができるようになった, Cfnテンプレートを生成する)
StepFunctionsもいろんなアップデートがありました。変数をバケツリレーで渡していかなくても良くなるものや、ちょっとした計算とかができずにLambdaを挟まないといけなかったものがJSONataを使えば演算ができるようになったりするものなど。そのアップデートの少し前のものだと、GUIで作ったステートマシンの定義をCfnテンプレートで生成する機能が発表されました。
CDKで書いているものをステートマシーンで見たいんだよな〜と思っていたら、またしても@WinterYukkyさんが教えてくれました。AWS Toolkitを使うとVSCodeでステートマシンを可視化できるらしい(早く試したい)
(公式(変数とJSONata))
(公式(Cfnテンプレート))
ChatbotのSDK
詳細把握できていませんが、痒いところに手が届かなかったChatbotがSDKで自由度高く扱えるようになると便利そうなので、期待です!(SDKだとLambdaとか挟まないといけないのがちょっとアレだけど)
(公式)
(ブログ)
その他: CloudFrontとCognitoのアップデートが多すぎる!!
多すぎます。追いきれていません。2つとも最近新規に発表されたサービスでしたっけ?
というのは冗談と本音が半々ですが、全体の印象として、認証認可、CDN、オブザーバビリティ、など使う側からすると他社サービスを使うことが選択肢にあがりやすい部分についてのアップデートが最近は多かった感覚があります。AWSとしてはその辺りも含めてサービス提供していき、全体のワークロードをカバーしていきたいような(アップセルしたい)方向性を個人的には感じました。この辺りは引き続き見ていきたいです。
AWS Observability Best Practicesというものもいつの間にか出ていて本気度を感じます(まだ中身を見えていないですが...)
まとめ
その他にも
- graviton4対応したAurora
- EC2オンデマンドキャパシティ予約
- Anomaly Detectionの機能アップデート
- Price Calculatorのアップデート
- CloudWatch Logsの変換のやつ
- API Gatewayのprivate REST APIにカスタムドメインをつけれるようになったやつ
- CloudFrontのVPCオリジン
- ECSのAZ間リバランシング
- AWS Secutiry Moturity Model v2 (https://x.com/ke_ni_/status/1859314202411937886)
- Compute OptimizerがAuroraにも対応
- VPCのパブリックアクセスのブロック
- DynamoDBのオンデマンド値下げ
などなど、Xを振り返っていたらアップデートが大量にありましたが、箇条書きに留めておきます。
皆さんの気になるアップデートなどがあれば教えて欲しいです!
(これで、re:Invent本番に耐えられるか・・・)
それでは、この記事がどなたかのお役に立てれば幸いです。
Discussion