Как автоматизировать работу календаря Job2Docker в Kubernetes - PullRequest
0 голосов
/ 12 апреля 2019

Может ли кто-нибудь дать мне несколько советов о передовой практике динамического переноса нескольких заданий Talend в Kubernetes?

  1. Я использую Talend Open Studio для больших данных
  2. У меня есть сервер слушателядля Job2Docker
  3. Как изменить сценарии для автоматизации отправки в Docker Hub?
  4. Возможно ли иметь динамический тип CronJob K8s, который может выполнять задания на основе файла конфигурации.

1 Ответ

1 голос
/ 29 мая 2019

В итоге я не использовал Job2Docker в пользу простого процесса Docker.

  1. Создайте автономное задание Talend.
  2. Разархивируйте сборку в папку с именем jobs.
  3. Используйте приведенный ниже пример Dockerfile для создания и отправки вашего образа Docker.

Dockerfile

FROM java
WORKDIR /talend
COPY ./jobs /talend

Создание типа CronJob для K8s

apiVersion: batch/v1beta1
kind: CronJob
metadata:
  name: etl-edw-cronjob
spec:
  schedule: "0 * * * *"
  jobTemplate:
    spec:
      template:
        spec:
          restartPolicy: Never
          containers:
            - name: etl-edw-job
              image: dockerhubrepo/your-etl
              command: ["sh",  "./process_data_warehouse_0.1/process_data_warehouse/process_data_warehouse_run.sh"]
              env:
                - name: PGHOST
                  value: postgres-cluster-ip-service
                - name: PGPORT
                  value: "5432"
                - name: PGDATABASE
                  value: infohub
                - name: PGUSER
                  value: postgres
                - name: PGPASSWORD
                  valueFrom:
                    secretKeyRef:
                      name: pgpassword
                      key: PGPASSWORD
                - name: MONGOSERVER
                  value: mongo-service
                - name: MONGOPORT
                  value: "27017"
                - name: MONGODB
                  value: hearth
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...