web-dev-qa-db-ja.com

保存されたすべてのデータとログを使用してgraylog2を新しいサーバーに移行するにはどうすればよいですか?

グレイログ2サーバーを、すべてのデータが含まれている新しいサーバーに変更する必要があります。新しいバージョン、mongodb、elasticsearch、graylog2-web-interfaceをインストールしました。

また、すべてのelasticsearch_dataを新しいサーバーにコピーし、すべての構成ファイルを確認しました。

graylog2.conf

graylog2-elasticsearch.yml

indexer.yml

mongoid.yml

general.yml

email.yml

誰かが次のステップのアイデアを得ましたか?以前のすべてのログとデータを新しいgraylog2サーバーに保存するには、他に何をする必要がありますか?

3
user2295262

私はあなたがgraylog2にたくさんのデータを持っていると思いますが、あなたは大きなダウンタイムを避けたいと思っています。このように、設定(/ etc/graylogおよび/ etc/elasticsearch)をコピーする必要があります。

次に、最初に新しいelasticsearchを既存のelasticsearchクラスターに参加させる必要があります。次に、新しいノードへのデータ移行を開始する必要があります。これは、次の設定で実行できます。

# old node  /etc/elasticsearch/elasticsearch.yml
cluster.routing.allocation.disk.threshold_enabled: true
cluster.routing.allocation.disk.watermark.low=0%
cluster.routing.allocation.disk.watermark.high=0%

または、次の方法でデータ移行を開始することもできます。

curl -XPUT localhost:9200/_cluster/settings -d '{
    "transient" : {
        "cluster.routing.allocation.exclude._ip" : "10.0.0.1"
    }
}'

ここで「除外」とは、既存のデータの保存から除外する必要があるノードを指します(つまり、古いノードを除外します)。

データが移動したことを確認したら(つまり、新しいノードのすべてのシャード)、古いノードのすべてを停止し、新しいノードでグレーログを開始できます。

1
kubanczyk

必要な構成ファイルだけではありません。 elasticsearchとmongodbデータをダンプし、新しいサーバーに復元します。 Elasticsearchデータをコピーすると、Elastic Searchが機能するかどうかはわかりませんが、ダンプと復元は確実に機能します。

個人的には、Elastic Searchにはes_dump_restoreを使用し、mongodbにはmongodumpを使用しています。

何よりもまず、新しいサーバー(graylog Rails interface)を停止してダンプを復元し、その後でのみgraylogインターフェイスを開始します。

1
Sacx