2026年6月1日から7日の週は、ワークロードを今の場所に留めておく長年の理由を2つ取り除いた。データベースをEC2に縛り付けていたSQL Serverのライセンスと、アプリケーションを1つのリージョンに縛り付けていたCognitoユーザープールだ。 どちらの発表も華やかではない。だがどちらも、かつて「できません、なぜなら」で終わっていた移行の会話を変える。

その下では、Kubernetes 1.36がユーザー名前空間のGAとともにAmazon EKSに到達し、Fargateは32 vCPUタスクまで拡大し、Cost and Usage Reportは手組みのパイプラインなしでAthenaとRedshiftに届くようになった。まとめて読めば配管工事の週であり、配管工事の週こそプラットフォームチームが本物の金を節約する週だ。

RDS for SQL Server: すでに支払ったライセンスを持ち込む

6月2日公開のAmazon RDS for SQL ServerがBring Your Own Mediaをサポートした。オンプレミス、他クラウド、あるいはEC2上の自前管理SQL Serverから移る顧客は、MicrosoftのLicense Mobilityプログラムを通じて、Software Assuranceを含む既存のSQL ServerライセンスをRDS上で再利用できる。ライセンスの使用状況はAWS License Managerで追跡される。

これまでのRDSの選択肢はLicense Includedで、エンタープライズ契約の期間中であればMicrosoftに二重払いすることを意味していた。SQL Server群がRDSではなくEC2に着地する理由として私が最も多く聞いてきたのがこれだ。技術的な制約ではなく、調達上の制約。BYOMはその論点を消し去る。しかもAWS TransformがBYOMとLicense Includedを比較モデル化するコスト評価を追加する1週間前に届いた(こちらは6月8日付なので来週の記事に属する)。

トレードオフはLicense Mobilityが常に抱えてきたものだ。有効なSoftware Assuranceに依存し、コンプライアンスの立証責任はマネージドサービス上でもあなたのものになる。License Managerは数えるのを助けるが、監査は助けない。最初のインスタンスを立てる前に、誰がそれを持つかを決めておくこと。

Cognitoに2つ目のリージョン、ただし条件付き

Amazon Cognitoのマルチリージョンレプリケーションは、ユーザープロファイル、認証情報、プール設定の同期コピーをセカンダリリージョンに保持する。ローンチ記事がその形を明記している。レプリケーションは一方向、セカンダリは読み取り専用で認証を提供し、どちらのリージョンが発行したトークンも両方で認識され、フェデレーション(ソーシャル、SAML、OIDC)はレプリカからも動く。16リージョンのEssentialsおよびPlusティアのプール向けアドオンで、価格はレプリカリージョンあたり月間アクティブユーザー1人につきEssentialsで$0.0045、Plusで$0.006、マシン間トークンには30%の追加料金がかかる。

Cognitoは、多くのアーキテクチャで「マルチリージョン」を嘘にしていた部品だった。データベースは複製され、コンピュートはステートレスで、IDプロバイダーは正確に1か所にだけ住んでいた。これはその問題を直す。だが祝う前にセットアップ手順を読むこと。マルチリージョンKMSキーが必要で、OIDC発行者タイプを新しいマルチリージョンエンドポイントに切り替えなければならず、それはサーバーサイドのクライアント全部の再デプロイとモバイルアプリのアップデート配布を意味する。Lambdaトリガー、SMSとメールの設定、ログストリーミング、WAFルールは複製されない。ターゲットリージョンで手作業により組み直す。フェイルオーバー中はサインインは継続するが、新規登録とプロファイル更新は止まる。

フェイルオーバーそのものはあなたの仕事だ。自分で設計したヘルスチェックに駆動されるDNS更新。カスタムドメインを使うマネージドログインについては、Route 53ヘルスチェックに対する組み込みのルーティングがある。必要になる前にオフピークのトラフィックの一部をセカンダリに流しておけという記事の助言が、勝負のすべてだ。テストされていない待機系は仮説にすぎない。

EKS上のKubernetes 1.36: Webhookは減り、rootも減る

Amazon EKSとEKS DistroがKubernetes 1.36をサポートした。GovCloudを含むEKSが動くすべてのリージョンでだ。プラットフォーム運用者に関係する機能は4つ。User NamespacesがGAになり、コンテナのrootを非特権のホストユーザーにマッピングするので、コンテナブレイクアウトがノード権限をもたらさない。Mutating Admission Policiesにより、Webhookインフラを運用せずにCELベースの変更をAPIサーバー内で表現できる。インプレースのPodレベル垂直スケーリングは、再起動なしにPodの共有CPUとメモリ予算をリサイズする。そしてResource Health StatusはデバイスのヘルスをPodステータスに表出させる。

行動に移すべきはMutating Admission Policiesだ。運用しているすべてのmutating Webhookは、すべてのkubectl applyのクリティカルパス上にある部品であり、自前のTLS、自前の可用性、自前のタイムアウトを抱えている。サイドカー注入、デフォルトラベル、イメージの書き換えをCELポリシーに移せば、障害のひとつのクラスが消える。User Namespacesはセキュリティ面の勝利だが、ランタイムとノードの対応が要るので、フラグではなくノードグループの移行として扱うこと。

AthenaとRedshiftでのCUR 2.0、Glueなしで

Cost and Usage Report 2.0がAthenaおよびRedshiftと統合された。エンジンを選べば、エクスポートは正しいフォーマット(ParquetまたはGZIP)で、テンプレート、テーブル定義、ロード手順とともに届き、データの更新に合わせてテーブルも更新される。請求データをクエリ可能にするためだけにGlueクローラーとCloudFormationスタックを保守してきた人なら、これが何を置き換えるか分かるはずだ。すべての商用リージョンで利用可能で、GovCloudと中国は対象外。EBSとECSのライトサイジング向けのCompute Optimizerの新しい32日ルックバックと組み合わせたい。こちらはようやく月次サイクル全体をカバーする。

今週のその他

通底するテーマ

今週の発表はどれも、以前は作れなかった能力を加えるものではない。自分のライセンスでEC2上にSQL Serverを動かすことはできた。Cognitoのエクスポートジョブを書いて祈ることもできた。Webhookを運用することもできた。変わったのは、かつてアンマネージドな道を強いていたケースをマネージドな道がカバーするようになったことで、「動かしたいもの」と「ライセンスやアーキテクチャが許すもの」の隙間が少し閉じたことだ。移行を動かすのはこういう週であって、基調講演の週ではない。

次に読む

この週のAIとエージェント側の読み解きは、ercan.aiにある。AWS、クラウド、CI/CDパイプライン、Linux、GitHub/GitLabなどのコンサルティングは、ercanermis.comからどうぞ。

参考資料