👋

週刊AWSキャッチアップ(週刊AWS/週刊生成AI 2024/1/27週)

2025/02/07に公開

知識が浅いサービスや分野の場合、浅い内容となることがあります。あらかじめご承知おきください。

週刊AWS – 2025/1/27週 | Amazon Web Services ブログ

週刊生成AI with AWS – 2025/1/27週 | Amazon Web Services ブログ

AWS User Notifications で新機能の AWS Managed Notifications を提供開始

Announcing general availability of AWS Managed Notifications - AWS

  • AWS User Notificationsにて、AWS Managed Notificationsの一般提供が開始されました
    • 今回のアップデートでは、AWS Healthから通知されるメッセージの通知先管理/変更ができるようになっています
      • AWSドキュメントによると、従来は既存アカウントの連絡先に送信されていたとのこと
      • 従来はEventBridge等を経由させていたりしていましたが、経由せずとも設定ができるようになっています
  • AWS User Notificationsは2023年にリリースされた機能で、AWSサービスからの通信を一元的に設定・管理できるサービスです

参考: マネコン画面

マネコンの画面を確認したところ、AWSマネージド通知サブスクリプションのタブと組織設定のタブが追加されています。

image-20250207051939079

試しにサブスクリプションを管理をクリックすると、下記の画面が出てきます。
image-20250207052450517

配信チャンネルとしてはメールの他にAWS Chatbotなども使用可能です。

image-20250207052706267

組織設定の画面は下記のようになっていて、委任管理者等も設定できるようになっています。

image-20250207052958495

参考リンク

AWS API Changes

AWS managed notifications in AWS User Notifications - AWS User Notifications

Amazon EKS マネージドノードグループで新しい minimal アップデート戦略を導入

  • EKSのマネージドノードグループの新しいアップデート戦略としてminimalが登場しました。
    • EKSに限らず、k8sは定期的にアップデートをする必要があります(塩漬けクラスターはサポートが受けられなくなるのでNG、塩漬けダメ絶対)
    • 従来のdefault戦略は、アップデート時に新しいノードを作成した後、古いノードを削除する動きをしていました。今回新しく出たminimalは、先に古いノードを削除してから新しいノードを作成します
      • AWSドキュメントでも基本はdefaultを推奨しており、GPUインスタンスなどリソースやコストに制約がある場合にminimalを使用すべしとのこと

参考: EKSのEOL

Understand the Kubernetes version lifecycle on EKS - Amazon EKS

EKS以外の製品でも延長サポート抜きで18か月程度でアップデートをしていく必要があります。延長サポートは追加料金がかかります。

# Kubernetes version Upstream release Amazon EKS release End of standard support End of extended support
1 1.32 11-Dec-24 23-Jan-25 23-Mar-26 23-Mar-27
2 1.31 13-Aug-24 26-Sep-24 26-Nov-25 26-Nov-26
3 1.3 17-Apr-24 23-May-24 23-Jul-25 23-Jul-26
4 1.29 13-Dec-23 23-Jan-24 23-Mar-25 23-Mar-26
5 1.28 15-Aug-23 26-Sep-23 26-Nov-24 26-Nov-25
6 1.27 11-Apr-23 24-May-23 24-Jul-24 24-Jul-25
7 1.26 9-Dec-22 11-Apr-23 11-Jun-24 11-Jun-25
8 1.25 23-Aug-22 22-Feb-23 1-May-24 1-May-25
9 1.24 3-May-22 15-Nov-22 31-Jan-24 31-Jan-25

参考リンク

Understand each phase of node updates - Amazon EKS

Understand the Kubernetes version lifecycle on EKS - Amazon EKS

S3 metadataの一般提供を開始

Amazon S3 Metadata が一般利用可能に - AWS

  • S3 metadataがGAになりました
    • S3 metadataは、S3へファイル等の追加/変更があった場合にメタデータを自動生成し、S3 Table Bucket(Icebergテーブル)へ保存してくれるサービス
    • 従来は大規模にS3を利用していた場合に、特定の条件にマッチするオブジェクトを見つけるのが困難で、課題解消にはAthena等を使って自前で分析をする基盤を作る必要がありました。S3 metadataでは、自動生成をして格納してくれるのでこの手間がなくなっています
      • 利用にあたって制約事項もあるので、ドキュメントをご確認ください
    • S3 metadataで提供されるメタデータは3つになります
      • System-defined metadata: オブジェクト作成日、ストレージクラスなど
      • Custom metadata: ユーザー定義のmetadata
      • Event metadata: オブジェクトの更新や削除などのイベント

実際に作成してみた

実際にAWS Blogに従って作成してみました。あらかじめS3バケットを作成します。

aws s3 mb s3://20250207-data-bucket-metadata2 --region us-east-2
## 出力結果
make_bucket: 20250207-data-bucket-metadata2

metadataを格納するテーブルバケットを作成します。

aws s3tables create-table-bucket --name 20250207-table-bucket-1 --region us-east-2
## 出力結果
{
    "arn": "arn:aws:s3tables:us-east-2:XXXXXXXXXX:bucket/20250207-table-bucket-1"
}

ARNをconfig.jsonに記載します。

{
  "S3TablesDestination": {
    "TableBucketArn": "arn:aws:s3tables:us-east-2:XXXXXXXXXX:bucket/20250207-table-bucket-1",
    "TableName": "20250207-table-bucket-1"
  }
}

作成したらデータバケットにアタッチします。

aws s3api create-bucket-metadata-table-configuration \
--bucket 20250207-data-bucket-metadata2 \
--metadata-table-configuration  file://./config.json \
--region us-east-2

metadataがアタッチされているか確認します。

aws s3api get-bucket-metadata-table-configuration \
--bucket 20250207-data-bucket-metadata2 \
--region us-east-2
## 出力結果
{
    "GetBucketMetadataTableConfigurationResult": {
        "MetadataTableConfigurationResult": {
            "S3TablesDestinationResult": {
                "TableBucketArn": "arn:aws:s3tables:us-east-2:XX:bucket/20250207-table-bucket-1",
                "TableName": "test_metadata_table",
                "TableArn": "arn:aws:s3tables:us-east-2:XX:bucket/20250207-table-bucket-1/table/67ed1366-57b3-48dd-91b0-4b9f1a5e3b51",
                "TableNamespace": "aws_s3_metadata"
            }
        },
        "Status": "ACTIVE"
    }
}

参考リンク

Amazon S3 バケットについてのクエリ可能なオブジェクトメタデータのご紹介 (プレビュー) | Amazon Web Services ブログ

S3 Metadata tables schema - Amazon Simple Storage Service

Metadata table limitations and restrictions - Amazon Simple Storage Service

Accelerating data discovery with S3 Metadata - Amazon Simple Storage Service

AWS Amplify がサーバーサイドの AWS Lambda 関数で TypeScript データクライアントの使用をサポート

  • Lambda関数内でAmplifyデータクライアントを使用できるようになりました
    • Amplifyのデータコンポーネントの実体はAppsyncを使ったGraphQLで、これまではLambda関数内でGraphQLのクエリを記述する必要がありました
    • 今回のアップデートでFunction 上で Amplify のデータスキーマクライアントを生成できるようになり、生のGraphQLクエリを書く必要がなくなりました

参考リンク

[アップデート] AWS Amplify で管理する Lambda 関数から GraphQL クライアントやクエリを使わずに Amplify 上で定義した Data スキーマを操作できるようになりました | DevelopersIO

Amazon Redshift がクエリ監視と診断を改善するための強化されたクエリモニタリングを提供開始

  • RedShiftにて強化されたクエリモニタリング機能をリリースしました
  • トレンド分析のためのパフォーマンス履歴の表示、ワークロードの変更の検出、時間の経過に伴うクエリパフォーマンスの変化の理解、クエリプロファイラーによるパフォーマンスの問題の診断などがやりやすくなります

参考リンク

Query and Database Monitoring - Amazon Redshift

[アップデート] Amazon Redshift クエリモニタリングと診断を改善した新しいクエリモニタリング機能を試してみた | DevelopersIO

Amazon SES Mail Manager が大阪リージョンを含めた新しいリージョンで提供開始

  • SES Mail Managerは受信メールゲートウェイを担う機能となっており、組織内でメールを送受信する際にコンプライアンスを一元管理できる機能です
    • 例えばDKIM が Pass になったメールのみ受信する、Trend Micro Virus Scanning と連携しウイルススキャン後にメールを受信するといったルール管理ができます
  • Mail ManagerではOpen Ingress EndpointsとAuthenticated Ingress Endpointの2つのSMTPエンドポイントが用意されています
    • Open Ingress Endpoints: メールを受信するためのドメイン認証が不要、DNSのMXレコードをIngress Endpointsに向ければ受信できる
    • Authenticated Ingress Endpoint: SMTP認証が必要なエンドポイント。メールを送信したい場合はSMTPの認証情報が必要になる

AWS Blogにあったこの画像がわかりやすいと思います。

SES MailManager high level architecture

参考リンク

イングレスエンドポイント - Amazon Simple Email Service

Mail Manager – Amazon SES introduces new email routing and archiving features | AWS Messaging & Targeting Blog

SES Mail Manager がアドレスとドメインリストのサポートを追加

  • SES Mail Managerがメールアドレス/ドメインリストをサポートしました
    • 例えばMail Manager経由でメールを送受信する際に、誤入力されたメールアドレスや、ディレクトリハーベスティング攻撃、すでに信頼しているドメインなどをルールエンジン上で識別できるようになります

参考: 実際のコンソール画面

マネコン画面に新しくアドレスリストというメニューが生えています。

image-20250207084807311

マネコンでの手入力のほか、CSVでもアップロードができます。

image-20250207084945642

Amazon Lex のアシスト付きスロット解決機能を東京リージョンを含めた新しいリージョンで提供開始

  • Amazon Lex のアシスト付きスロット解決機能の提供リージョンが拡大され、東京リージョンを含めた10リージョンで利用可能になりました
    • アシスト付きスロット解決機能は、Amazon Bedrockと連携して、一部の組み込みスロットの精度を向上させる機能です
      • 例: お客様が来月1日と発言したもの→2025-02-01と解釈するなど
  • Amazon Lexは音声やテキストを使った会話型インターフェース(チャットボット)を構築するサービス

参考リンク

アシスト付きスロット解決を使用した Amazon Lex V2 のスロット値の明確化 - Amazon Lex

Amazon Timestream for InfluxDB でストレージスケーリングをサポート

  • Amazon Timestream for InfluxDBで、ストレージスケーリング機能を提供開始しました

    • 割り当てられたストレージをスケーリングし、ストレージ階層を変更することができるとのこと
  • Amazon Timestream for InfluxDBは、時系列データベースであるInfluxDBをマネージドで提供するサービス

    • Amazon Timestream for InfluxDBと既存の Timestream(LiveAnalyticsエンジンベース)がある
      • ほぼリアルタイムの時系列クエリまたは InfluxDB の特定の機能 (Flux クエリ等) が必要なユースケースの場合は、Amazon Timestream for InfluxDBが適しているとのこと
      • 1 分あたり数十ギガバイトを超える時系列データを取り込み、ペタバイトの時系列データに対して SQL クエリを数秒で実行するようなユースケースでは既存のTimestreamが適しているとのこと

参考リンク

Amazon Timestream を使ったオープンソースの InfluxDB データベースの実行と管理 | Amazon Web Services ブログ

What is Timestream for InfluxDB? - Amazon Timestream

CloudWatch Database Insights が OS プロセスの履歴スナップショットをサポート

  • CloudWatch Database Insightsにて、データベースで実行されているオペレーティングシステム (OS) プロセスの履歴スナップショットの分析をサポートしました
    • データベースの負荷状況と OS プロセスを紐づけた分析がやりやすくなります
    • Aurora MySQL/Aurora PostgreSQLの両方で対応しています
  • Database Insightsは今年のre:Invent 2024で登場した機能で、Performance Insight、CloudWatch Logs、CloudWatch Application Signalsなどを統合した機能になります
    • 従前はPerformance Insightを確認して、CloudWatch Logsでログを見てといったことが必要だったのが、ダッシュボードでまとめて確認できます

参考リンク

[アップデート]CloudWatch Database Insightsで過去のOSプロセス情報が確認できるようになりました | DevelopersIO

Amazon EBS でスナップショットから EBS を作成する際のリソースレベルのアクセス許可をサポート

  • EBSのCreateVolume APIの対象先リソースとしてスナップショットが追加されました
    • これによって特定のOrganizationやAWSアカウントにあるEBSスナップショットの使用を強制させるといった使い方が可能です
  • 今回のアップデートで影響を受ける場合、AWS Healthから通知が出ており、2025/5/17までに移行するひつようがあるとのこと
    • 更新が必要なパターンは主に2パターンとのこと
      • パターン1: Snapshotをリソースとして指定していない場合
      • パターン2: Condition句がIAMに含まれているケース
        • この場合、volumeにのみ提供するように修正が必要

参考: 変更前後のIAMポリシー比較

変更前はVolumeに対してのみCreateVolume APIの対象リソースが設定可能でした。

{
    "Effect": "Allow",
    "Action": "ec2:CreateVolume",
    "Resource": "arn:aws:ec2:*:*:volume/*"
}

変更後はCreateVolume APIの対象にSnapshotも指定できるようになっています。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "ec2:CreateVolume",
            "Resource": "arn:aws:ec2:*:*:volume/*"
        },
        {
            "Effect": "Allow",
            "Action": "ec2:CreateVolume",
            "Resource": "arn:aws:ec2:*:*:snapshot/*"
        }
    ]
}

参考: 影響を受けるポリシーの例

パターン1: Snapshotをリソースとして指定していない場合

{
    "Effect": "Allow",
    "Action": "ec2:CreateVolume",
    "Resource": "arn:aws:ec2:*:*:volume/*"
}

この場合は下記のようにSnapshotも指定します。

{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "ec2:CreateVolume",
      "Resource": "arn:aws:ec2:*:*:volume/*"
    },
    {
      "Effect": "Allow",
      "Action": "ec2:CreateVolume",
      "Resource": "arn:aws:ec2:*::snapshot/snap-1234567890abcdef0"
    }
  ]
}

パターン2: Condition句がIAMに含まれているケース

{
    "Effect": "Allow",
    "Action": "ec2:CreateVolume",
    "Resource": "*",
    "Condition": {
        "StringLike": {
            "aws:RequestTag/CSIVolumeName": "*"
        }
    }
}

この場合は、Resourceをvolumeのみに絞り込む必要があります

{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "ec2:CreateVolume",
      "Resource": "arn:aws:ec2:*:*:volume/*",
      "Condition": {
        "StringLike": {
          "aws:RequestTag/CSIVolumeName": "*"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": "ec2:CreateVolume",
      "Resource": "arn:aws:ec2:*::snapshot/snap-1234567890abcdef0"
    }
  ]
}

参考リンク

Enhancing resource-level permission for creating an Amazon EBS volume from a snapshot | AWS Storage Blog

AWS Glue で新たに 14 個のコネクタを提供開始

  • AWS Glue で新たに、アプリケーション用途の 14 個のコネクタを提供開始しました
    • Blackbaud Raiser’s Edge NXT、CircleCI、Docusign Monitor、Domo、Dynatrace、Kustomer、Mailchimp、Microsoft Teams、Monday、Okta、Pendo、Pipedrive、Productboard、Salesforce Commerce Cloudが追加されました

参考リンク

Adding an AWS Glue connection - AWS Glue

AWS Transfer Family web apps で、大阪を含めたリージョンの拡張

  • AWS Transfer Family web appsが大阪リージョンを含む20リージョンで利用可能になりました
  • AWS Transfer Family web appは、S3バケットに対してファイルを操作できるWebアプリケーションを作成できる機能です

参考リンク

フルマネージド型の Amazon S3 ファイル転送用の AWS Transfer Family ウェブアプリケーションの発表 | Amazon Web Services ブログ

Storage-JAWS #6 AWS re:Invent 2024 reCap 大会!

【AWS re:Invent 2024】【新機能】AWS Transfer Family Web Appsを試してみました - サーバーワークスエンジニアブログ

Amazon SageMaker Unified Studioのプレビュー可能リージョンを7箇所追加

  • Amazon SageMaker Unified Studioで新たに7リージョンでプレビュー可能になりました
    • ソウル、シンガポール、シドニー、フランクフルト、ロンドン、サンパウロ、カナダ(中央)

参考リンク

Amazon SageMaker Unified Studio の構成や仕組みをまとめてみた #AWSreInvent | DevelopersIO

Amazon Q in QuickSightのDashboard Q&A機能を発表

  • Amazon Q in QuickSightでDashboard Q&A機能がご利用いただけるようになりました
    • ダッシュボードの中でデータに関するQ&Aに応答する機能をワンクリックで追加できるようになっています

Amazon Q Developer Agentが生成したコードに対するビルドとテストのリアルタイム実行に対応

  • Amazon Q Developer Agentがアップデートされ、生成したコードを開発者がレビューする前にビルドやテストを行うスクリプトを実行できるようになりました
    • 指定されたビルドやテストを自動実行しそれにパスしたものだけを開発者に提示することで、開発者に対してより精度の高いコードが提示される可能性が高まる機能

参考リンク

Amazon Q Developerにおけるリアルタイム実行によるコード生成の強化 | Amazon Web Services ブログ

Amazon Q Developer Pro Tierで新規登録ユーザに対する通知メールの自動送信に対応

  • Amazon Q Developer Pro Tierで新規登録されたユーザに対して自動的にメール通知が行われるようになりました
    • メールは24時間以内に送付され、例えばIDEへのQ Developerプラグインのインストール方法などが記載されているとのこと

Discussion