Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Resolución de problemas
En esta sección, se describe cómo solucionar problemas con Amazon EMR en EKS. Para obtener información sobre cómo solucionar problemas generales con Amazon EMR, consulte Solucionar problemas de clústeres en la Guía de administración de Amazon EMR.
Solución de problemas de Apache Flink en Amazon EMR en EKS
No se encontró la asignación de recursos al instalar el gráfico de Helm
Es posible que aparezca el siguiente mensaje de error cuando instale el gráfico de Helm.
Error: INSTALLATION FAILED: pulling from host 1234567890.dkr.ecr.us-west-2.amazonaws.com failed with status code [manifests 6.13.0]: 403 Forbidden Error: INSTALLATION FAILED: unable to build kubernetes objects from release manifest: [resource mapping not found for name: "flink-operator-serving-cert" namespace: "<the namespace to install your operator>" from "": no matches for kind "Certificate" in version "cert-manager.io/v1"
ensure CRDs are installed first, resource mapping not found for name: "flink-operator-selfsigned-issuer" namespace: "<the namespace to install your operator>" " from "": no matches for kind "Issuer" in version "cert-manager.io/v1"
ensure CRDs are installed first].
Para resolver este error, instale cert-manager para poder agregar el componente webhook. Debe instalar cert-manager en cada clúster de Amazon EKS que utilice.
kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.12.0
Servicio de AWS error de acceso denegado
Si ve un error de tipo access denied, confirme que el rol de IAM incluido para operatorExecutionRoleArn en el archivo values.yaml de gráfico de Helm tiene los permisos correctos. Asegúrese también de que el rol de IAM asignado a executionRoleArn en su especificación FlinkDeployment tenga los permisos correctos.
FlinkDeployment está atascada
Si se bloquea la FlinkDeployment, siga estos pasos para forzar la eliminación de la implementación:
-
Edite la ejecución de la implementación.
kubectl edit -nFlink Namespaceflinkdeployments/App Name -
Elimine este finalizador.
finalizers: - flinkdeployments.flink.apache.org/finalizer -
Elimine la implementación.
kubectl delete -nFlink Namespaceflinkdeployments/App Name
AWSBadRequestException problema s3a al ejecutar una aplicación Flink de forma opcional Región de AWS
Si ejecutas una aplicación de Flink de forma opcional Región de AWS, es posible que veas los siguientes errores:
Caused by: org.apache.hadoop.fs.s3a.AWSBadRequestException: getFileStatus on s3://flink.txt: com.amazonaws.services.s3.model.AmazonS3Exception: Bad Request (Service: Amazon S3; Status Code: 400; Error Code: 400 Bad Request; Request ID: ABCDEFGHIJKL; S3 Extended Request ID: ABCDEFGHIJKLMNOP=; Proxy: null), S3 Extended Request ID: ABCDEFGHIJKLMNOP=:400 Bad Request: Bad Request (Service: Amazon S3; Status Code: 400; Error Code: 400 Bad Request; Request ID: ABCDEFGHIJKL; S3 Extended Request ID: ABCDEFGHIJKLMNOP=; Proxy: null)
Caused by: org.apache.hadoop.fs.s3a.AWSBadRequestException: getS3Region on flink-application: software.amazon.awssdk.services.s3.model.S3Exception: null (Service: S3, Status Code: 400, Request ID: ABCDEFGHIJKLMNOP, Extended Request ID: ABCDEFGHIJKLMNOPQRST==):null: null (Service: S3, Status Code: 400, Request ID: ABCDEFGHIJKLMNOP, Extended Request ID: AHl42uDNaTUFOus/5IIVNvSakBcMjMCH7dd37ky0vE6jhABCDEFGHIJKLMNOPQRST==)
Para corregir estos errores, utilice la siguiente configuración en el archivo de definición FlinkDeployment.
spec: flinkConfiguration: taskmanager.numberOfTaskSlots: "2" fs.s3a.endpoint.region:OPT_IN_AWS_REGION_NAME
También le recomendamos que utilice el proveedor de SDKv2 credenciales:
fs.s3a.aws.credentials.provider: software.amazon.awssdk.auth.credentials.WebIdentityTokenFileCredentialsProvider
Si quieres usar el proveedor de SDKv1 credenciales, asegúrate de que tu SDK sea compatible con la región en la que has optado. Para obtener más información, consulta el aws-sdk-java GitHub repositorio
Si obtiene S3 AWSBadRequestException cuando ejecuta instrucciones SQL de Flink en una región opcional, asegúrese de establecer la configuración fs.s3a.endpoint.region: en sus especificaciones de configuración de Flink.OPT_IN_AWS_REGION_NAME
S3A AWSBad RequestException cuando se ejecuta un trabajo de sesión de Flink en regiones CN
En el caso de las versiones 6.15.0 a 7.2.0 de Amazon EMR, es posible que aparezca los siguientes mensajes de error al ejecutar un trabajo de sesión de Flink en las regiones de CN. Estas incluyen China (Pekín) y China (Ningxia):
Error: {"type":"org.apache.flink.kubernetes.operator.exception.ReconciliationException","message":"org.apache.hadoop.fs.s3a.AWSBadRequestException: getFileStatus on s3://ABCDPath: software.amazon.awssdk.services.s3.model.S3Exception: null (Service: S3, Status Code: 400, Request ID: ABCDEFGH, Extended Request ID: ABCDEFGH:null: null (Service: S3, Status Code: 400, Request ID: ABCDEFGH, Extended Request ID: ABCDEFGH","additionalMetadata":{},"throwableList": [{"type":"org.apache.hadoop.fs.s3a.AWSBadRequestException","message":"getFileStatus on s3://ABCDPath: software.amazon.awssdk.services.s3.model.S3Exception: null (Service: S3, Status Code: 400, Request ID: ABCDEFGH, Extended Request ID: ABCDEFGH:null: null (Service: S3, Status Code: 400, Request ID: ABCDEFGH, Extended Request ID: ABCDEFGH","additionalMetadata":{}},{"type":"software.amazon.awssdk.services.s3.model.S3Exception","message":"null (Service: S3, Status Code: 400, Request ID: ABCDEFGH, Extended Request ID: ABCDEFGH","additionalMetadata":{}}]}
Existe conciencia sobre este problema. El equipo está trabajando para parchear los operadores de Flink en todas estas versiones de lanzamiento. Sin embargo, antes de finalizar el parche, para corregir este error, necesita descargar el gráfico de Helm del operador de Flink, descomprimirlo (extraer el archivo comprimido) y realizar cambios de configuración en el gráfico de Helm.
A continuación se indican los pasos a seguir:
Cambie a su carpeta local para el gráfico de Helm, específicamente cambie los directorios a, y ejecute la siguiente línea de comandos para extraer el gráfico de Helm y descomprimirlo (extraerlo).
helm pull oci://public.ecr.aws/emr-on-eks/flink-kubernetes-operator \ --version $VERSION \ --namespace $NAMESPACEtar -zxvf flink-kubernetes-operator-$VERSION.tgzVaya a la carpeta del gráfico de Helm y busque el archivo
templates/flink-operator.yaml.Busque
flink-operator-configConfigMap y añada la siguientefs.s3a.endpoint.regionconfiguración en.flink-conf.yamlPor ejemplo:{{- if .Values.defaultConfiguration.create }} apiVersion: v1 kind: ConfigMap metadata: name: flink-operator-config namespace: {{ .Release.Namespace }} labels: {{- include "flink-operator.labels" . | nindent 4 }} data: flink-conf.yaml: |+ fs.s3a.endpoint.region: {{ .Values.emrContainers.awsRegion }}Instale el gráfico de Helm local y ejecute su trabajo.