AMQP - Argo-events: argo-workflow не запущен

Я пытаюсь запустить argo-рабочий процесс, запускаемый источником событий, который прослушивает сообщения, опубликованные на RabbitMQ. Я выполнил точные шаги здесь: События AMQP-Argo

Модуль контроллера RabbitMQ запущен:

      eventbus-controller-7b5bd8b7fd-nggrc      1/1     Running   0          4h24m
events-webhook-6d4dc5b476-fnf6x           1/1     Running   0          4h24m
eventsource-controller-57b6cff5c8-xhfwd   1/1     Running   0          4h24m
rabbitmq-controller-949wp                 1/1     Running   0          178m
sensor-controller-6f5b54468-8ndft         1/1     Running   0          4h24m

Когда я публикую сообщение о тесте обмена, используя:

      import pika
connection = pika.BlockingConnection(pika.ConnectionParameters('localhost'))
channel = connection.channel()
channel.basic_publish(exchange='test',
                      routing_key='hello',
                      body='{"message": "hello"}')

и войдите в модуль, используя

      kubectl logs pod/<RABBITMQ-CONTROLLER-POD> -n argo-events

я получил

      2021-09-01 22:58:56.437190+00:00 [info] <0.3934.0> accepting AMQP connection <0.3934.0> (127.0.0.1:58396 -> 127.0.0.1:5672)
2021-09-01 22:58:56.442906+00:00 [info] <0.3934.0> connection <0.3934.0> (127.0.0.1:58396 -> 127.0.0.1:5672): user 'guest' authenticated and granted access to vhost '/'

Howerver Я не вижу никаких рабочих процессов в списке, когда я просматриваю рабочие процессы с помощью

      argo list -n argo-events

Так вроде сенсор не срабатывает. Может кто-нибудь подсказать, что я делаю не так?

Спасибо!

1 ответ

Я могу только предложить (как тот, кто все еще работает над базовой реализацией разработки) проверить, что файлы шаблонов/примеров настроены с соответствующими учетными данными и учетными записями службы - я тоже был немного сбит с толку, когда я не смог заставить работать триггер ресурсов .

РЕДАКТИРОВАТЬ: Вы также должны убедиться, что датчик имеет соответствующую учетную запись службы (см. https://argoproj.github.io/argo-events/service-accounts/ ), например

      apiVersion: v1
kind: ServiceAccount
metadata:
  name: operate-workflow-sa
---
# Similarly you can use a ClusterRole and ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
  name: operate-workflow-role
rules:
  - apiGroups:
      - argoproj.io
    verbs:
      - "*"
    resources:
      - workflows
      - workflowtemplates
      - cronworkflows
      - clusterworkflowtemplates
---
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
  name: operate-workflow-role-binding
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: Role
  name: operate-workflow-role
subjects:
  - kind: ServiceAccount
    name: operate-workflow-sa

источник: https://argoproj.github.io/argo-events/quick_start/

Другие вопросы по тегам