Я пытаюсь запустить Spark на EKS.Создал кластер EKS, добавил узлы, а затем попытался отправить задание Spark из экземпляра EC2.
Выполнены следующие команды для доступа:
kubectl create serviceaccount spark
kubectl create clusterrolebinding spark-role --clusterrole=admin --serviceaccount=default:spark --namespace=default
используется команда spark-submit:
bin/spark-submit \
--master k8s://https://XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.us-east-1.eks.amazonaws.com \
--deploy-mode cluster \
--name spark-pi \
--class org.apache.spark.examples.SparkPi \
--conf spark.executor.instances=2 \
--conf spark.app.name=spark-pi \
--conf spark.kubernetes.authenticate.driver.serviceAccountName=spark \
--conf spark.kubernetes.container.image=k8sspark:latest \
--conf spark.kubernetes.authenticate.submission.caCertFile=ca.pem \
local:////usr/spark-2.4.3-bin-hadoop2.7/examples/jars/spark-examples_2.11-2.4.3.jar 100000
Возвращает:
log4j:ПРЕДУПРЕЖДЕНИЕ. Не удалось найти ни одного дополнительного файла для регистратора (io.fabric8.kubernetes.client.Config).log4j: WARN Пожалуйста, правильно инициализируйте систему log4j.log4j: WARN См. http://logging.apache.org/log4j/1.2/faq.html#noconfig для получения дополнительной информации.Использование стандартного профиля Spark для log4j: org / apache / spark / log4j-defaults.properties 19/06/06 16:03:50 ПРЕДУПРЕЖДЕНИЕ WatchConnectionManager: Исполнитель не завершил работу вовремя после завершения работы в close (), убив его в: io.fabric8.kubernetes.client.dsl.internal.WatchConnectionManager@5b43fbf6 Исключение в потоке "main" io.fabric8.kubernetes.client.KubernetesClientException: Ошибка при выполнении: POST по адресу: https://XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.us -east-1.eks.amazonaws.ком / API / v1 / пространств имен / по умолчанию / стручки .Сообщение: pods запрещено: Пользователь "system: anonymous" не может создать ресурс "pods" в группе API "" в пространстве имен "default".Полученный статус: Статус (apiVersion = v1, код = 403, подробности = StatusDetails (причины = [], группа = ноль, род = стручки, имя = ноль, retryAfterSeconds = ноль, uid = ноль, дополнительные свойства = {}), вид =Статус, message = pods запрещен: пользователь "system: anonymous" не может создать ресурс "pods" в группе API "" в пространстве имен "default", метаданные = ListMeta (_continue = null, resourceVersion = null, selfLink = null, AdditionalProperties ={}), причина = Запрещено, статус = Отказ, дополнительные свойства = {}).по адресу io.fabric8.kubernetes.client.dsl.base.OperationSupport.requestFailure (OperationSupport.java:478) по адресу io.fabric8.kubernetes.client.dsl.base.OperationSupport.assertResponseCode (OperationSupport.javao.f8 at at.kubernetes.client.dsl.base.OperationSupport.handleResponse (OperationSupport.java:381) в io.fabric8.kubernetes.client.dsl.base.OperationSupport.handleResponse (OperationSupport.java:344) в io.fabriccliber.dsl.base.OperationSupport.handleCreate (OperationSupport.java:227) в io.fabric8.kubernetes.client.dsl.base.BaseOperation.handleCreate (BaseOperation.java:787) в io.fabric8.kubernetes.client.dsl.base.BaseOperation.create (BaseOperation.java:357) в org.apache.spark.deploy.k8s.submit.Client $$ anonfun $ run $ 2.apply (KubernetesClientApplication.scala: 141) в org.apache.spark.deploy.k8s.submit.Client $$ anonfun $ run $ 2.apply (KubernetesClientApplication.scala: 140) в org.apache.spark.util.Utils $ .tryWithResource (Utils.scala: 2543) в org.apache.spark.deploy.k8s.submit.Client.run (KubernetesClientApplication.scala: 140) на org.apache.spark.deploy.k8s.submit.KubernetesClientApplication $$ anonfun $ run $ 5.apply (KubernetesClientApplication.scala: 250) на org.apache.spark.deubloy..KubernetesClientApplication $$ anonfun $ run $ 5.apply (KubernetesClientApplication.scala: 241) в org.apache.spark.util.Utils $ .tryWithResource (Utils.scala: 2543) в org.apache.spark.deploy.k8s.submit.KubernetesClientApplication.run (KubernetesClientApplication.scala: 241) в org.apache.spark.deploy.k8s.submit.KubernetesClientApplication.start (KubernetesClientApplication.scala: 204) в org.apache.sparkSp $ $ apg.park $.развернуть $ SparkSubmit $$ runMain (SparkSubmit.scala: 849) в org.apache.spark.deploy.SparkSubmit.doRunMain $ 1 (SparkSubmit.scala: 167) в org.apache.spark.deploy.SparkSubmit.submit (SparkSubmit.195) в org.apache.spark.deploy.SparkSubmit.doSubmit (SparkSubmit.scala: 86) в org.apache.spark.deploy.SparkSubmit $$ anon $ 2.doSubmit (SparkSubmit.scala: 924) в org.apache.spark.deploy.SparkSubmit $ .main (SparkSubmit.scala: 933) в org.apache.spark.deploy.SparkSubmit.main (SparkSubmit.scala) 19/06/06 16:03:50 INFO ShutdownHookManager: вызван хук выключения19/06/06 16:03:50 ИНФОРМАЦИЯ ShutdownHookManager: Удаление каталога / tmp / spark-0060fe01-33eb-4cb4-b96b-d5be687016bc
Попытка создания другой кластерной роли с правами администратора. Но это не сработало.
Есть идеи, как это исправить?