nl2go.clickhouse

ビルドステータス GitHubタグ(最新の日付) Ansible Galaxy Ansible Galaxy品質スコア Ansible Galaxyダウンロード数

Ansibleロール: ClickHouse

ClickHouseのインストールと設定を管理するAnsibleロールです。

ロール変数

利用可能な変数は以下に示されており、デフォルト値も記載しています(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"

user.xml設定ファイルのusersセクションには、ユーザーの設定が含まれます。

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は、ClickHouseが接続するZookeeperノードのリストです。レプリケーションに必要です。

clickhouse_zookeeper_port: 2181

clickhouse_zookeeper_portは、ClickHouseが接続するZookeeperノードのポートです。レプリケーションに必要です。

デバッグの目的で、最初は1つのホストから始めて、後で追加するのが良いでしょう。

clickhouse_zookeeper_credentialsusername: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: 1つのシャード内のレプリケーションに関与するシャード番号(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.clickhouse
ライセンス
mit
ダウンロード
4.9k