为基于 Git 的存储库建立访问和权限
EMR Studio 支持以下基于 Git 的服务:
要让 EMR Studio 用户将 Git 存储库与 Workspace 相关联,请设置以下访问和权限要求。您还可以按照为 EMR Studio 配置私有托管的 Git 存储库中的说明配置在专用网络中托管的基于 Git 的存储库。
- 集群互联网访问
-
在 Amazon EC2 上运行的 Amazon EMR 集群和附加到 Studio Workspaces 的 Amazon EMR on EKS 集群都必须位于使用网络地址转换(NAT)网关的私有子网中,或者它们必须能够通过虚拟私有网关访问互联网。有关更多信息,请参阅 启动集群时的 Amazon VPC 选项。
您与 EMR Studio 一起使用的安全组还必须包含一个出站规则,该规则允许 Workspaces 将流量从附加的 EMR 集群路由到互联网。有关更多信息,请参阅 定义安全组以控制 EMR Studio 网络流量。
重要
如果网络接口在公有子网,它将无法通过互联网网关 (IGW) 与互联网通信。
- Amazon Secrets Manager 权限
-
要让 EMR Studio 用户使用存储在 Amazon Secrets Manager 中的密钥访问 Git 存储库,请向 EMR Studio 的服务角色添加允许
secretsmanager:GetSecretValue运营的权限策略。
有关如何将基于 Git 的存储库链接到 Workspaces 的信息,请参阅将基于 Git 的存储库链接到 EMR Studio Workspace。
为 EMR Studio 配置私有托管的 Git 存储库
按照以下说明为 Amazon EMR Studio 配置私有托管的存储库。请提供一个配置文件,其中包含有关您的 DNS 和 Git 服务器的信息。EMR Studio 使用此信息配置可将流量路由到您自行管理的存储库的 Workspaces。
注意
如果配置了 DnsServerIpV4,EMR Studio 将使用您的 DNS 服务器来解析 GitServerDnsName 和 Amazon Endpoints,但强烈建议避免使用 DnsServerIpV4 解析 Amazon Endpoints,因为这可能会中断基本服务功能。
先决条件
在为 EMR Studio 配置私有托管的 Git 存储库之前,您需要一个 Amazon S3 存储位置,EMR Studio 可以在其中备份 Studio 中的 Workspace 和 Notebook 文件。使用您在创建 Studio 时指定的相同 S3 存储桶。
为 EMR Studio 配置一个或多个私有托管的 Git 存储库
-
使用以下模板创建配置文件。为要在配置中指定的每个 Git 服务器包括以下值:
-
DnsServerIpV4– 您的 DNS 服务器的 IPv4 地址。如果您同时提供DnsServerIpV4和GitServerIpV4List的值,则DnsServerIpV4的值优先,而且 EMR Studio 使用DnsServerIpV4解析您的GitServerDnsName。注意
要使用私有托管的 Git 存储库,您的 DNS 服务器必须允许来自 EMR Studio 的入站访问。我们敦促您保护您的 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>" ] } ] } ] -
-
将配置文件另存为
configuration.json。 -
将配置文件上载到名为
life-cycle-configuration的文件夹中的默认 Amazon S3 存储位置。例如,如果您的默认 S3 位置是s3://,则您的配置文件将位于amzn-s3-demo-bucket/workspaces3://。amzn-s3-demo-bucket/workspace/life-cycle-configuration/configuration.json重要
我们敦促您将
life-cycle-configuration文件夹的访问权限限制为仅限 Studio 管理员和您的 EMR Studio 服务角色,并保护configuration.json免受未经授权的访问。有关说明,请参阅使用用户策略控制对存储桶的访问或 Amazon S3 的安全最佳实践。有关上传说明,请参阅《Amazon Simple Storage Service 用户指南》中的创建文件夹和上传对象。要将您的配置应用到现有 Workspace,您应该在将配置文件上传到 Amazon S3 后关闭并重新启动 Workspace。