clickhouse

Статус сборки Тег GitHub (последний по дате) Ansible Galaxy Оценка качества Ansible Galaxy Загрузки Ansible Galaxy

Ansible Роль: ClickHouse

Ansible роль, которая управляет установкой и настройкой ClickHouse.

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

Доступные переменные указаны ниже с их значениями по умолчанию (см. defaults/main.yml):

clickhouse_conf_dir: /etc/clickhouse-server

Каталог конфигурации сервера.

clickhouse_loglevel: information

Уровень ведения журналов сервера.

clickhouse_profiles:
  default:
    max_memory_usage: 10000000000
    use_uncompressed_cache: 0
    load_balancing: "random"

Профиль настроек — это сборище настроек, сгруппированных под одним названием.

clickhouse_profiles:
  default:
    password: "qwerty"
    profile: "default"
    quota: "default"

Раздел users файла конфигурации user.xml содержит настроеки пользователей.

clickhouse_profiles:
  default:
    intervals:
      - duration: 3600
        queries: 0
        errors: 0
        result_rows: 0
        read_rows: 0
        execution_time: 0

Настройки квоты предназначены для ограничения использования ресурсов в течение определённого времени или отслеживания использования ресурсов.

clickhouse_databases:
  - these_metrics
  - other_metrics
  - imported_data

clickhouse_databases — это список баз данных, которые вы хотите создать в ClickHouse.

clickhouse_zookeeper_hosts:
  - 1.2.3.4
  - 1.2.3.5

clickhouse_zookeeper_hosts — это список узлов zookeeper, к которым будет подключаться ClickHouse. Это необходимо для репликации.

clickhouse_zookeeper_port: 2181

clickhouse_zookeeper_port — это порт узлов zookeeper, к которым будет подключаться ClickHouse. Это необходимо для репликации.

Для целей отладки лучше всего начать с одного узла, а затем добавлять дополнительные узлы.

clickhouse_zookeeper_credentials в формате username:password используется для аутентификации в Zookeeper.

clickhouse_path: Путь к каталогу, в котором ClickHouse будет хранить данные.

clickhouse_log_directory: Путь для ошибок и обычных логов.

clickhouse_clusters: это список кластеров и также содержит шард, который является частью каждого кластера.

clickhouse_clusters:
  distributed_cluster_1:
    shard1:
      - { host: "host_1", port: 9000 }
      - { host: "host_2", port: 9000 }
    shard2:
      - { host: "host_3", port: 9000 }
      - { host: "host_4", port: 9000 }
  distributed_cluster_2:
    shard1:
      - { host: "host_5", port: 9000 }
      - { host: "host_6", port: 9000 }
    shard2:
      - { host: "host_7", port: 9000 }
      - { host: "host_8", port: 9000 }

Для файла macros.xml вам нужно заполнить следующие переменные:

clickhouse_cluster: это имя кластера, которое используется для репликации.

clickhouse_distributed_cluster: это имя распределенного кластера, определенного в clickhouse_clusters.

clickhouse_shard: это номер шарда (01, 02), который является частью репликации внутри одного шарда.

Зависимости

Нет.

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

- hosts: all
  roles:
    - nl2go.clickhouse

Разработка

Используйте docker-molecule согласно инструкциям, чтобы запустить Molecule или установите Molecule локально (не рекомендуется, могут возникнуть конфликты версий).

Предоставьте токен Hetzner Cloud:

export HCLOUD_TOKEN=123abc456efg

Используйте следующее для запуска тестов:

molecule test --all

Содержатели

Лицензия

Смотрите файл LICENSE.md для подробностей.

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

Эта роль была создана в 2020 году компанией Sendinblue GmbH.

О проекте

An Ansible Role that manages installation and configuration of Yandex Clickhouse

Установить
ansible-galaxy install nl2go/ansible-role-clickhouse
Лицензия
mit
Загрузки
4853
Владелец