Динамически обновлять конфигурацию Telegraf агентами хостов?

У меня есть несколько сетевых коммутаторов в моей инфраструктуре, и я использую telegraf для сбора информации о трафике данных от коммутаторов с помощью snmp. Пока IP-адреса коммутатора были добавлены в конфигурацию статически. Мне было интересно, если можно вызвать список IP-адресов из базы данных, поэтому мне не нужно добавлять его каждый раз статически в конфигурации? Или, может быть, телеграф просто не инструмент для этого.

Обычный конфиг выглядит так:

[[inputs.snmp]]
  agents = [ "192.168.252.15:161" ]
  version = 2
  community = "public"
  name = "snmp"

 [[inputs.snmp.field]]
    name = "hostname"
    oid = "RFC1213-MIB::sysName.0"
    is_tag = true

  [[inputs.snmp.table]]
    name = "snmp"
    inherit_tags = [ "hostname" ]
    oid = "IF-MIB::ifXTable"

    [[inputs.snmp.table.field]]
      name = "ifName"
      oid = "IF-MIB::ifName"
      is_tag = true

1 ответ

Я бы просто написал скрипт, который бы изменял файл telegraf.conf по мере необходимости. Я делаю нечто подобное для автоматически масштабируемых серверов в AWS... Итак, у меня есть скрипт bash, который запускает cloud-init, когда экземпляры создаются из образа, в котором уже находится большая часть моего телеграфного конфига, а затем этот скрипт изменяет его так имя хоста изменяется с новым IP-адресом.

В конечном счете, я думаю, что вам просто нужен сценарий, который запускается при создании или любой другой сценарий для ваших нужд. Мои два цента в любом случае...

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