0

1 つのマスター + 1 つのノードの 2 ノード クラスター Elasticsearch を実行しています。すべてがスムーズに実行されており、すべてのインデックスが正常に稼働しています (ただし、現在レプリカはありません)。

私の現在のelasticsearch構成は次のとおりです。

path.data = /path/to/data

ただし、追加のパス (LVM ボリューム) を追加して、Elasticsearch のディスク サイズを拡張したいと考えていました。ES データ ノードをシャットダウンしてから、elasticsearch.yml conf ファイルを次のように変更しました。

path.data = ["/path/to/data", "/path/to/newdata"]

そして、データノードを再起動しました。クラスターはすぐに赤くなり、すべてのシャードが割り当てられていません。グローバルな無効化割り当て設定も確認しましたが、それは次のとおりです。

routing.allocation.disable_allocation: false

ノードを再度シャットダウンし、2 番目のパスを削除し、クラスターを再起動すると、すべてが再び緑色になりました。ElasticSearch が新しいデータ パスを正しく検出し、実際にディスク容量が増加したことに注意してください。

ES データ ノードに 2 つ目のパスを追加してディスク容量を増やし、ElasticSearch に正しく認識させるにはどうすればよいですか?

ご協力いただきありがとうございます。

**** 追加した ****

エラスティックサーチ ビルド 1.7.3

_nodes/stats (前)

     "fs": {
        "timestamp": 1445875849977,
        "total": {
           "total_in_bytes": 50647003136,
           "free_in_bytes": 39121285120,
           "available_in_bytes": 36850778112,
           "disk_reads": 6555,
           "disk_writes": 3959,
           "disk_io_op": 10514,
           "disk_read_size_in_bytes": 117785600,
           "disk_write_size_in_bytes": 34197504,
           "disk_io_size_in_bytes": 151983104,
           "disk_queue": "0",
           "disk_service_time": "0"
        },
        "data": [
           {
              "path": "/data/cluster-name/nodes/0",
              "mount": "/",
              "dev": "/dev/sda1",
              "type": "ext4",
              "total_in_bytes": 50647003136,
              "free_in_bytes": 39121285120,
              "available_in_bytes": 36850778112,
              "disk_reads": 6555,
              "disk_writes": 3959,
              "disk_io_op": 10514,
              "disk_read_size_in_bytes": 117785600,
              "disk_write_size_in_bytes": 34197504,
              "disk_io_size_in_bytes": 151983104,
              "disk_queue": "0",
              "disk_service_time": "0"
           }
        ]
     },

_nodes/stats (AFTER)

"fs": {
        "timestamp": 1445876141872,
        "total": {
           "total_in_bytes": 940360904704,
           "free_in_bytes": 649207984128,
           "available_in_bytes": 626626637824,
           "disk_reads": 8840,
           "disk_writes": 246,
           "disk_io_op": 9086,
           "disk_read_size_in_bytes": 127649792,
           "disk_write_size_in_bytes": 13971456,
           "disk_io_size_in_bytes": 141621248,
           "disk_queue": "0",
           "disk_service_time": "0"
        },
        "data": [
           {
              "path": "/data/cluster-name/nodes/0",
              "mount": "/",
              "dev": "/dev/vda1",
              "type": "ext4",
              "total_in_bytes": 422616936448,
              "free_in_bytes": 131537268736,
              "available_in_bytes": 114234032128,
              "disk_reads": 8524,
              "disk_writes": 232,
              "disk_io_op": 8756,
              "disk_read_size_in_bytes": 126358528,
              "disk_write_size_in_bytes": 13914112,
              "disk_io_size_in_bytes": 140272640,
              "disk_queue": "0",
              "disk_service_time": "0"
           },
           {
              "path": "/data-new/cluster-name/nodes/0",
              "mount": "/data-new",
              "dev": "/dev/mapper/vg0-lvol0",
              "type": "ext4",
              "total_in_bytes": 517743968256,
              "free_in_bytes": 517670715392,
              "available_in_bytes": 512392605696,
              "disk_reads": 316,
              "disk_writes": 14,
              "disk_io_op": 330,
              "disk_read_size_in_bytes": 1291264,
              "disk_write_size_in_bytes": 57344,
              "disk_io_size_in_bytes": 1348608
           }
        ]
     },
4

1 に答える 1

0

これは、Elasticsearch にデータ パスを追加するときに、すべてのパスにデータをストライピングするように指示しているように、すべてを使用するように指示していないためです。したがって、使用できる新しいプールのように考えずに、Raid-0 として考えてください。

1 つ以上のレプリケーションを持つクラスターがあり、新しいパスを追加するために 1 つのノードを停止した場合、クラスターはそのノードのすべてのデータを破棄し、両方のパスにストライピングされたすべてのデータを再作成します。

于 2016-02-22T09:59:52.940 に答える