AWS Service Catalog に関するよくある質問

全般

AWS Service Catalog では、IT 管理者が承認された製品のカタログを作成および管理し、そのカタログをエンドユーザーに配布できます。エンドユーザーは、その後、パーソナライズされたポータルから必要な製品にアクセスできるようになります。管理者は、各製品にアクセスできるユーザーを制御して、組織のビジネスポリシーへのコンプライアンスを実施できます。また、管理者が導入されたロールのセットアップを行うことで、エンドユーザーは AWS Service Catalog への IAM アクセスのみで承認されたリソースをデプロイできます。AWS Service Catalog により、エンドユーザーは管理者が管理するカタログから必要な製品のみを選択して起動できるため、組織には俊敏性を向上し、コストを削減できるという利点があります。

AWS Service Catalog は、ポリシーの集中管理を必要とする組織、IT チーム、マネージドサービスプロバイダ (MSP) 向けに開発されました。AWS Service Catalog により、IT 管理者は AWS のリソースとサービスを配布および管理できます。大規模な組織の場合、クラウドリソースをプロビジョニングするための標準方法を数千人のユーザーに提供できます。また、小規模のチームにも適しており、現場の開発マネージャーは標準の開発/テスト環境を提供および管理できます。

AWS マネジメントコンソールで、[Management Tools] の [AWS Service Catalog] を選択します。AWS Service Catalog コンソールで、管理者は、ポートフォリオの作成、製品の追加、製品を使用するためのアクセス許可の付与を数回のクリックで行うことができます。AWS Service Catalog コンソールにログインしたエンドユーザーは、管理者が自分用に作成した製品を表示して起動できます。

エンドユーザーは、組織のポリシーと予算の制約を満たした製品を見つけて起動できるシンプルなポータルを利用できます。

ポートフォリオは製品の集合で、その製品を使用できるユーザーと許可される使用方法が定義された設定情報が含まれています。管理者は、組織のユーザータイプごとにカスタマイズしたポートフォリオを作成し、適切なポートフォリオへのアクセス権を選択的に付与できます。管理者が製品の新しいバージョンをポートフォリオに追加すると、そのバージョンは現在のすべてのポートフォリオユーザーに対して自動的に利用可能になります。同じ製品を複数のポートフォリオに追加できます。また、管理者は、他の AWS アカウントとポートフォリオを共有して、そのアカウントの管理者が追加の制約を適用することでそのポートフォリオを拡張できるようにすることができます。ポートフォリオ、アクセス許可、共有、制約を使用することで、管理者は、組織のニーズに合わせて適切に設定された製品をユーザーが起動するよう制御できます。

はい。AWS Service Catalog は完全にリージョンごとに分けられるので、データが保存されるリージョンを制御できます。ポートフォリオと製品はリージョン単位で構築され、リージョンごとに作成されることが必要なため、作成されたリージョンでのみ参照と利用が可能です。

サポートされる AWS リージョンの一覧については、AWS リージョン表をご覧ください。

はい、API は CLI を使用して利用および有効にできます。Service Catalog アーティファクトの管理からプロビジョニングおよび終了までのアクションを利用できます。詳細については、AWS Service Catalog のドキュメントをご覧ください。また、最新の AWS SDK または CLI をダウンロードしてください。

はい。VPC エンドポイントを作成すると、Amazon Virtual Private Cloud (VPC) から AWS Service Catalog API にプライベートでアクセスできます。VPC エンドポイントを使うと、VPC と AWS Service Catalog の間のルーティングが AWS ネットワークによって処理されます。インターネットゲートウェイ、NAT ゲートウェイ、VPN 接続は必要ありません。AWS Service Catalog で使用される VPC エンドポイントの最新世代では、AWS PrivateLink が使用されています。AWS PrivateLink は、VPC でのプライベート IP と Elastic Network Interface (ENI) を使用することにより、AWS のサービス間でのプライベート接続を実現する AWS のテクノロジーです。AWS PrivateLink の詳細については、AWS PrivateLink のドキュメントにアクセスしてください。

はい。AWS Service Catalog SLA は、ある請求期間において、月間稼働率がサービスコミットメントを下回った場合にサービスクレジットを提供するよう定めています。

IT 管理者

ポートフォリオは AWS Service Catalog コンソールで作成します。各ポートフォリオでは、名前、説明、所有者を指定します。

各サービスカタログ製品は、コードとしてのインフラストラクチャ (IaC) テンプレートに基づいています。CloudFormation テンプレートまたは Terraform 設定 (単一の tar.gz ファイル) を使用できます。AWS Service Catalog コンソールから製品を作成するには、IaC テンプレートをアップロードするか、テンプレートが保存されている S3 バケットへのリンクを指定するか、テンプレートが保存されている外部の Git リポジトリに接続します。製品を作成するときに、製品の詳しい説明、バージョン情報、サポート情報、タグなど、リストに掲載する製品の詳細情報を入力できます。

タグは、エンドユーザーによってプロビジョニングされる AWS リソースを識別し、分類するのに便利です。また、AWS Identity and Access Management (IAM) ポリシーでタグを使用して、IAM のユーザー、グループ、ロールに対してアクセスを許可または拒否したり、IAM のユーザー、グループ、ロールによって実行できる操作を制限できます。タグをポートフォリオに追加すると、そのタグはポートフォリオの製品からプロビジョニングされるリソースのすべてのインスタンスに適用されます。

作成したポートフォリオまたは共有されたポートフォリオを発行して、AWS アカウント内の IAM ユーザーが利用できるようにします。ポートフォリオを発行するには、AWS Service Catalog コンソールでポートフォリオの詳細ページに移動して、IAM のユーザー、グループ、ロールをポートフォリオに追加します。ユーザーをポートフォリオに追加すると、ユーザーは、ポートフォリオ内の任意の製品を閲覧および起動できるようになります。通常、特定のタイプのエンドユーザー向けにカスタマイズされた、さまざまな製品とアクセス許可を使って複数のポートフォリオを作成します。たとえば、開発チーム向けのポートフォリオには、販売チームやマーケティングチーム向けのポートフォリオとは異なる製品が含まれます。1 つの製品を、異なるアクセス許可とプロビジョニングポリシーを使用して複数のポートフォリオに発行できます。

はい。自分のポートフォリオを 1 つ以上の他の AWS アカウントのユーザーと共有できます。ポートフォリオを他の AWS アカウントと共有した場合、そのポートフォリオの所有権と制御権はそのポートフォリオの作成者に残ります。つまり、新しい製品の追加、製品の更新などの変更を行うことができるのは、ポートフォリオの作成者のみです。また、ポートフォリオの作成者のみがいつでも、自分のポートフォリオの "共有を解除" できます。現在使用されている製品、つまりスタックは、スタックの所有者が終了を決定するまで実行され続けます。

ポートフォリオを共有するには、共有するアカウント ID を指定し、そのアカウントにポートフォリオの Amazon リソース番号 (ARN) を送信します。そのアカウントの所有者は、この共有ポートフォリオへのリンクを作成し、そのアカウントから IAM ユーザーをポートフォリオに割り当てることができます。エンドユーザーが見つけやすくなるように、ポートフォリオのディレクトリを作成できます。

はい。既存の Amazon EC2 AMI を AWS CloudFormation テンプレートでラップすることで、製品を作成できます。

はい。AWS Marketplace で製品にサブスクライブすることや、Service Catalog へのコピー操作を使用して Marketplace 製品を Service Catalog に直接コピーすることができます。また、製品に Amazon EC2 AMI を使用して、AWS Service Catalog の製品を作成することもできます。これを行うには、受信登録した製品を AWS CloudFormation テンプレートでラップします。AWS Marketplace 製品をコピーまたはパッケージ化する方法の詳細については、こちらをクリックしてください。

ポートフォリオと製品へのアクセスを制御するには、IAM のユーザー、グループ、またはロールをポートフォリオ詳細ページで割り当てます。アクセス権を付与されたユーザーは、AWS Service Catalog コンソールで利用できる製品を確認できます。

はい。新しい製品を作成するときと同じ方法で製品の新しいバージョンを作成できます。新しいバージョンの製品がポートフォリオに発行されると、エンドユーザーは新しいバージョンを起動することを選択できます。また、ユーザーは実行中のスタックをこの新しいバージョンに更新することも選択できます。AWS Service Catalog では、更新が利用可能になったときに使用中の製品が自動的に更新されることはありません。

はい。製品をプロビジョニングするために使用される AWS アカウントとロールを完全に制御できます。AWS リソースをプロビジョニングするには、ユーザーの IAM アクセス許可または事前に定義済みの IAM ロールを使用できます。AWS リソースを完全に制御し続けるには、製品レベルで特定の IAM ロールを指定します。AWS Service Catalog では、そのロールを使用してスタックにリソースをプロビジョニングします。

はい。製品の起動時にユーザーが入力するパラメータ値を制限するルールを定義できます。 このルールは、製品の AWS CloudFormation テンプレートのデプロイ方法を制限するため、テンプレート制約と呼ばれます。簡単なエディターを使用してテンプレート制約を作成し、各製品に適用します。

AWS Service Catalog では、新しい製品をプロビジョニングするとき、またはすでに使用中の製品を更新するときに制約が適用されます。常に、ポートフォリオと製品に適用されるすべての制約の中で、最も厳しい制約が適用されます。たとえば、すべての EC2 インスタンスの起動を許可する製品と、2 つの制約 (GPU 以外のすべてのタイプの EC2 インスタンスの起動を許可する制約と、t1.micro と m1.small EC2 インスタンスのみの起動を許可する制約) を含んだポートフォリオがあるシナリオを考えてみます。この例では、AWS Service Catalog では、2 つ目のより厳しい制約(t1.micro と m1.small)が適用されます。現在、テンプレート制約は Terraform 設定ではサポートされていません。 

はい。現在、JSON 言語と YAML 言語の両方のテンプレートがサポートされています。

はい。AWS Service Management Connector for ServiceNow と AWS Service Management Connector for Jira Service Desk (以前の AWS Service Catalog Connector) では ServiceNow と Jira Service Desk プロジェクトの統合機能が提供されます。この機能は、ServiceNow と Jira Service Desk の管理者のクラウドプロビジョニングとリソース管理を簡素化します。さらに、管理者が AWS にデプロイしたいあらゆる IT サービスとなり得るような AWS 製品を ServiceNow ユーザーがリクエストすることも簡単になります。

ServiceNow と Jira Service Desk の管理者はコネクタを設定して、AWS アカウントとロールを既存であっても新規であっても取り扱いできます。ServiceNow と Jira Service Desk のユーザーは、管理者に承認された AWS 製品を閲覧およびリクエストできます。プロビジョニングされた製品の設定項目の詳細を表示し、ServiceNow と Jira Service Desk 内で AWS Systems Manager Automation ドキュメントを実行することもできます。これにより、ServiceNow ユーザーと Jira Service Desk ユーザーの AWS 製品のリクエストアクションが簡素化されるとともに、ServiceNow と Jira Service Desk の管理者が AWS 製品についてのガバナンスを確保し、当該製品を監視することが可能となります。

AWS Service Management Connector for ServiceNow は、ServiceNow Store で無料で入手できます。この新機能は、AWS Service Catalog が利用できるすべての AWS リージョンで使用可能です。詳細については、ドキュメントをご覧ください。

AWS Service Management Connector for Jira Service Desk は、Atlassian Marketplace で無料で入手できます。この新機能は、AWS Service Catalog が利用できるすべての AWS リージョンで一般提供されています。詳細については、ドキュメントにアクセスしてください。

エンドユーザー

AWS Service Catalog コンソールにログインして、ポータルでニーズを満たす製品を検索することで利用できる製品を確認するか、すべての製品のリストが掲載されたページに移動できます。必要な製品を見つけるために並べ替えることができます。

製品ごとに、バージョン、その製品の新しいバージョンを利用できるかどうか、説明、サポート情報、その製品に関連付けられたタグなど、製品に関する詳細を表示する製品詳細ページを表示できます。製品詳細ページには、製品をプロビジョニングするときにユーザーのアクセス許可 (Self) を使用するのか、それとも管理者が指定したロール (role-arn) を使用するのかが示される場合もあります。

ポータルで自分の要件を満たす製品が見つかったら、[Launch] を選択します。その製品を使用する方法に関するいくつかの質問が行われます。その質問は、ビジネスニーズに関するものである場合も、インフラストラクチャの要件("どの EC2 インスタンスタイプか" など)に関するものである場合があります。必要な情報を入力すると、AWS Service Catalog コンソールに製品が表示されます。製品がプロビジョニングされている間、"進行中" であることが表示されます。 プロビジョニングが完了すると、"完了" したことが示され、エンドポイント、Amazon リソースネーム (ARN) など、製品にアクセスするときに使用できる情報が表示されます。

はい。AWS Service Catalog コンソールで現在使用している製品を確認できます。使用中のすべてのスタックと、そのスタックを作成するために使用した製品のバージョンを確認できます。

新しいバージョンの製品が発行されたら、Update Stack コマンドを使用してそのバージョンを使用できます。利用可能な更新がある製品を使用中の場合、その製品は閉じるまで動作し続けます。閉じた時点で、新しいバージョンを使用することを選択できます。

使用している製品とその状態は AWS Service Catalog コンソールで確認できます。

Terraform オープンソースと Terraform Cloud のサポート

AWS Service Catalog を使用すると、Terraform オープンソースと Terraform Cloud を使用しているお客様は、AWS のエンドユーザーにガバナンスを備えたセルフサービスプロビジョニングを提供できます。セントラル IT は、単一のツールを使用して、AWS 内の Terraform 設定を大規模に整理、管理、配布できます。標準化および事前承認済みのテンプレートのカタログ化、アクセス制御、プロビジョニング中の最小特権、バージョニング、数千の AWS アカウントへの共有、タグ付けなどの AWS Service Catalog の主要機能にアクセスできます。エンドユーザーは、アクセス可能な製品とバージョンのリストを見るだけで、1 回の操作でデプロイできます。

はじめに、AWS が提供する Terraform オープンソース用 Terraform リファレンスエンジンまたは Terraform Cloud 用 Terraform リファレンスエンジンを使用してください。Terraform オープンソースエンジンが AWS Service Catalog で動作するために必要なコードとインフラストラクチャをインストールして設定します。この 1 回限りのセットアップはわずか数分で完了します。

AWS Service Catalog を利用して Terraform 製品をカタログ化、管理、共有、デプロイする方法については、当社のドキュメントをお読みください。

Terraform オープンソースまたは Terraform Cloud が IaC ツールとして選択されている場合は、Service Catalog を使用してチームに Terraform 設定のセルフサービスプロビジョニングを提供できます。さまざまなチームやユースケースで CloudFormation と Terraform 設定を組み合わせて使用する場合、AWS Service Catalog を単一のツールとして使用して、両方をカタログ化して共有できるようになりました。AWS Service Catalog は、エンドユーザー向けに、IaC テクノロジーに関係なく、リソースを表示およびプロビジョニングするための使いやすい共通インターフェイスを提供します。

AWS Service Catalog を Terraform オープンソースで使用するには、いずれかのアカウントに Terraform オープンソースエンジンをセットアップする必要があります。AWS が提供する Terraform リファレンスエンジンを使用して Terraform オープンソースエンジンを作成します。これにより、お使いの Terraform オープンソースエンジンが AWS Service Catalog と連携するために必要なコードとインフラストラクチャがインストールされ、設定されます。この 1 回限りのセットアップはわずか数分で完了し、その後 AWS Service Catalog で Terraform オープンソースタイプの製品の作成を開始できます。

Terraform Cloud で AWS Service Catalog を使用するには、Terraform Cloud 用 Terraform リファレンスエンジンを使用してください。これにより、Terraform Cloud エンジンが AWS Service Catalog と連携するために必要なコードとインフラストラクチャがインストールされ、設定されます。詳細については、ドキュメントをご覧ください。

はい。AWS Service Catalog は、製品を単一のセントラルアカウントで定義し、それを数千の AWS アカウントと共有できる「ハブアンドスポーク」モデルをサポートしています。Terraform の場合は、Terraform オープンソースまたは Terraform Cloud エンジンをインストールし、この中央ハブアカウントで Terraform 製品を作成できます。その後、これらをスポークアカウントと共有し、それらのアカウントの IAM ロール/ユーザー/グループへのアクセスを有効にできます。アカウントごとに十分な権限を持つ起動ロールを定義する必要があることに注意してください。

部分的にその通りです。AWS は Terraform 製品のカタログ作成、共有、およびエンドユーザーアクセスをサポートしています。Terraform オープンソースまたは Terraform Cloud 環境が準備が整っており、AWS Service Catalog と十分に統合されているかは、お客様ご自身で確認してください。また、Terraform 製品に関連するすべてのリソースをプロビジョニングしてタグ付けする権限を持つ起動ロールを定義する必要があります。

はい。AWS Service Catalog では、GitHub、GitHub Enterprise、または Bitbucket を通じて管理されているテンプレートファイルに製品を同期できます。どのリポジトリを選択しても、テンプレートファイルは Tar 形式でアーカイブされ、Gzip で圧縮された単一のファイルである必要があります。 

各 Terraform オープンソースまたは Terraform Cloud 製品には単一のステートファイルがあり、そのステートファイルは Terraform オープンソースエンジンまたは AWS S3 バケット内の Terraform Cloud エンジンの AWS アカウントに保存されます。AWS Service Catalog 管理者にはステートファイルのリストが表示されますが、内容を読み書きすることはできません。ステートファイルの内容を読み書きできるのは、Terraform オープンソースエンジンまたは Terraform Cloud エンジンのみです。

この機能の料金は、AWS Service Catalog の他のすべての機能と同様で、アカウント / リージョンで最初の 1,000 回の呼び出し以降は API 呼び出しごとに 0.0007 USD です。詳細については、こちらをご覧ください。 

AppRegistry

AWS Service Catalog AppRegistry により、組織は、AWS リソースでのアプリケーションのコンテキストを把握できます。AppRegistry では、アプリケーションについて説明される情報のリポジトリおよび企業内で使用できる関連するリソースを利用できます。

AWS Service Catalog AppRegistry は、AWS環境内で、単一の、そして最新のアプリケーションを定義する必要がある組織向けに開発されました。

AWS Service Catalog AppRegistry を使って、アプリケーションの名前、説明、関連する CloudFormation スタック、属性グループで表されるアプリケーションのメタデータなどを定義できます。関連する CloudFormation スタックでは、アプリケーションに必要なすべてのリソースを表示できます。これは、単一の環境内でインフラストラクチャとして機能します。あるいは、コードレポジトリやパイプライン、IAM リソースを含めることで、環境全体のアプリケーションをサポートすることも可能です。既存の CloudFormation スタック、または新しい CloudFormation スタックのいずれかをアプリケーションと関連付けられます。新しいスタックは、CloudFormation テンプレートでアプリケーションへの関連付けを含めることで、プロビジョニングに応じてアプリケーションと関連付けられます。

属性グループは、企業とって重要なアプリケーションのメタデータを含みます。属性グループは、オープンの JSON スキーマを含んでいます。これにより、企業の複雑なメタデータをフレキシブルにキャプチャできます。アプリケーションの属性には、セキュリティ上の機密性、組織の所有権、アプリケーションのタイプ、コストセンター、サポート情報などのメタデータが含まれます。ビルダーは、属性グループをアプリケーションに関連付けます。属性グループがアップデートされると、アップデートは関連するすべてのアプリケーションに自動的に反映されます。

サポートされる AWS リージョンの一覧については、AWS リージョン表をご覧ください。

はい、CLI アクションと API のすべてのセットが利用可能です。