建立 Git 儲存庫的存取權和許可 - Amazon EMR

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

建立 Git 儲存庫的存取權和許可

EMR Studio 支援下列 Git 型服務:

若要讓 EMR Studio 使用者將 Git 儲存庫與工作區建立關聯,請設定下列存取和許可要求。也可以依照 設定 EMR Studio 的私有託管 Git 儲存庫 中的指示,設定在私有網路中託管的 Git 儲存庫。

叢集網際網路存取

在連接至 Studio Workspaces 的EKS叢集上執行EMR的 Amazon EC2 EMR叢集都必須位於使用網路地址轉譯 (NAT) 閘道的私有子網路中,或者必須透過虛擬私有閘道存取網際網路。如需詳細資訊,請參閱啟動叢集時的 Amazon VPC選項

您與 EMR Studio 搭配使用的安全群組也必須包含傳出規則,允許 Workspaces 將流量從連接的EMR叢集路由到網際網路。如需詳細資訊,請參閱定義安全群組以控制 EMR Studio 網路流量

重要

如果網路介面位於公有子網路中,則無法透過網際網路閘道 () 與網際網路通訊IGW。

的許可 AWS Secrets Manager

若要讓 EMR Studio 使用者使用存放在 中的秘密存取 Git 儲存庫 AWS Secrets Manager,請將許可政策新增至 EMR Studio 的服務角色,以允許secretsmanager:GetSecretValue操作。

如需有關如何將 Git 儲存庫連結至工作區的相關資訊,請參閱 將 Git 型儲存庫連結至 EMR Studio Workspace

設定 EMR Studio 的私有託管 Git 儲存庫

請使用下列指示來設定 Amazon EMR Studio 的私有託管儲存庫。為組態檔案提供 DNS和 Git 伺服器的相關資訊。EMR Studio 使用此資訊來設定工作區,可將流量路由至自我管理的儲存庫。

注意

如果您設定 DnsServerIpV4,EMRStudio 會使用DNS伺服器來解析您的 GitServerDnsName和 Amazon EMR端點,例如 elasticmapreduce.us-east-1.amazonaws.com。若要設定 Amazon 的端點EMR,請透過與 Studio 搭配使用VPC的 連線到端點。這可確保 Amazon EMR端點解析為私有 IP。如需詳細資訊,請參閱EMR 使用介面VPC端點連線至 Amazon

先決條件

在設定 EMR Studio 的私有託管 Git 儲存庫之前,您需要一個 Amazon S3 儲存位置,讓 EMR Studio 可以在 Studio 中備份工作區和筆記本檔案。使用您在建立 Studio 時指定的相同 S3 儲存貯體。

為 EMR Studio 設定一或多個私有託管的 Git 儲存庫
  1. 使用下列範本建立組態檔案。針對您要在組態中指定的每個 Git 伺服器,包括下列值:

    • DnsServerIpV4 - DNS 伺服器IPv4的地址。如果您同時為 DnsServerIpV4和 提供值GitServerIpV4List,則 的值DnsServerIpV4優先,而 EMR Studio 會使用 DnsServerIpV4 來解析您的 GitServerDnsName

      注意

      若要使用私有託管的 Git 儲存庫,您的DNS伺服器必須允許 Studio 的傳入存取EMR。我們鼓勵您保護您的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>" ] } ] } ]
  2. 將組態檔案另存為 configuration.json

  3. 將組態檔案上傳到名為 life-cycle-configuration 的資料夾中的 Amazon S3 儲存位置。例如,如果預設的 S3 位置為 s3://amzn-s3-demo-bucket/studios,則組態檔案應位於 s3://amzn-s3-demo-bucket/studios/life-cycle-configuration/configuration.json

    重要

    我們建議您將life-cycle-configuration資料夾的存取限制為 Studio 管理員和 EMR Studio 服務角色,並確保您configuration.json不會遭到未經授權的存取。如需指示,請參閱透過使用者政策來控制對儲存貯體的存取Amazon S3 的安全最佳實務

    如需上傳說明,請參閱《Amazon Simple Storage Service 使用者指南》中的建立資料夾上傳物件。若要將組態套用到現有工作區,請在將組態檔案上傳到 Amazon S3 後關閉並重新啟動工作區。