Отправлять журналы искрового драйвера, запущенные в k8s, в Splunk - PullRequest
0 голосов
/ 24 января 2020

Я пытаюсь запустить пример задания искры в kubernetes, выполнив следующие шаги: https://spark.apache.org/docs/latest/running-on-kubernetes.html.

Я пытаюсь отправить журналы искрового драйвера и исполнителя в Splunk , Предоставляет ли spark какую-либо конфигурацию, чтобы сделать то же самое? Как отправить конфигурации Splunk, такие как конечная точка HE C, порт, токен и т. Д. c в команде spark-submit?

Я попытался передать его в качестве аргументов в драйвер spark как

bin/spark-submit
  --deploy-mode cluster
  --class org.apache.spark.examples.JavaSparkPi
  --master k8s://http://127.0.0.1:8001
  --conf spark.executor.instances=2
  --conf spark.app.name=spark-pi
  --conf spark.kubernetes.container.image=gcr.io/spark-operator/spark:v2.4.4
  --conf spark.kubernetes.authenticate.driver.serviceAccountName=<account>
  --conf spark.kubernetes.docker.image.pullPolicy=Always
  --conf spark.kubernetes.namespace=default
  local:///opt/spark/examples/jars/spark-examples_2.11-2.4.4.jar
  --log-driver=splunk
  --log-opt splunk-url=<url:port>
  -—log-opt splunk-token=<token>
  --log-opt splunk-index=<index>
  --log-opt splunk-sourcetype=<sourceType>
  --log-opt splunk-format=json

, но журналы не были перенаправлены на нужный индекс.

Я использую версию 2.4.4 spark для запуска spark-submit.

Заранее спасибо за любые входы !!

1 Ответ

1 голос
/ 26 января 2020

Привет и добро пожаловать в Stackoverflow.

Я некоторое время искал в Интернете, пытаясь найти похожие на ваши вопросы случаи использования Spark + Splunk. Мне удалось понять, что, возможно, вы смешиваете несколько вещей. Если обратиться к Docker документам о Splunk logging driver , то кажется, что вы пытаетесь воспроизвести те же шаги с помощью `spark-submit. К сожалению, для вас это не работает.

В основном все параметры конфигурации после local:///opt/spark/examples/jars/spark-examples_2.11-2.4.4.jar ... в вашем скрипте являются аргументами программы для метода org.apache.spark.examples.JavaSparkPi#main, который (если вы его не настраиваете) просто игнорирует их.

Вам нужно подключить кластер Kubrnetes к API Splunk. Один из способов сделать это - установить Splunk Connector 1013 * на ваш кластер Kubernetes. В зависимости от специфики вашей среды, могут быть другие способы сделать это, но чтение документов - это хорошее начало.

Надеюсь, оно направит вас на правильный путь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...