stuart_go_carbon

Ansible Роль для go-carbon

Эта роль установит и настроит go-carbon, реализацию сервера Graphite/Carbon на языке Golang.

Требования

Эта роль будет заниматься только установкой компонента carbon. Вам нужно будет отключить оригинальную программу Carbon в стандартной установке Graphite.

Переменные роли

Вся конфигурация go-carbon автоматически генерируется на основе значений трех словарей:

go_carbon_conf:
  common:
    user: "carbon"
    max-cpu: 4
  whisper:
    data-dir: "/var/lib/graphite/whisper"
go_carbon_storage_schemas:
  default:
    pattern: ".*"
    retentions: "60s:30d,1h:5y"
go_carbon_storage_aggregation_rules:
  default:
    pattern: ".*"
    xFilesFactor: 0.5
    aggregationMethod: "average"

Первый уровень создаст [section] в соответствующем файле, а все остальные ключи/значения создадут записи ключ/значение в этом разделе.

Есть лишь одно заметное исключение в go_carbon_conf, а именно logging. Поскольку go-carbon поддерживает несколько журналов, вы можете определить несколько записей следующим образом:

go_carbon_conf:
  logging:
    - logger: ""
      file: "/var/log/go-carbon/go-carbon.log"
      level: "info"
      encoding: "mixed"
      encoding-time: "iso8601"
      encoding-duration: "seconds"
      ## вы можете добавить больше журналов здесь, они будут появляться как [[logging]] секции
      # - logger: ""
      #   file: "stderr"
      #   level: "error"

Обратите внимание: значения по умолчанию находятся в vars/main.yml под go_carbon_conf_defaults, но вы должны переопределить их с помощью словаря go_carbon_conf.

Зависимости

Дополнительные зависимости отсутствуют.

Пример плейбука

Это установит go-carbon и настроит его конфигурацию, создавая необходимые директории:

- hosts: servers
  roles:
- { role: stuart.go-carbon,
    vars: {
      go_carbon_conf:
        common:
          user: "graphite"
          max-cpu: 2
        whisper:
          data-dir: "/var/local/whisper"
        cache:
          max-size: 2500000
      go_carbon_storage_schemas:
        default:
          pattern: ".*"
          retentions: "60s:30d,1h:5y"
      go_carbon_storage_aggregation_rules:
        default:
          pattern: ".*"
          xFilesFactor: 0.5
          aggregationMethod: "average"
    }
  }

Лицензия

GPLv3

Информация об авторе

Эта роль была первоначально создана Давидом Феррари во время работы в Stuart. Если вам нравится то, что мы делаем, дайте знать! Мы нанимаем!

О проекте

Ansible role to install and configure go-carbon

Установить
ansible-galaxy install StuartApp/stuart.go-carbon
Лицензия
Unknown
Загрузки
7996
Владелец