Permissões do perfil de segurança para executar uma aplicação do Flink - Amazon EMR

Permissões do perfil de segurança para executar uma aplicação do Flink

Este tópico descreve os perfis de segurança para implantar e executar uma aplicação do Flink. Há dois perfis necessários para gerenciar uma implantação e criar e gerenciar trabalhos: o perfil de operador e o perfil de trabalho. Este tópico os apresenta e lista as permissões.

Para implantar o operador e executar os trabalhos do Flink, é necessário criar dois perfis do Kubernetes: um perfil de operador e um perfil de trabalho. Por padrão, o Amazon EMR cria os dois perfis ao instalar o operador.

Usamos o perfil de operador para gerenciar flinkdeployments para a criação e o gerenciamento do JobManager para cada trabalho do Flink e para outros recursos, como serviços.

O nome padrão do perfil de operador é emr-containers-sa-flink-operator e ele requer as permissões apresentadas a seguir.

rules: - apiGroups: - "" resources: - pods - services - events - configmaps - secrets - serviceaccounts verbs: - '*' - apiGroups: - rbac.authorization.k8s.io resources: - roles - rolebindings verbs: - '*' - apiGroups: - apps resources: - deployments - deployments/finalizers - replicasets verbs: - '*' - apiGroups: - extensions resources: - deployments - ingresses verbs: - '*' - apiGroups: - flink.apache.org resources: - flinkdeployments - flinkdeployments/status - flinksessionjobs - flinksessionjobs/status verbs: - '*' - apiGroups: - networking.k8s.io resources: - ingresses verbs: - '*' - apiGroups: - coordination.k8s.io resources: - leases verbs: - '*'

O JobManager usa o perfil de trabalho para a criação e o gerenciamento do TaskManagers e do ConfigMaps para cada trabalho.

rules: - apiGroups: - "" resources: - pods - configmaps verbs: - '*' - apiGroups: - apps resources: - deployments - deployments/finalizers verbs: - '*'