AWS Elemental MediaConvert の API エンドポイントがアカウント固有でなくなっていた件

こんにちは、広野です。

最近、AWS Lambda 関数から AWS Elemental MediaConvert の API を呼び出そうとしたときに気付いたことを話します。API エンドポイントが変わっていました。いつから変わっていたのかわからないのですが。

そもそも MediaConvert って?

ひとことで言うと、動画をエンコードしてくれるサービスです。動画処理ソフトウェアができることに近いです。私は MP4 のデータをストリーミング可能な形式 HLS に変換する目的で使用しています。ユーザがアプリ UI からアップロードした動画データを自動的にエンコードするのに便利です。

変更点

本題です。

今現在の AWS Elemental MediaConvert のマネジメントコンソール画面です。左側のメニュー、矢印の位置に「アカウント」という設定があったのですが、無くなっていました。

実はこのアカウントの設定には、アカウントかつリージョン固有の MediaConvert API エンドポイントの URL が表示されており、API を呼び出すときにはその URL を使用しなければならない、という仕様がありました。

例えば AWS Lambda 関数 (Python) では、以下のようにエンドポイントを打ち込んでいました。

client = boto3.client('mediaconvert', region_name='ap-northeast-1', endpoint_url='https://xxxxxxxx.mediaconvert.ap-northeast-1.amazonaws.com')

マネジメントコンソールからアカウントの設定が無くなったことを受けて AWS ドキュメントを確認したところ、以下のように DescribeEndpoints は不要になったと書いてありました。これがアカウントかつリージョン固有の API エンドポイントだったはず。

Note that DescribeEndpoints is no longer required. We recommend that you send your requests directly to the regional endpoint instead.

結論

試してみたら、AWS Lambda 関数からの MediaConvert API 呼出は API エンドポイント指定なしで動きました。

client = boto3.client('mediaconvert')

従来の方法で作成済みの AWS Lambda 関数が動くかは未確認です。過去に作成していたリソースを削除してしまったため。ですが互換性維持のため、動くのではないかと想像します。

まとめ

いかがでしたでしょうか?

この変更についてアナウンスがあったのかわからず、変更に気付いたときは戸惑いました。

短いですが、本記事が皆様のお役に立てれば幸いです。

著者について
広野 祐司

AWS サーバーレスアーキテクチャを駆使して社内クラウド人材育成アプリとコンテンツづくりに勤しんでいます。React で SPA を書き始めたら快適すぎて、他の言語には戻れなくなりました。サーバーレス & React 仲間を増やしたいです。AWSは好きですが、それよりもフロントエンド開発の方が好きでして、バックエンド構築を簡単にしてくれたAWSには感謝の気持ちの方が強いです。
取得資格:AWS 認定は13資格、ITサービスマネージャ、ITIL v3 Expert 等
2020 - 2024 Japan AWS Top Engineer 受賞
2022 - 2024 AWS Ambassador 受賞
2023 当社初代フルスタックエンジニア認定
好きなAWSサービス:AWS Amplify / AWS AppSync / Amazon Cognito / AWS Step Functions / AWS CloudFormation

広野 祐司をフォローする

クラウドに強いによるエンジニアブログです。

SCSKクラウドサービス(AWS)は、企業価値の向上につながるAWS 導入を全面支援するオールインワンサービスです。AWS最上位パートナーとして、多種多様な業界のシステム構築実績を持つSCSKが、お客様のDX推進を強力にサポートします。

AWSクラウド
シェアする
タイトルとURLをコピーしました