Работа с потоком данных в лучах из Кубернетеса - PullRequest
0 голосов
/ 26 июня 2018

Мне любопытно узнать, может ли задание потока данных луча выполняться с kubernetes.Я вижу много весенних заданий потока данных, запускаемых из kubernetes, но не из лучевого потока данных.

Я вижу один пример, такой как https://github.com/sanderploegsma/beam-scheduling-kubernetes/blob/master/kubernetes/cronjob.yml

Но это не объясняет, как передавать параметры args, такие как

args: ["--runner=DataflowRunner --project=$peoject --gcpTempLocation=$gcptemp"]   

Более подробно об этом: https://streambench.wordpress.com/2018/06/07/set-up-the-direct-runner-for-beam/

Я хочу развернуть эту часть на kubernetes.

beam_app_direct:
container_name: "beam_direct_app"
image: "beam_direct_app"
build:
    context: .
    dockerfile: ./Dockerfile-direct
environment:
- YOUR_ENV_PARAMETER=42
- ANOTHER_ENV_PARAMETER=abc
- ...
links:
- ...
# volume:
# - ./your-beam-app /usr/src/your-beam-app
command: "bash ./init.sh"

, но я не понимаю, как этоможно развернуть.

Обновление более подробной информации.

Мой файл Cronjob.yaml

apiVersion: batch/v1
kind: Job
metadata:
      name: "cronjob"
spec:
    template:
    spec:
    containers:
     - name: campaignjob
      image: cronjob
      build:
      context: .
      dockerfile: ./Dockerfile
      command: "bash ./init.sh"
  restartPolicy: Never

kubectl apply -f cronjob.yaml --validate = false

Я получаю следующую ошибку.

Недопустимое задание "cronjob": * spec.template.spec.containers: Обязательное значение * spec.template.spec.restartPolicy: Неподдерживаемое значение: "Всегда": поддерживаемые значения: OnFailure, Never

Обновление: я очень удивлен.Я понял, что это случай неправильного файла YAML, но даже через 4 дня нет комментариев.Я даже отправил эту проблему в команду Google, но они просят меня использовать другие технологии.

1 Ответ

0 голосов
/ 11 июля 2018

По предоставленной вами ссылке на github задание должно выполняться на главном узле.В GKE у вас нет доступа к главному узлу, поскольку это управляемая служба.

Я бы предложил использовать Облачный поток данных Google , который создан для запуска описанных вами заданий.

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