• 検索結果がありません。

ノートブック用の IAM ロールを作成する

ドキュメント内 AWS Glue - 開発者ガイド (ページ 30-200)

開発エンドポイントでノートブックを使用する予定がある場合は、IAM ロールアクセス権限を与える必要 があります。IAM ロールを通して AWS Identity and Access Management を使用してアクセス権限を提供 できます。

Note

IAM コンソールを使用して IAM ロールを作成すると、コンソールによりインスタンスプロファイ ルが自動的に作成され、対応するロールと同じ名前が付けられます。

ノートブックの IAM ロールを作成するには

1. AWS マネジメントコンソール にサインインし、IAM コンソール(https://console.aws.amazon.com/

iam/)を開きます。

2. 左のナビゲーションペインで、[Roles] を選択します。

3. [Create role] を選択します。

4. ロールタイプについては、[AWS サービス] を選択し、[EC2] を見つけて選択して、[EC2] ユースケー スを選択し、[次へ: アクセス権限] を選択します。

シー [AmazonS3FullAccess] などの必要なアクセス権限を含むポリシーを選択します。続いて、[Next:

Review] を選択します。

Note

このロールのポリシーの 1 つが Amazon S3 のソースとターゲットにアクセス権限を与え ていることを確認してください。また、ノートブックサーバーの作成時にノートブックを 保管する場所へのフルアクセスがポリシーで許可されていることを確認してください。特 定の Amazon S3 リソースにアクセスするための独自のポリシーを提供します。リソースの Amazon S3 ポリシーの作成の詳細については、ポリシーでのリソースの指定を参照してくだ さい。SSE-KMS で暗号化された Amazon S3 のソースとターゲットにアクセスする予定がある場合 は、ノートブックがデータを復号化できるポリシーをアタッチしてください。詳細について は、「AWS KMS で管理されたキーによるサーバー側の暗号化 (SSE-KMS) を使用したデー タの保護」を参照してください。以下に例を示します。

{ "Version":"2012-10-17", "Statement":[

{

"Effect":"Allow", "Action":[

"kms:Decrypt"

],

"Resource":[

"arn:aws:kms:*:account-id-without-hyphens:key/key-id"

] } ] }

6. [Role name] に、ロールの名前を入力します。コンソールユーザーからノートブックサー バーにロールを渡すには、文字列 [AWSGlueServiceNotebookRole] のプレフィックスが付 けられたロールを作成します。AWS Glue が提供するポリシーでは、IAM サービスロールが

[AWSGlueServiceNotebookRole] で始まると予測しています。それ以外の場合は、ポリシーを追加し て、IAM ロールの iam:PassRole アクセス権限がユーザーの命名規則に一致するようにする必要が あります。たとえば、[AWSGlueServiceNotebookRoleDefault] と入力します。 続いて、[Create role]

を選択します。

VPC での DNS のセットアップ

ドメインネームシステム (DNS) は、インターネットで使用する名前を対応する IP アドレスに解決するた めの標準です。DNS ホスト名は、ホスト名とドメイン名で構成され、コンピュータに一意の名前を付けま す。DNS サーバーは DNS ホスト名を対応する IP アドレスに解決します。名前解決にカスタム DNS を使 用する場合、DNS 前方参照と DNS 逆引き参照の両方を実装する必要があります。

VPC で DNS をセットアップするには、DNS ホスト名と DNS 解決の両方が VPC で有効になってい ることを確認します。VPC ネットワーク属性の enableDnsHostnames と enableDnsSupport を true に設定する必要があります。これらの属性を表示および変更するには、VPC コンソール (https://

console.aws.amazon.com/vpc/) に移動します。

詳細については、「Using DNS with Your VPC」を参照してください。

Note

データストアにアクセスするための環境のセット アップ

抽出、変換、およびロード (ETL) ジョブを実行するには、AWS Glue がデータストアにアクセスできる必 要があります。Virtual Private Cloud (仮想プライベートクラウド) (VPC) サブネットでジョブを実行する必 要がない場合 (たとえば、Amazon S3 から Amazon S3 へのデータ変換)、追加の設定は必要ありません。

VPC のサブネットでジョブを実行する必要がある場合、AWS Glue は ジョブを VPC 内の他のリソースに 安全に接続できるようにする 伸縮自在なネットワークインターフェイス を設定します。それぞれの伸縮自 在なネットワークインターフェイスには、指定したサブネット内の IP アドレス範囲からプライベート IP アドレスが割り当てられます。パブリック IP アドレスは割り当てられません。指定されたセキュリティグ ループは、伸縮自在なネットワークインターフェイスに適用されます。

ジョブによってアクセスされるすべての JDBC データストアは、VPC サブネットから使用できる必要があ ります。VPC 内から Amazon S3 にアクセスするには VPC エンドポイント (p. 25) が必須です。ジョブ が VPC リソースとパブリックインターネットの両方にアクセスする必要がある場合、 VPC は VPC 内に ネットワークアドレス変換 (NAT) ゲートウェイを持つ必要があります。

ジョブまたは開発エンドポイントは、一度に 1 つの VPC (およびサブネット) にのみアクセスできます。

異なる VPC のデータストアにアクセスする必要がある場合は、次のオプションがあります。

• VPC ピア接続を使用してデータストアにアクセスします。VPC ピア接続の詳細については、「VPC ピ ア接続の基本」を参照してください。

• 中間ストレージの場所として Amazon S3 バケットを使用します。ジョブ 1 の Amazon S3 出力をジョブ 2 への入力として、作業を 2 つのジョブに分割します。

JDBC データストアの場合、データストアに接続するために必要なプロパティを使用して AWS Glue で接 続を作成します。接続の詳細については、「データストアへの接続の追加 (p. 80)」を参照してくださ い。

Note

AWS Glue の DNS 環境を必ず設定してください。詳細については、「VPC での DNS のセット アップ (p. 24)」を参照してください。

トピック

• Amazon S3 における Amazon VPC エンドポイント (p. 25)

• JDBC データストアに接続するための VPC の設定 (p. 27)

Amazon S3 における Amazon VPC エンドポイント

セキュリティ上の理由から、多数の AWS ユーザーがアプリケーションを Amazon Virtual Private Cloud 環 境 (Amazon VPC) 内で実行しています。Amazon VPC を使用すると、Amazon EC2 インスタンスを仮想 プライベートクラウドで作成できます。そのため、パブリックインターネットなどの他のネットワークか ら論理的に分離されます。Amazon VPC を使用すると、IP アドレス範囲、サブネット、ルーティングテー ブル、ネットワークゲートウェイ、セキュリティ設定を適切に制御できます。

Note

2013 年 12 月 4 日以降に AWS アカウントを作成した場合は、各 AWS リージョンにデフォルト で VPC が用意されています。追加設定なしにデフォルトの VPC をすぐに使用できます。

詳細については、「デフォルトの VPC とサブネット」 (Amazon VPC ユーザーガイド) を参照し てください。

多くのお客様が、パブリックインターネット間のデータ送受信に関して、プライバシーとセキュリティに 関する正当な懸念を抱いています。これらの懸念事項を解決するために、仮想プライベートネットワーク

る場合があります。

Amazon S3 の VPC エンドポイントでは、これらの課題は軽減されます。Amazon S3 の VPC エンドポイ ントを使用することで、AWS Glue はプライベート IP アドレスを使用して、パブリックインターネットに 公開されることなく Amazon S3 にアクセスできるようになります。AWS Glue はパブリック IP アドレス を必要とせず、VPC にインターネットゲートウェイ、NAT デバイス、仮想プライベートゲートウェイは 不要です。Amazon S3 へのアクセスを制御するには、エンドポイントのポリシーを使用します。VPC と AWS サービス間のトラフィックは、Amazon ネットワークを離れません。

Amazon S3 の VPC エンドポイントを作成する際、リージョン内の Amazon S3 エンドポイント (例:

s3.us-west-2.amazonaws.com) に対するリクエストはすべて、Amazon ネットワーク内のプライベートの Amazon S3 エンドポイントにルーティングされます。VPC の EC2 インスタンスで実行されているアプリ ケーションを変更する必要はありません。エンドポイント名は変わりませんが、Amazon S3 へのルート は、Amazon ネットワーク内に完全にとどまり、パブリックインターネットにアクセスすることはありま せん。

VPC エンドポイントの詳細については、Amazon VPC ユーザーガイド の VPC エンドポイントを参照して ください。

AWS Glue が VPC エンドポイントを使用して Amazon S3 にアクセスする様子を次の図に示します。

Amazon S3 のアクセスをセットアップするには

3. [エンドポイントの作成] 選択し、ステップに従って VPC 内に Amazon S3 エンドポイントを作成しま す。

JDBC データストアに接続するための VPC の設定

AWS Glue コンポーネントが通信できるようにするには、Amazon Redshift や Amazon RDS などのデータ ストアへのアクセスを設定する必要があります。AWS Glue がコンポーネント間で通信できるようにする には、すべての TCP ポートに対して自己参照のインバウンドルールを持つセキュリティグループを指定し ます。自己参照ルールを作成することで、ソースを VPC 内の同じセキュリティグループに制限すること ができ、ネットワーク全体には公開されません。VPC のデフォルトのセキュリティグループには、すでに ALL Traffic (すべてのトラフィック) の自己参照インバウンドルールがある場合があります。

Amazon Redshift データストアへのアクセスを設定するには

1. AWS マネジメントコンソールにサインインし、Amazon Redshift コンソール(https://

console.aws.amazon.com/redshift/)を開きます。

2. 左のナビゲーションペインで [Clusters] (クラスター) を選択します。

3. AWS Glue からアクセスするクラスターの名前を選択します。

4. [Cluster Properties] (クラスターのプロパティ) セクションで、[VPC security groups] (VPC セキュリ ティグループ) 内のセキュリティグループを選択し、AWS Glue が使用できるようにします。今後 の参照用に選択したセキュリティグループの名前を記録します。セキュリティグループを選択する と、Amazon EC2 コンソールの [Security Groups] (セキュリティグループ) の一覧が開きます。

5. 変更するセキュリティグループを選択し、[Inbound] (インバウンド) タブに移動します。

6. 自己参照ルールを追加して、AWS Glue コンポーネントが通信できるようにします。具体的には、

[Type] (タイプ) All TCP、[Protocol] (プロトコル) は TCP、[Port Range] (ポート範囲) にはすべての ポートが含まれ、[Source] (ソース) は [Group ID] (グループ ID) と同じセキュリティグループ名である というルールを追加または確認します。

インバウンドルールは以下のようになります。

タイプ プロトコル ポート範囲 送信元

すべての TCP TCP 0–65535 database-security-group

以下に例を示します。

範囲) にすべてのポートが含まれ、[Source] (ソース) は [Group ID] (グループ ID) と同じセキュリティ グループ名の自己参照ルールを作成します。

アウトバウンドルールは、次のいずれかのルールのようになります。

タイプ プロトコル ポート範囲 送信先

すべての TCP TCP 0–65535 security-group

すべてのトラフィック ALL ALL 0.0.0.0/0

Amazon RDS データストアへのアクセスを設定するには

1. AWS マネジメントコンソールにサインインし、Amazon RDS コンソール (https://

console.aws.amazon.com/rds/) を開きます。

2. 左のナビゲーションペインの [Instances] を選択します。

3. AWS Glue からアクセスする Amazon RDS [Engine] (エンジン) と [DB Instance] (DB インスタンス) 名 を選択します。

4. [Instance Actions] (インスタンスの操作) から [See Details] (詳細を表示) を選択します。[Details] (詳 細) タブで、AWS Glue からアクセスする [Security Groups] (セキュリティグループ) を見つけます。

今後の参照用にセキュリティグループの名前を記録します。

5. セキュリティグループを選択して Amazon EC2 コンソールを開きます。

6. Amazon RDS の [Group ID] (グループ ID) が選択されていることを確認し、[Inbound] (インバウンド) タブを選択します。

7. 自己参照ルールを追加して、AWS Glue コンポーネントが通信できるようにします。具体的には、

[Type] (タイプ) All TCP、[Protocol] (プロトコル) は TCP、[Port Range] (ポート範囲) にはすべての ポートが含まれ、[Source] (ソース) は [Group ID] (グループ ID) と同じセキュリティグループ名である というルールを追加または確認します。

インバウンドルールは次のようになります。

タイプ プロトコル ポート範囲 送信元

すべての TCP TCP 0–65535 database-security-group

以下に例を示します。

ドキュメント内 AWS Glue - 開発者ガイド (ページ 30-200)

関連したドキュメント