COLUMN

AWS Marketplaceを使用してサードパーティー製品をデプロイしてみよう

こんにちは、荒井です。

みなさんはAWS Marketplaceについてご存知ですか?

名前は知っていても、実際にAWS Marketplaceから購入を行ったという方はあまり多くないのではないかと思います。

今回は、実際にAWS Markeplaceにおいてサードパーティ製品を購入するプロセスについて紹介していきたいと思います。

紹介する内容はご自身のAWSアカウントにおいても実施できますので、ぜひお試しいただければと思います。なお、紹介する内容について実施いただいても料金はほとんどかかりませんのでご安心ください。

本コラムはAWS re:Invent 2024におけるワークショップ「MKT304 AWS Marketplace: Deploy, govern & analyze spend of third-party software」を基に作成しています。

NTT東日本では、AWSなどクラウドに関するお役立ち情報をメールマガジンにて発信していますので、ぜひこちらからご登録ください。

AWS Marketplaceで購入できる製品

AWS Marketpalaceにはさまざまな製品が出品されていますが、大まかには以下のような種類の製品が出品されています。

SaaS

SaaS製品を購入することができます。CrowdStrikeやOkta、Datadog、Trend Cloud Oneといったようなさまざまな製品が出品されています。

AMI

サードパーティが作成したAmazon Machine Imageを購入することができます。例えばCenter for Internet Security (CIS) によって事前設定済みのMicrosoft Windows Server、Grafanaが既にインストールおよび設定済みのDebian、Wordpressがインストール・設定済みのDebianなどさまざまな製品が出品されています。

Container

サードパーティが作成したコンテナ製品を購入することができます。デプロイにはAmazon ECSやEKSなどを使用します。例えばセキュリティスキャンを行うコンテナ製品や、オープンソースのCRMツールがパッケージ化された製品、生成AIによって画像を生成する製品などがさまざまな製品が出品されています。

Machine Learning

サードパーティによって事前学習されたMLモデルを購入することができます。大量のデータストリームに隠れている異常を見つけるMLモデルや、商用ライセンスデータで事前トレーニングされた画像生成のMLモデルなどさまざまな製品が出品されています。

Professional Services

サードパーティによるサービスを購入することができます。例えばコンサルティングやトレーニング、セキュリティ診断などさまざまなサービスが出品されています。

Data

サードパーティにより提供されるさまざまなデータを購入することができます。例えばTicketMasterにおけるイベントとチケットの価格に関するデータセット、米国企業時価総額トップ10の終値株式データ、アメリカにおける月間の車販売台数などさまざまなデータ出品されています。

Free

AWS Marketplaceには無料で利用できる製品があります。無料で利用できるAMIやデータ、無料利用期間のあるSaaSなどさまざまな製品が無料で利用できるので、ぜひご自身で試してみてください。

今回はこのうち、AMI、SaaS、MLモデルを購入・デプロイします。

AWS MarketplaceからAmazon Machine Image(AMI)を購入して起動する

Amazon Machine Image(AMI)とは、AWSで実行されるEC2インスタンスのイメージであり、OSやソフトウェアが含まれています。AWS Marketplaceにはサードパーティが公開しているさまざまなAMIがラインナップされており、無料で利用できるAMIも数多くあります。(もちろん、起動したEC2インスタンス自体には料金は発生します。)

特定の目的に合わせたAMIをAWS Marketplaceから購入することにより、EC2インスタンスへのソフトウェアインストールやプラグイン等の設定、ポートの設定といった面倒な作業を回避することができます。

この章では、具体的な例としてWordPressが既にインストールされているAMIをAWS Marketplaceから購入し、実際に起動してみたいと思います。

デプロイ

AWS Marketplaceのページに移動します。

検索ボックスに「Wordpress Certified by Bitnami and Automattic」と入力して検索を行います。

一番上に表示された、「Wordpress Certified by Bitnami and Automattic」を選択します。

詳細ページが表示されたら、「View purchase options」を選択します。

ちなみに、この詳細に説明が記載されていますが、大体以下のようなことが記載されています。

AWS Marketplace上でこのAMIを使用することで、自身でWordpressをインストールしてさまざまなプラグインを設定する必要がないことがわかります。

  • 追加のプロフェッショナル テーマが提供されます。
  • パフォーマンス改善、スキャン、サイト アクティビティ、マーケティング ツールへのアクセスが提供されます。
  • Akismet、All in One SEO Pack、WP Mail、Google Analytics for WordPress などのその他の人気プラグインもプリインストールされています。
  • 最新バージョンの WordPress、PHP、Apache、MySQL が含まれています。
  • HTTP、HTTPS、SSH ポートを除くすべてのポートが閉じられているため、デフォルトで安全です。

利用規約を確認し、「Accept Terms」を選択します。

ちなみに、このページで料金表を確認することが可能ですが、全て無料($0)であることがわかります。

サブスクリプションが完了するまで1分から2分程度かかりますので待ちます。

サブスクリプションが完了したら「Continue to Configuration」を選択します。

EC2インスタンスを起動するリージョンを選択し、「Continue to Launch」を選択します。

「Choose Action」および「EC2 Instance Type」はデフォルトのままでかまいません。

「VPC Settings」、「Subnet Settings」もデフォルトのままでかまいません。

「Security Group Settings」では「Create New Based On Seller Settings」を選択して新しいセキュリティグループを作成します。

AWS Marketplaceの販売者が予め定めているセキュリティグループ設定を基に、新しいセキュリティグループを作成することができます。このようにセキュリティグループについても出品者の方でベストプラクティスに沿って考えてくれているものが用意されているのはかなり便利ですね。

セキュリティグループの名前を例えば「Wordpress」と記入し、説明に「Wordpress Security Group」と記入したうえで「Save」を選択します。

「Key Pair Settings」では「Create a key pair in EC2」を選択して新しいキーを作成します。

キーペアのページに移動するので「キーペアの作成」を選択します。

キーペアの名前を例えば「wordpresskey」と記入し、他はデフォルトのままで「キーペアの作成」を選択します。

AWS Marketplaceのページに戻り、キーペア選択の右にある更新ボタンを選択し、先ほど作成したキーペアを選択します。「Launch」を選択します。

成功したメッセージが表示されます。

AWSコンソールからEC2インスタンスのページを確認すると、起動していることが確認できます。

WordPressが正しく機能していることを確認するため、「詳細」から「パブリック IPv4 DNS」をコピーし、新しいタブを開いてアクセスしてみてください。

ちなみに、アクセスした際にエラーが表示された場合は、まだEC2インスタンスが起動完了していない可能性があります。「ステータスチェック」が完了するまでしばらく待ったうえで再度アクセスしてみてください。

このようなページが表示されます。

なお、WordPressのバージョンによってページの表示は異なるので、以下の画像と違う画面が表示される場合があります。

これで完了です!

AWS MarketplaceからサードパーティのAMIを(無料ですが)購入し、デプロイすることができました。AWS Marketplaceでの製品購入のイメージがつけば幸いです。

AWS Marketplaceには目的に合わせたさまざまなAMIが公開されていますので、ぜひ自身の興味あるAMIを探してEC2インスタンスを起動してみてください。

なお、後で必ずクリーンアップ(後片付け)を行ってください。これをしないとEC2インスタンスの起動分で料金が発生する可能性があります。以下に削除手順を記載します。

クリーンアップ

まず、起動したEC2インスタンスを削除します。

対象のEC2インスタンスを選択し、「インスタンスの状態」から「インスタンスの終了」を選択して削除を行います。

続いて、「ECインスタンス」のページ左メニューから「キーペア」を選択し、対象のキーペアを選択したうえで「アクション」から「削除」を選択します。

続いて、検索ウィンドウに「Marketplace」と入力して表示される「AWS Marketplace」を選択します。

購入したサブスクリプションが表示されるため、対象のサブスクリプションを選択します。

「アクション」から「サブスクリプションをキャンセル」を選択します。

これで削除は完了です!おつかれさまでした。

NTT東日本では、AWSなどクラウドに関するお役立ち情報をメールマガジンにて発信していますので、ぜひこちらからご登録ください。

AWS MarketplaceからSaaS製品を購入する

AWS MarketplaceにはさまざまなサードパーティのSaaS製品がラインナップされており、必要なものを見つけ、購入することができます。また、AWS Marketplaceでは無料で利用できる期間(フリートライアル)が設定されているSaaS製品も数多く存在しています。

AWS Marketplaceでは利用者のレビューも見れたりするので、Amazonで買い物をするかのようにSaaS製品を選ぶことが可能です。また、SaaSの利用料はAWS利用料と合わせて請求されるため、SaaS製品を買うための面倒なクレジットカード登録なども不要です。

この章では、そんなSaaS製品を購入してみます。

かなり簡単に購入できるので、少し感動を覚えます。ぜひ自身でも試してみてください。

なお、以下の手順ではフリートライアルの購入するため料金は発生しません。

SaaS製品購入

AWS Marketplaceのページに移動します。

検索ウィンドウに「Okta Identity Cloud」と入力して検索を行い、表示された「Okta Identity Cloud」を選択します。

製品詳細ページが表示されます。内容を確認し、「Try for free」を選択します。

ちなみに、この製品詳細ページでは紹介動画を確認することや、パンフレットをダウンロードすることができます。

また、Amazonのページ(AWSもAmazonではあるのですが)のようにレビューを確認することもできます。こうしたSaaSに対して実際の利用者からのレビューがあるのは製品を採用する際に非常に参考になりますね。

オファーの詳細や無料試用版の詳細、合計金額などが表示されます。確認したうえで「Try for free」を選択します。

すると、「サブスクリプションを処理しています」といったメッセージが表示されますが、この間にSaaS側のアカウントセットアップを行うことができます。「Set up your account」を選択します。

SaaS製品のページに移動するので、アカウントを作成します。

Oktaの場合はアカウントを作成すると登録メールアドレスに確認メールが届くのでそこからアカウント作成の続きを行います。

アカウントが作成され、ログインすることができました。

一番上に「トライアルは残り30日です」と表示されていますね。

これでSaaS製品の購入は完了です。

今回はフリートライアルで購入しているので料金はかかりません。また、基本的にフリートライアルは期限が過ぎると自動的にサブスクリプションが削除されるため、手動でサブスクリプションの削除やアカウントの削除を行う必要はありません。

もし実際に購入を行う場合は、「Try for free」ではなく「View purchase options」から購入を進めます。

なお、AWS Marketplaceで購入したSaaSの利用料金はAWS利用料として請求されるため、新たに支払方法を登録する必要はありません。

支払い方法を一本化できるのはAWS Marketplaceの大きなメリットですね。

クリーンアップ

フリートライアルの場合は基本的に期間が終了したタイミングでサブスクリプションはキャンセルされるため、クリーンアップに向けた操作は必要ありません。

サブスクリプションの状態はAWSコンソールにおける「AWS Marketplace」のページから確認することが可能です。

「AWS Marketplace」ページの「サブスクリプションの管理」から確認が可能です。

サブスクリプションを削除する場合もこちらのページから行うことが可能です。

AWS Marketplaceから事前トレーニング済みのMLモデルを購入してデプロイする

AWS Marketplaceでは事前トレーニングされたML(Machine Learning)モデルのパッケージを購入してデプロイすることも可能です。

事前トレーニング済みのMLモデルパッケージとは何かというと、例えば「車の写真を入力として受け取り、車のメーカー/モデル/製造年を予想するMLモデル」、「人がマスクを着用しているかどうかを識別するモデル」といったように特定の用途に向けて事前トレーニングが行われているモデルのことを指します。

このモデルパッケージを購入することにより、開発者はMLリソースの採用やMLモデルのトレーニングやチューニングといった面倒な作業を回避することが可能になります。

この章では、そんなMLモデルパッケージをAWS Marketplaceから購入し、実際にデプロイしてみたいと思います。

デプロイ

AWS Marketplaceから「Delivery Methods」を選択し、「Amazon SageMaker」を選択します。

検索ウィンドウに「GluonNLP Sentence Generator」を入力し検索します。

表示された「GluonNLP Sentence Generator」を選択します。

なおこのMLは「不完全な文が与えられると、その文章で最も可能性のある文章を予測して生成するML」です。例えば、「I love it」という文章を与えると、後に続く文章が予測生成され「I love it and enjoy one of their series, Schafer or Clive」といった文章が生成されます。

製品の内容を確認し、「Continue to Subscribe」を選択します。

料金を確認し、「Accept offer」を選択します。

なお、料金は無料であることがここから確認できます。

サブスクライブが完了した後、「Continue to configuration」を選択します。

設定内容について、launch methodで「AWS CloudFormation」を選択します。

リージョンは任意のリージョンを選択します。(ここではオレゴンを選んでいます。)

後のパラメータはデフォルトのまま、「Launch CloudFormation Templete」を選択します。

「スタックのクイック作成」のページに移動するので、各パラメータはデフォルトのまま「スタックの作成」を選択します。

スタックの作成が完了した後、「出力」タブから「Next Steps」の値であるURLを選択します。

このページから、どのようにこのMLを利用するのか確認することが可能です。

実際にCloudShellを使ってMLを利用したいと思います。

AWSコンソールの左下にある「CloudShell」を選択します。リージョンはパラメータで設定したリージョンを選択します。

MLを実行する際には、以下のようなコードを貼り付けて実行します。

もし、設定時のパラメータでendpoint-nameを変更している場合はコードの該当部分を変更してください。

bodyの箇所で文章や生成文章数(k)を変更することが可能です。

aws sagemaker-runtime invoke-endpoint \
--endpoint-name "Endpoint-GluonNLP-Sentence-Generator-1" \
--body '{"data":"I love it", "k": 5}' \
--content-type "application/json" \
--accept "application/json" \
--cli-binary-format raw-in-base64-out >(cat) 1>/dev/null

5つの文章が生成されました。(k値に5以外の値を設定している場合はその値分生成されます。)

ぜひさまざまなパターンで試してみてください。

また、AWS Marketplaceには他にもMLモデルが出品されていますので、ぜひご自身のアカウントで他のMLもお試しいただければと思います。

クリーンアップ

「CloudFormation」のページ左メニューから「スタック」を選択し、作成したスタックを選択し「削除」を選択します。

スタックを選択し、「パラメータ」タブから作成されたIAMロールを確認します。

「IAM」ページの左メニューから「ロール」を選択し、上記で確認したIAMロールを検索・選択し「削除」を選択します。

「AWS Marketplace」ページからサブスクリプションを選択します。

アクションから「サブスクリプションをキャンセル」を選択します。

以上でクリーンアップは完了です。

NTT東日本では、AWSなどクラウドに関するお役立ち情報をメールマガジンにて発信していますので、ぜひこちらからご登録ください。

まとめ

AWS Marketplaceを活用すれば、自身で環境を構築したり外部に委託するといったことをせずともサードパーティによって完成されたリソースを瞬時にデプロイすることができます。

SaaS製品についても、既に使った人のレビューを見ながら、まさにAmazonで買い物をするように商品を選べるためSaaS製品の決定に大きく役立つと思います。

上記で紹介した以外にも多くの製品がAWS Marketplaceには存在しているため、ぜひご自身で製品を検索し、実際に試してみてください。

NTT東日本においてもAWS Marketplaceへの製品出品を開始しました。

出品のラインナップはまだ少ないですが、今後NTT東日本のサービスもAWS Marketplaceから購入できるように整えていく予定です。

詳しくは「AWS Marketplaceにおける提供について」をご確認ください。

ページ上部へ戻る

相談無料!プロが中立的にアドバイスいたします

クラウド・AWS・Azureでお困りの方はお気軽にご相談ください。