Como o Amazon EMR no EKS funciona com o AWS Lake Formation
O uso do Amazon EMR no EKS com o Lake Formation permite aplicar uma camada de permissões em cada trabalho do Spark para aplicar o controle de permissões do Lake Formation quando o Amazon EMR no EKS executa trabalhos. O Amazon EMR on EKS usa perfis de recursos do Spark
Veja a seguir uma visão geral de alto nível sobre como o Amazon EMR no EKS obtém acesso aos dados protegidos pelas políticas de segurança do Lake Formation.
As etapas a seguir descrevem este processo:
Um usuário envia um trabalho Spark para um cluster virtual do Amazon EMR no EKS habilitado para o AWS Lake Formation.
O serviço Amazon EMR on EKS configura o driver do usuário e executa o trabalho no perfil do usuário. O Driver do usuário executa uma versão simplificada do Spark que não tem capacidade para iniciar tarefas, solicitar executores, acessar o Amazon S3 ou o Catálogo de dados do Glue. Ele apenas cria um plano de trabalho.
O serviço Amazon EMR no EKS configura um segundo driver chamado driver do sistema e o executa no perfil do sistema (com uma identidade privilegiada). O Amazon EKS configura um canal TLS criptografado entre os dois drivers para comunicação. O driver do usuário usa o canal para enviar os planos de trabalho ao driver do sistema. O driver do sistema não executa o código enviado pelo usuário. Ela executa o Spark completo e se comunica com o Amazon S3 e com o Catálogo de dados para acesso aos dados. Ele solicita executores e compila o plano de trabalho em uma sequência de estágios de execução.
O serviço Amazon EMR no EKS executa as etapas nos executores. O código do usuário em qualquer estágio é executado exclusivamente nos executores do perfil do usuário.
Os estágios que lêem dados das tabelas do Catálogo de dados protegidas pelo Lake Formation ou que aplicam filtros de segurança são delegados aos executores do sistema.