Топология не выполняется в локальном кластере

Я пытался изучить шторм apache и настроить шторм на моей Ubuntu, установленной в vmware. Storm версии 2.4.0 и в настоящее время работает на локальном хосте. Когда я отправляю топологию. Топология успешно отправлена ​​и распределена в соответствии с планировщиком по умолчанию, но болты и носики никогда не передают никаких данных. Значение испускаемого столбца в сведениях о топологии остается равным 0. В сводке владельца выдается следующая ошибка: «Топологии этого пользователя могут быть незапланированы из-за чрезмерного использования владельцем ресурсов кластера». Подобный вопрос уже задавался здесь , но на него также нет ответа.

storm.yaml

сводная информация о владельце

Я пробовал много вещей, таких как изменение файла yaml, пытаясь настроить его на разных машинах, но получаю ту же ошибку.

1 ответ

Чтобы устранить это красное уведомление, вы должны добавить следующие строки конфигурации:

  • в storm.conf
      # available memory for your supervisor
supervisor.memory.capacity.mb: 8192.0
# available CPU resources for supervisor, 100 per core
supervisor.cpu.capacity: 1200.0
# scheduler class
storm.scheduler: "org.apache.storm.scheduler.resource.ResourceAwareScheduler"
  • создайте файл user-resource-pools.yaml в папке storm conf. Содержание: ubuntu — имя пользователя, от которого запускаются топологии, exampleuser — просто для примера синтаксиса
      resource.aware.scheduler.user.pools:
    ubuntu:
        cpu: 1200.0
        memory: 8192.0
    exampleuser:
        cpu: 100.0
        memory: 1024.0
  • перезапустите свой нимб и супервизор

Дополнительные сведения о ResourceAwareScheduler можно найти в документах Storm 2.4.0 и Storm 1.2.3.

Кстати, проверьте свой worker.log в logs/worker-artifacts/your-topology-id/.

Если испускаемые кортежи равны 0, некоторые болты или носики не работают.

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