

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# EMR ノートブックをリポジトリと統合する際の前提条件と考慮事項
<a name="emr-managed-notebooks-git-considerations"></a>

Git ベースのリポジトリを EMR Notebooks と統合することを計画している場合は、コミット、権限、ホスティングに関する以下のベストプラクティスを考慮してください。

**注記**  
EMR Notebooks は、コンソールで EMR Studio Workspace として使用できます。コンソールの **[ワークスペースの作成]** ボタンを使用すると、新しいノートブックを作成できます。EMR Notebooks ユーザーが Workspace にアクセスしたり作成したりするには、追加の IAM ロール権限が必要です。詳細については、「[Amazon EMR Notebooks are Amazon EMR Studio Workspaces in the console](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-managed-notebooks-migration.html)」および「[Amazon EMR console](https://docs.aws.amazon.com/emr/latest/ManagementGuide/whats-new-in-console.html)」を参照してください。

## AWS CodeCommit
<a name="code-commit-considerations"></a>

CodeCommit リポジトリを使用する場合は、CodeCommit で Git 認証情報と HTTPS を使用する必要があります。SSH キー、および AWS CLI 認証情報ヘルパーを含む HTTPS はサポートされていません。CodeCommit は、個人用アクセストークン (PAT) をサポートしていません。詳細については、[「IAM ユーザーガイド」のCodeCommit での IAM の使用: Git 認証情報、SSH キー、および AWS アクセスキー](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_ssh-keys.html)」および*AWS CodeCommit 「 ユーザーガイド*」の[「Git 認証情報を使用した HTTPS ユーザーのセットアップ](https://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-gc.html)」を参照してください。 **

## アクセスとアクセス許可に関する考慮事項
<a name="access-considerations"></a>

リポジトリをノートブックに関連付ける前に、クラスター、EMR Notebooks の IAM ロール、およびセキュリティグループの設定とアクセス許可が正しいことを確認してください。「[EMR Notebooks 用にプライベートにホストされた Git リポジトリを設定する](#emr-managed-notebooks-private-git-repo)」の手順に従って、プライベートネットワークでホストしている Git ベースのリポジトリを設定することもできます。
+ **クラスターのインターネットアクセス** - 起動されるネットワークインターフェイスにはプライベート IP アドレスしかありません。つまり、ノートブックが接続するクラスターは、ネットワークアドレス変換 (NAT) ゲートウェイに接続されたプライベートサブネット内にあるか、仮想プライベートゲートウェイを介してインターネットにアクセスできる必要があります。詳細については、「[Amazon VPC のオプション](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-clusters-in-a-vpc.html)」を参照してください。

  ノートブックのセキュリティグループには、クラスターからインターネットにトラフィックをルーティングすることをノートブックに許可するアウトバウンドルールが含まれている必要があります。独自のセキュリティグループを作成することをお勧めします。詳細については、「[EMR Notebooks の EC2 セキュリティグループの指定](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-managed-notebooks-security-groups.html)」を参照してください。
**重要**  
ネットワークインターフェイスがパブリックサブネットに起動された場合、インターネットゲートウェイ (IGW) を介してインターネットと通信できなくなります。
+ アクセス**許可 AWS Secrets Manager** – Secrets Manager を使用してリポジトリへのアクセスに使用するシークレットを保存する場合、 には `secretsmanager:GetSecretValue`アクションを許可するアクセス許可ポリシーがアタッチされている[EMR Notebooks のサービスロール](emr-managed-notebooks-service-role.md)必要があります。

## EMR Notebooks 用にプライベートにホストされた Git リポジトリを設定する
<a name="emr-managed-notebooks-private-git-repo"></a>

次の手順を使用して、EMR Notebooks 用にプライベートにホストされたリポジトリを設定します。DNS サーバーおよび Git サーバーに関する情報が含まれた設定ファイルを用意する必要があります。Amazon EMR は、この情報を使用して、プライベートにホストされたリポジトリにトラフィックをルーティングできる EMR notebooks を設定します。

**前提条件**

EMR Notebooks 用にプライベートにホストされた Git リポジトリを設定する前に、次のものが必要です。
+ EMR ノートブックのファイルが保存される Amazon S3 Control 場所。

**EMR Notebooks 用にプライベートにホストされた 1 つ以上の Git リポジトリを設定するには**

1. 提供されたテンプレートを使用して、設定ファイルを作成します。設定で指定する Git サーバーごとに次の値を含めます。
   + **`DnsServerIpV4`** - DNS サーバーの IPv4 アドレス。`DnsServerIpV4` と `GitServerIpV4List` の両方に値を指定した場合、`DnsServerIpV4` の値が優先され、`GitServerDnsName` を解決するために使用されます。
**注記**  
プライベートにホストされた Git リポジトリを使用するには、DNS サーバーで EMR Notebooks からのインバウンドアクセスを許可する必要があります。DNS サーバーを他の不正アクセスから保護することを強くお勧めします。
   + **`GitServerDnsName`** - Git サーバーの DNS 名。例: `"git.example.com"`。
   + **`GitServerIpV4List`** - Git サーバーに属する IPv4 アドレスのリスト。

   ```
   [
       {
           "Type": "PrivatelyHostedGitConfig",
           "Value": [
               {
                   "DnsServerIpV4": "{{<10.24.34.xxx>}}",
                   "GitServerDnsName": "{{<enterprise.git.com>}}",
                   "GitServerIpV4List": [
                       "{{<xxx.xxx.xxx.xxx>}}",
                       "{{<xxx.xxx.xxx.xxx>}}"
                   ]
               },
               {
                   "DnsServerIpV4": "{{<10.24.34.xxx>}}",
                   "GitServerDnsName": "{{<git.example.com>}}",
                   "GitServerIpV4List": [
                       "{{<xxx.xxx.xxx.xxx>}}",
                       "{{<xxx.xxx.xxx.xxx>}}"
                   ]
               }
           ]
       }
   ]
   ```

1. `configuration.json` という名前で設定ファイルを保存します。

1. 設定ファイルを指定された Amazon S3 ストレージの場所にある `life-cycle-configuration` というフォルダーにアップロードします。例えば、デフォルトの S3 の場所が `s3://amzn-s3-demo-bucket/notebooks` の場合、設定ファイルは `s3://amzn-s3-demo-bucket/notebooks/life-cycle-configuration/configuration.json` に配置する必要があります。
**重要**  
`life-cycle-configuration` フォルダへのアクセスを EMR Notebooks 管理者および EMR Notebooks のサービスロールのみに制限することを強くお勧めします。また、`configuration.json` を不正アクセスから保護する必要があります。手順については、「[ユーザーポリシーを使用したバケットへのアクセスの制御](https://docs.aws.amazon.com/AmazonS3/latest/userguide/walkthrough1.html)」または「[Amazon S3 のセキュリティベストプラクティス](https://docs.aws.amazon.com/AmazonS3/latest/userguide/security-best-practices.html)」を参照してください。

   アップロードの手順については、「*Amazon Simple Storage Service ユーザーガイド*」の「[フォルダの作成](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-folders.html#create-folder)」と「[オブジェクトのアップロード](https://docs.aws.amazon.com/AmazonS3/latest/userguide/upload-objects.html)」を参照してください。