Я успешно создал спарк-кластер на Куберне с 1 мастером и 2 рабочими модулями.Искра v2.4.3 работает с Java 8 и Scala 2.11.12 на k8s с kubectl v1.16.0 и minikube v1.4.0.
Подробно kubectl get pods
показывает это -
NAME READY STATUS RESTARTS AGE
spark-master-fcfd55d7d-qrpsw 1/1 Running 0 66m
spark-worker-686bd57b5d-6s9zb 1/1 Running 0 65m
spark-worker-686bd57b5d-wrqrd 1/1 Running 0 65m
Я также могу запустить встроенное искровое приложение, такое как pyspark
и spark-shell
, с помощью exec
в мастер-модуле.-
kubectl exec spark-master-fcfd55d7d-qrpsw -it spark-shell`
Так как у меня уже достаточно env, я пытаюсь запустить свою искровую работу на этом как выше.Но это не работает.Команда spark submit выглядит следующим образом.
#!/usr/bin/env bash
spark-submit \
--class com.cloudian.spark.main.RequestInfoLogStreamer \
/Users/atekade/IdeaProjects/scala-spark-streaming/target/scala-2.11/scala-spark-streaming_2.11-1.0.jar
И сценарий .sh
затем передается в мастер-модуль -
kubectl exec spark-master-fcfd55d7d-qrpsw /Users/atekade/IdeaProjects/scala-spark-streaming/logstreamer.sh
Но это дает мне ошибку -
OCI runtime exec failed: exec failed: container_linux.go:345: starting container process caused "exec: \"/Users/atekade/IdeaProjects/scala-spark-streaming/logstreamer.sh\": stat /Users/atekade/IdeaProjects/scala-spark-streaming/logstreamer.sh: no such file or directory": unknown
command terminated with exit code 126
Что яздесь делаешь неправильно?Мое намерение состоит в том, чтобы получить работу, выполненную этими основными и рабочими узлами.