投稿日: Jun 24, 2021

Amazon EMR on Amazon EKS がカスタムイメージをサポートするようになりました。お客様は、この新機能を使用して、Amazon EMR on EKS 上で実行する Apache Spark アプリケーションに使用する Docker コンテナイメージをカスタマイズできます。カスタムイメージを使用すると、EMR の Spark ランタイムのパブリックディストリビューションで使用できないワークロードに固有のパッケージを単一のイミュータブルコンテナにインストールして設定できます。イミュータブルコンテナでは移植性が向上し、各ワークロードの依存関係管理が簡素化されます。また、EMR on EKS 向けに開発しているアプリケーションを独自の継続的インテグレーション (CI) パイプラインに統合できます。

これまで、EMR on EKS のお客様は、アプリケーションの依存関係をジャストインタイムで提供し、Amazon S3 などの外部ストレージサービスからジョブ送信の一部として依存関係を送信していました。本日より、カスタムイメージのサポートによってアプリケーションとその依存関係を含む Docker イメージを各ユースケースに作成できるようになりました。例えば、データエンジニア用にアプリケーションで必要な特定の Java バージョンと証明書を含むカスタムイメージを作成する一方で、データサイエンティスト用に独自のライブラリや特定の Python 依存関係などの別の依存関係を含む別のイメージを作成できます。データエンジニアとデータサイエンティストは、アプリケーション固有のカスタムイメージを EMR on EKS ジョブで使用できます。この新機能では、外部に保存されたライブラリの保守、更新、バージョン管理を行う必要がなくなり、コンテナ化された他のアプリケーションで使用しているものと同じ DevOps プロセスを使用してビッグデータアプリケーションを開発できます。

EMR on EKS ジョブでのカスタムイメージの使用は簡単です。Start-Job-Run API で spark.kubernetes.container.image パラメーターを使用して、ジョブで使用するカスタムイメージを指定できます。spark.kubernetes.driver.container.image パラメーターと spark.kubernetes.executor.container.image パラメーターを使用して、Spark ドライバーとエグゼキューターに別々のイメージを指定することもできます。 

開始するには、AWS News ブログと概要を示すデモビデオを参照してください。カスタムイメージは、すべての Amazon EMR on EKS リリースでサポートされ、Amazon EMR on EKS が利用可能なすべてのリージョンでご利用いただけます。詳細については、ドキュメントまたは Amazon EMR on Amazon EKS の詳細ページを参照してください。