Pré-requisitos e considerações ao integrar um caderno do EMR a um repositório
Considere as práticas recomendadas a seguir em relação a confirmações, permissões e hospedagem ao planejar a integração de um repositório baseado em Git com cadernos do EMR.
nota
Os cadernos do EMR estão disponíveis como Workspaces do EMR Studio no console. O botão Criar Workspace no console permite criar cadernos. Para acessar ou criar Workspaces, os usuários dos Cadernos do EMR precisam de permissões adicionais de perfil do IAM. Para obter mais informações, consulte Amazon EMR Notebooks are Amazon EMR Studio Workspaces in the console e console do Amazon EMR.
AWS CodeCommit
Se você usar um repositório do CodeCommit, deverá usar credenciais do Git e do HTTPS com o CodeCommit. As chaves SSH e o HTTPS com o assistente de credenciais da AWS CLI não são compatíveis. O CodeCommit não oferece suporte a tokens de acesso pessoal (PATs). Para obter mais informações, consulte Uso do IAM com CodeCommit: credenciais do Git, chaves SSH e chaves de acesso da AWS no Guia do usuário do IAM e Setup for HTTPS users using Git credentials no Guia do usuário do AWS CodeCommit.
Considerações sobre acesso e permissão
Antes de associar um repositório ao seu caderno, certifique-se de que o cluster, o perfil do IAM para Cadernos do EMR e os grupos de segurança tenham as configurações e as permissões corretas. Você também pode configurar repositórios baseados em Git hospedados em uma rede privada ao seguir as instruções em Configuração de um repositório Git hospedado de forma privada para Cadernos do EMR.
-
Acesso à Internet do cluster: a interface de rede iniciada tem somente um endereço IP privado. Isso significa que o cluster ao qual o bloco de anotações se conecta deve estar em uma sub-rede privada com um gateway de conversão de endereço de rede (NAT) ou deve ser capaz de acessar a Internet por um gateway privado virtual. Para obter mais informações, consulte Amazon VPC options.
Os grupos de segurança do bloco de anotações devem incluir uma regra de saída que permita ao bloco de anotações rotear tráfego para a Internet por meio do cluster. Recomendamos que você crie seus próprios grupos de segurança. Para obter mais informações, consulte Specifying EC2 security groups for EMR Notebooks.
Importante
Se a interface de rede for inicializada em uma sub-rede pública, não será possível ter uma comunicação com a Internet através de um gateway da Internet (IGW).
-
Permissões para o AWS Secrets Manager: se você usar o Secrets Manager para armazenar segredos usados para acessar um repositório, o Perfil de serviço para Cadernos do EMR deverá ter uma política de permissões anexada que permita a ação
secretsmanager:GetSecretValue.
Configuração de um repositório Git hospedado de forma privada para Cadernos do EMR
Use as instruções apresentadas a seguir para configurar repositórios hospedados de forma privada para Cadernos do EMR. Você deve fornecer um arquivo de configuração com informações sobre os servidores DNS e Git. O Amazon EMR usa essas informações para configurar Cadernos do EMR que podem rotear o tráfego para seus repositórios hospedados de forma privada.
Pré-requisitos
Antes de configurar um repositório Git hospedado de forma privada para Cadernos do EMR, você deve ter o seguinte:
-
Um local de Amazon S3 Control no qual os arquivos do seu Caderno do EMR serão salvos.
Configurar um ou mais repositórios Git hospedados de forma privada para Cadernos do EMR
-
Crie um arquivo de configuração usando o modelo fornecido. Inclua os seguintes valores para cada servidor Git que deseja especificar em sua configuração:
-
DnsServerIpV4- o endereço IPv4 do seu servidor DNS. Se você fornecer valores paraDnsServerIpV4eGitServerIpV4List, o valor paraDnsServerIpV4terá precedência e será usado para resolver seuGitServerDnsName.nota
Para usar repositórios Git hospedados de forma privada, seu servidor DNS deve permitir o acesso de entrada de Cadernos do EMR. Recomendamos fortemente proteger o servidor DNS contra outros acessos não autorizados.
-
GitServerDnsName- o nome DNS do seu servidor Git. Por exemplo, ."git.example.com". -
GitServerIpV4List- uma lista de endereços IPv4 que pertencem aos seus servidores Git.
[ { "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>" ] } ] } ] -
-
Salve seu arquivo de configuração como
configuration.json. -
Faça o upload do arquivo de configuração no local de armazenamento designado do Amazon S3 em uma pasta chamada
life-cycle-configuration. Por exemplo, se o local padrão do S3 fors3://amzn-s3-demo-bucket/notebooks, seu arquivo de configuração deverá estar localizado ems3://amzn-s3-demo-bucket/notebooks/life-cycle-configuration/configuration.json.Importante
Recomendamos fortemente restringir o acesso à pasta
life-cycle-configurationsomente para os administradores dos Cadernos do EMR e para o perfil de serviço dos Cadernos do EMR. Você também deve protegerconfiguration.jsoncontra acesso não autorizado. Para obter instruções, consulte Controlar o acesso a um bucket com políticas de usuário ou Práticas recomendadas de segurança para o Amazon S3.Para obter instruções sobre como fazer o upload, consulte Criar uma pasta e Fazer upload de objetos no Guia do usuário do Amazon Simple Storage Service.