webentwicklung-frage-antwort-db.com.de

ElasticSearch findet Speicherplatznutzung

Wie kann ich den Speicherplatz ermitteln, den die elastische Suche für meine Indizes verwendet? Ich führe es derzeit lokal aus und versuche zu sehen, wie viel Speicherplatz ich auf dem VM benötige, den ich hochfahre.

40
Nived

Die Methode von Elasticsearch wäre, _cat/shards zu verwenden und sich die Spalte store anzusehen:

curl -XGET "http://localhost:9200/_cat/shards?v"

index              shard prirep state     docs   store ip            node
myindex_2014_12_19 2     r      STARTED  76661 415.6mb 192.168.1.1 Georgianna Castleberry
myindex_2014_12_19 2     p      STARTED  76661 417.3mb 192.168.1.2 Frederick Slade
myindex_2014_12_19 2     r      STARTED  76661 416.9mb 192.168.1.3 Maverick
myindex_2014_12_19 0     r      STARTED  76984 525.9mb 192.168.1.1 Georgianna Castleberry
myindex_2014_12_19 0     r      STARTED  76984   527mb 192.168.1.2 Frederick Slade
myindex_2014_12_19 0     p      STARTED  76984   526mb 192.168.1.3 Maverick
myindex_2014_12_19 3     r      STARTED    163 208.5kb 192.168.1.1 Georgianna Castleberry
myindex_2014_12_19 3     p      STARTED    163 191.4kb 192.168.1.2 Frederick Slade
myindex_2014_12_19 3     r      STARTED    163 181.6kb 192.168.1.3 Maverick
myindex_2014_12_19 1     p      STARTED 424923   2.1gb 192.168.1.1 Georgianna Castleberry
myindex_2014_12_19 1     r      STARTED 424923   2.1gb 192.168.1.2 Frederick Slade
myindex_2014_12_19 1     r      STARTED 424923   2.1gb 192.168.1.3 Maverick
myindex_2014_12_19 4     r      STARTED  81020 435.9mb 192.168.1.1 Georgianna Castleberry
myindex_2014_12_19 4     p      STARTED  81020 437.8mb 192.168.1.2 Frederick Slade
myindex_2014_12_19 4     r      STARTED  81020 437.8mb 192.168.1.3 Maverick

Andernfalls in Linux zur Anzeige des Speicherplatzes nach Ordner verwenden:

du -hs /myelasticsearch/data/folder

oder um den Speicherplatz nach Dateisystem anzuzeigen:

df -h 
46

Falls Sie keine per-shard-Statistiken benötigen, die von /_cat/shards zurückgegeben werden, können Sie diese verwenden

curl -XGET localhost:9200/_cat/allocation?v

zu verwenden und verfügbaren Speicherplatz für jeden Knoten.

27
marat

sie können die Knotenstatistiken-API für Knoten verwenden
siehe: https://www.elastic.co/guide/de/elasticsearch/reference/1.6/cluster-nodes-stats.html

fordern Sie die fs-Statistiken wie folgt an: http: //: 9200/_nodes/stats/fs? pretty = 1 

und du wirst sehen:

{
  "cluster_name" : "<cluster>",
  "nodes" : {
    "pEO34wutR7qk3Ix8N7MgyA" : {
      "timestamp" : 1438880525206,
      "name" : "<name>",
      "transport_address" : "inet[/10.128.37.111:9300]",
      "Host" : "<Host>",
      "ip" : [ "inet[/10.128.37.111:9300]", "NONE" ],
      "fs" : {
        "timestamp" : 1438880525206,
        "total" : {
          "total_in_bytes" : 363667091456,
          "free_in_bytes" : 185081352192,
          "available_in_bytes" : 166608117760,
          "disk_reads" : 154891,
          "disk_writes" : 482628039,
          "disk_io_op" : 482782930,
          "disk_read_size_in_bytes" : 6070391808,
          "disk_write_size_in_bytes" : 1989713248256,
          "disk_io_size_in_bytes" : 1995783640064,
          "disk_queue" : "0",
          "disk_service_time" : "0"
        },
        "data" : [ {
          "path" : "/data1/elasticsearch/data/<cluster>/nodes/0",
          "mount" : "/data1",
          "dev" : "/dev/sda4",
          "total_in_bytes" : 363667091456,
          "free_in_bytes" : 185081352192,
          "available_in_bytes" : 166608117760,
          "disk_reads" : 154891,
          "disk_writes" : 482628039,
          "disk_io_op" : 482782930,
          "disk_read_size_in_bytes" : 6070391808,
          "disk_write_size_in_bytes" : 1989713248256,
          "disk_io_size_in_bytes" : 1995783640064,
          "disk_queue" : "0",
          "disk_service_time" : "0"
        } ]
      }
    }
  }
}

der Speicherplatz für das Datenlaufwerk wird aufgelistet:

"total" : {
    "total_in_bytes" : 363667091456,
    "free_in_bytes" : 185081352192,
    "available_in_bytes" : 166608117760,
13
scaph01

Um die gesamte Festplattennutzung/den verfügbaren Speicherplatz in ES-Cluster anzuzeigen, können Sie den folgenden Befehl verwenden:

curl -XGET 'localhost:9200/_cat/allocation?v&pretty'

Hoffe das hilft.

9
user1432155

Möglicherweise möchten Sie die _cat-API für die Speicherplatznutzung auf der Festplatte verwenden 

curl http://Host:9200/_cat/nodes?h=h,diskAvail

Referenz: https://www.elastic.co/guide/de/elasticsearch/reference/current/cat-nodes.html

5

Eine genauere Lösung zum Ermitteln der Größe von Indizes ist die Verwendung von

curl -XGET 'localhost:9200/_cat/indices?v'

Die Ausgabe hat eine Spalte 'store.size', die Ihnen die Größe eines Index genau angibt.

health status index                           uuid                   pri rep docs.count docs.deleted store.size pri.store.size
yellow open   logstash-2017.03.01             TfraFM8TQkSXdxjx13CnpQ   5   1   33330000            0        1gb            1gb
yellow open   .monitoring-es-2-2017.03.02     10YscrcfQuGny5wMxeb0TA   1   1      68834           88     30.3mb         30.3mb
yellow open   .kibana                         GE6xXV7QT-mNbX7xTPbZ4Q   1   1          3            0     14.5kb         14.5kb
yellow open   .monitoring-es-2-2017.03.01     SPeQNnPlRB6y7G6w1Axokw   1   1      29441          108     14.7mb         14.7mb
yellow open   .monitoring-data-2              LLeWqsD-QE-rPFblwu5K_Q   1   1          3            0      6.9kb          6.9kb
yellow open   .monitoring-kibana-2-2017.03.02 l_MAPERUTmSbq0xbhpnf2Q   1   1       5320            0      1.1mb          1.1mb
yellow open   .monitoring-kibana-2-2017.03.01 UFVg9c7TTA-nbsEd2d4oFw   1   1       2699            0    763.4kb        763.4kb

Darüber hinaus können Sie mit den verfügbaren Speicherplatz herausfinden

curl -XGET 'localhost:9200/_nodes/_local/stats/fs'

Suchen Sie die Informationen zum Festplattenspeicherplatz unter der Taste 'fs'

{
  "_nodes": {
    "total": 1,
    "successful": 1,
    "failed": 0
  },
  "cluster_name": "elasticsearch",
  "nodes": {
    "MfgVaoRQT9iRAZtAvO549Q": {
      "fs": {
        "timestamp": 1488466297268,
        "total": {
          "total_in_bytes": 29475753984,
          "free_in_bytes": 18352095232,
          "available_in_bytes": 18352095232
        },
      }
    }
  }
}

Ich habe dies für ElasticSearch Version 5.2.1 getestet

5
thekenobe

Sie können die Festplatte auch direkt abfragen, um den Speicherplatz für jedes Verzeichnis unter/var/lib/elasticsearch/[Umgebungsname]/node/0/indices auf Elasticsearch-Knoten zu messen.

$ du -b --max-depth=1 /var/lib/elasticsearch/[environment name]/nodes/0/indices | sort -rn | numfmt --to=iec --suffix=B --padding=5

17DE /var/lib/elasticsearch/env1/nodes/0/indices 3.8DE /var/lib/elasticsearch/env1/nodes/0/indices/index1 2.1DE /var/lib/elasticsearch/env1/nodes/0/indices/index2 1,2 GB ...

0
vishwarajanand