AWS Glue のための開発用ネットワークの設定
AWS Glue で抽出、変換、ロード (ETL) スクリプトを実行するには、開発エンドポイントを使用してスクリプトを開発し、テストすることができます。開発エンドポイントは、AWS Glue バージョン 2.0 ジョブでの使用がサポートされていません。バージョン 2.0 以降では、Jupyter Notebook といずれかの AWS Glue カーネルを使用する開発方法が推奨されています。詳しくは、「AWS Glue のインタラクティブセッションの開始方法」を参照してください。
開発エンドポイント用にネットワークを設定する
開発エンドポイントを設定するときは、Virtual Private Cloud (VPC)、サブネット、およびセキュリティグループを指定します。
注記
AWS Glue の DNS 環境を必ず設定してください。詳しくは、「VPC での DNS のセットアップ」を参照してください。
AWS Glue による必要なリソースに対するアクセスを許可するには、サブネットのルートテーブルに行を追加して、Amazon S3 のプレフィックスリストを VPC エンドポイントに関連付けます。プレフィックスリスト ID は、VPC からのトラフィックが VPC エンドポイント経由で AWS のサービスにアクセスできるようにする、アウトバウンドセキュリティグループのルールを作成するために必要です。この開発エンドポイントに関連付けられているノートブックサーバーへの接続をローカルマシンから簡単に行うには、ルートテーブルに行を追加してインターネットゲートウェイ ID を追加します。詳細については、「VPC エンドポイント」を参照してください。サブネットのルートテーブルを更新すると次の表のようになります。
デスティネーション | ターゲット |
---|---|
10.0.0.0/16 |
local |
Amazon S3 の pl-id |
vpce-id |
0.0.0.0/0 |
igw-xxxx |
AWS Glue がコンポーネント間で通信できるようにするには、すべての TCP ポートに対して自己参照のインバウンドルールを持つセキュリティグループを指定します。自己参照ルールを作成することで、ソースを VPC 内の同じセキュリティグループに制限することができ、ネットワーク全体には公開されません。VPC のデフォルトのセキュリティグループには、すでに ALL Traffic (すべてのトラフィック) の自己参照インバウンドルールがある場合があります。
セキュリティグループを設定するには
AWS Management Console にサインインし、Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
左のナビゲーションペインで セキュリティグループを選択します。
-
リストから既存のセキュリティグループを選択するか、[Create Security Group] (セキュリティグループの作成) を選択して、開発エンドポイントで使用します。
-
セキュリティグループペインで、[Inbound] (インバウンド) タブに移動します。
-
自己参照ルールを追加して、AWS Glue コンポーネントが通信できるようにします。具体的には、[Type (タイプ)]
All TCP
、[Protocol (プロトコル)] はTCP
、[Port Range (ポート範囲)] にはすべてのポートが含まれ、[Source (ソース)] は [Group ID (グループ ID)] と同じセキュリティグループ名であるというルールを追加または確認します。インバウンドルールは次のようになります。
タイプ プロトコル ポート範囲 ソース すべての TCP
TCP
0~65535
security-group
次に、自己参照インバウンドルールの例を示します。
-
アウトバウンドトラフィックのルールも追加します。すべてのポートへのアウトバウンドトラフィックを開くか、または [Type (タイプ)]
All TCP
、[Protocol (プロトコル)] はTCP
、[Port Range (ポート範囲)] にすべてのポートが含まれ、[Source (ソース)] は [Group ID (グループ ID)] と同じセキュリティグループ名の自己参照ルールを作成します。アウトバウンドルールは、次のいずれかのルールのようになります。
タイプ プロトコル ポート範囲 デスティネーション すべての TCP
TCP
0~65535
security-group
すべてのトラフィック
すべて
すべて
0.0.0.0/0
ノートブックサーバー用の Amazon EC2 のセットアップ
開発エンドポイントでは、Jupyter Notebook で ETL スクリプトをテストするためのノートブックサーバーを作成できます。ノートブックとの通信を可能にするには、HTTPS (ポート 443) と SSH (ポート 22) の両方のインバウンドルールを持つセキュリティグループを指定します。ルールのソースが 0.0.0.0/0 か、ノートブックに接続しているマシンの IP アドレスであることを確認してください。
セキュリティグループを設定するには
AWS Management Console にサインインし、Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
左のナビゲーションペインで セキュリティグループを選択します。
-
リストから既存のセキュリティグループを選択するか、[Create Security Group] (セキュリティグループの作成) を選択して、ノートブックサーバーで使用します。開発エンドポイントに関連付けられているセキュリティグループは、ノートブックサーバーの作成にも使用されます。
-
セキュリティグループペインで、[Inbound] (インバウンド) タブに移動します。
-
次のようなインバウンドルールを追加します。
タイプ プロトコル ポート範囲 ソース SSH
TCP
22
0.0.0.0/0
HTTPS
TCP
443
0.0.0.0/0
次に、セキュリティグループのインバウンドルールの例を示します。