Z uporabo panela elasticsearch-head za povezavo s Elasticsearch(ES) sem naletel na naslednjo napako:
Zdravje skupine: rdeče (24 od 31)
Za pregled informacij o statusu obiščite:Prijava do hiperpovezave je vidna.
{ "cluster_name" : "elasticsearch", "status": "rdeča", "timed_out": napačno, "number_of_nodes" : 1, "number_of_data_nodes" : 1, "active_primary_shards" : 24, "active_shards": 24, "relocating_shards" : 0, "initializing_shards" : 0, "unassigned_shards" : 7, "delayed_unassigned_shards" : 0, "number_of_pending_tasks" : 0, "number_of_in_flight_fetch" : 0, "task_max_waiting_in_queue_millis" : 0, "active_shards_percent_as_number" : 77.41935483870968
} "status" : "rdeči"Status je Prazno
Glavni vtičnik bo prikazan v različnih barvah
1) Zelena – najbolj zdravo stanje, kar pomeni, da so na voljo vsi primarni in replikni delci; 2) Rumena – vsi primarni delci so na voljo, vendar nekateri replika delcev niso na voljo; 3) Rdeči - Nekateri primarni delci niso na voljo. (Trenutno je mogoče med izvajanjem poizvedbe še vedno najti nekaj podatkov, zato je bolje, da jo hitro rešite.) )
Za ogled statusa indeksa dostopajte:Prijava do hiperpovezave je vidna.
.monitoring-es-6-2021.01.22 0 p NEDODELJENO ALLOCATION_FAILED Kaj je nedodeljeni sharding?
Razlaga v enem stavku: Nedodeljeni delci. Ko zaženeš ES, boš opazil, da se gručiški koščki pojavijo vijolično, sivo in na koncu zeleno po stalnem osveževanju preko vtičnika Head.
Zakaj pride do nedodeljenega shardinga?
Če na primer ne morete dodeliti drobcev, ste preveč razporedili število replika delcev glede na število vozlišč v gruči, odlomki ostanejo NEDODELJENI. Koda napake je: ALLOCATION_FAILED.
Možni vzroki za težave z nedodeljenim shardingom?
1) INDEX_CREATED: Ni dodeljena zaradi API-ja, ki je ustvaril indeks. 2) CLUSTER_RECOVERED: Ni dodeljena zaradi popolnega okrevanja grozda. 3) INDEX_REOPENED: Ni dodeljena zaradi odprtja, odprtja ali zapiranja indeksa. 4) DANGLING_INDEX_IMPORTED: Ni dodeljena zaradi posledic uvoza visečega indeksa. 5) NEW_INDEX_RESTORED: Ni dodeljena zaradi vrnitve na nov indeks. 6) EXISTING_INDEX_RESTORED: Ni dodeljena zaradi vrnitve na zaprti indeks. 7) REPLICA_ADDED: Ni dodeljena zaradi eksplicitnega dodajanja replik delcev. 8) ALLOCATION_FAILED: Ni dodeljena zaradi okvare dodeljevanja delcev. 9) NODE_LEFT: Vozlišče, ki nosi drobec, zapusti grozd in ni dodeljeno. 10) PONOVNA inicializacija: Zaradi nedodeljenih delcev pri prehodu iz začetka v inicializacijo (npr. razdeljevanje s kopijami senčnih senc). 11) REROUTE_CANCELLED: Deallocate kot rezultat izrecnega ukaza unresail. 12) REALLOCATED_REPLICA: Določite, da je boljša lokacija replike kalibrirana za uporabo, kar vodi v preklic obstoječe dodelitve kopij in njeno oddodelitev.
Prijavite se na strežnik in si oglejte dnevnike Elasticsearch (ES) na naslednji način:
Elasticsearch izpiše veliko dnevnikov, vse v mapi ES_HOME/logs. Privzeta raven beleženja je INFO. Nudi zmerne informacije, vendar je zasnovan tako, da ne preobremeni vaših dnevnikov. Prijava do hiperpovezave je vidna.
Obstaja veliko število napak, kot so:
[2021-01-21T03:33:26,435] [OPOZORILO] [o.e.x.m.e.l.LocalExporter] [A_OefhJ] nepričakovana napaka med indeksiranjem monitorjevega dokumenta
org.elasticsearch.xpack.monitoring.exporter.ExportException: ClusterBlockException[blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];] at org.elasticsearch.xpack.monitoring.exporter.local.LocalBulk.lambda$throwExportException$2(LocalBulk.java:128) ~[?:?] at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) ~[?:1.8.0_222] at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175) ~[?:1.8.0_222] at java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:948) ~[?:1.8.0_222] at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:482) ~[?:1.8.0_222] at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472) ~[?:1.8.0_222] at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150) ~[?:1.8.0_222] at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173) ~[?:1.8.0_222] at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:1.8.0_222] at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:485) ~[?:1.8.0_222] at org.elasticsearch.xpack.monitoring.exporter.local.LocalBulk.throwExportException(LocalBulk.java:129) ~[?:?] at org.elasticsearch.xpack.monitoring.exporter.local.LocalBulk.lambda$doFlush$0(LocalBulk.java:111) ~[?:?] at org.elasticsearch.action.ActionListener$1.onResponse(ActionListener.java:60) ~[elasticsearch-6.5.2.jar:6.5.2] na org.elasticsearch.action.support.ContextPreservingActionListener.onResponse(ContextPreservingActionListener.java:43) ~[elasticsearch-6.5.2.jar:6.5.2] na org.elasticsearch.action.support.TransportAction$1.onResponse(TransportAction.java:85) ~[elasticsearch-6.5.2.jar:6.5.2] na org.elasticsearch.action.support.TransportAction$1.onResponse(TransportAction.java:81) ~[elasticsearch-6.5.2.jar:6.5.2] at org.elasticsearch.action.bulk.TransportBulkAction$BulkRequestModifier.lambda$wrapActionListenerIfNeeded$0(TransportBulkAction.java:607) ~[elasticsearch-6.5.2.jar :6.5.2] at org.elasticsearch.action.ActionListener$1.onResponse(ActionListener.java:60) ~[elasticsearch-6.5.2.jar:6.5.2] at org.elasticsearch.action.bulk.TransportBulkAction$BulkOperation$1.finishHim(TransportBulkAction.java:414) ~[elasticsearch-6.5.2.jar:6.5.2] na org.elasticsearch.action.bulk.TransportBulkAction$BulkOperation$1.onFailure(TransportBulkAction.java:409) ~[elasticsearch-6.5.2.jar:6.5.2] na org.elasticsearch.action.support.TransportAction$1.onFailure(TransportAction.java:91) ~[elasticsearch-6.5.2.jar:6.5.2] at org.elasticsearch.action.support.replication.TransportReplicationAction$ReroutePhase.finishAsFailed(TransportReplicationAction.java:901) ~[elasticsearch-6.5.2.jar :6.5.2] at org.elasticsearch.action.support.replication.TransportReplicationAction$ReroutePhase.handleBlockException(TransportReplicationAction.java:824) ~[ elasticsearch-6.5.2.jar:6.5.2] at org.elasticsearch.action.support.replication.TransportReplicationAction$ReroutePhase.handleBlockExceptions(TransportReplicationAction.java:812) ~[ elasticsearch-6.5.2.jar:6.5.2] at org.elasticsearch.action.support.replication.TransportReplicationAction$ReroutePhase.doRun(TransportReplicationAction.java:710) ~[elasticsearch-6.5.2.jar:6.5.2] na org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:37) ~[elasticsearch-6.5.2.jar:6.5.2] at org.elasticsearch.action.support.replication.TransportReplicationAction.doExecute(TransportReplicationAction.java:169) ~[elasticsearch-6.5.2.jar:6.5.2] na org.elasticsearch.action.support.replication.TransportReplicationAction.doExecute(TransportReplicationAction.java:97) ~[elasticsearch-6.5.2.jar:6.5.2] na org.elasticsearch.action.support.TransportAction$RequestFilterChain.proceed(TransportAction.java:167) ~[elasticsearch-6.5.2.jar:6.5.2] at org.elasticsearch.xpack.security.action.filter.SecurityActionFilter.apply(SecurityActionFilter.java:126) ~[?:?] at org.elasticsearch.action.support.TransportAction$RequestFilterChain.proceed(TransportAction.java:165) ~[elasticsearch-6.5.2.jar:6.5.2] at org.elasticsearch.action.support.TransportAction.execute(TransportAction.java:139) ~[elasticsearch-6.5.2.jar:6.5.2] na org.elasticsearch.action.support.TransportAction.execute(TransportAction.java:81) ~[elasticsearch-6.5.2.jar:6.5.2] na org.elasticsearch.action.bulk.TransportBulkAction$BulkOperation.doRun(TransportBulkAction.java:384) ~[elasticsearch-6.5.2.jar:6.5.2] na org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:37) ~[elasticsearch-6.5.2.jar:6.5.2] na org.elasticsearch.action.bulk.TransportBulkAction.executeBulk(TransportBulkAction.java:496) ~[elasticsearch-6.5.2.jar:6.5.2] na org.elasticsearch.action.bulk.TransportBulkAction.executeIngestAndBulk(TransportBulkAction.java:243) ~[elasticsearch-6.5.2.jar:6.5.2] at org.elasticsearch.action.bulk.TransportBulkAction.doExecute(TransportBulkAction.java:169) ~[elasticsearch-6.5.2.jar:6.5.2] at org.elasticsearch.action.bulk.TransportBulkAction.lambda$processBulkIndexIngestRequest$4(TransportBulkAction.java:549) ~[elasticsearch-6.5.2.jar:6.5.2] at org.elasticsearch.ingest.IngestService$4.doRun(IngestService.java:417) [elasticsearch-6.5.2.jar:6.5.2] na org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingAbstractRunnable.doRun(ThreadContext.java:723) [elasticsearch-6.5.2.jar:6.5.2] na org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:37) [elasticsearch-6.5.2.jar:6.5.2] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_222] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_222] at java.lang.Thread.run(Thread.java:748) [?:1.8.0_222] Vzrok: org.elasticsearch.cluster.block.ClusterBlockException: blokiran z: [FORBIDDEN/12/index read-only / allow delete (api)]; na org.elasticsearch.cluster.block.ClusterBlocks.indexBlockedException(ClusterBlocks.java:183) ~[elasticsearch-6.5.2.jar:6.5.2] at org.elasticsearch.action.support.replication.TransportReplicationAction$ReroutePhase.handleBlockExceptions(TransportReplicationAction.java:810) ~[ elasticsearch-6.5.2.jar:6.5.2] ... Še 21
Po analizi so ugotovili, da je razlogProstor na disku strežnika, kjer se nahaja ES, je prenizek, ko je kateri koli indeks z enim ali več drobci dodeljen vozlišču na disku, ki shranjuje več kot 95 % podatkov, bo indeks prisiljen preklopiti v način samo za branje.
Oglejte si vse informacije o nastavitvah indeksa, ki jih je treba obiskati:Prijava do hiperpovezave je vidna., kot je prikazano na spodnji sliki:
"znanje" : { "settings" : { "index" : { "number_of_shards" : "3", "bloki" : { "read_only_allow_delete" : "res" }, "provided_name" : "znanje", "creation_date" : "1576206251443", "number_of_replicas" : "0", "uuid": "yeSIP_otQo6JQ8ooRdr8hA", "version" : { "ustvaril" : "6050299" } } } } read_only_allow_deleteKo je ta atribut resničen, ES indeks dovoljuje le branje in brisanje podatkov ter ne dovoljuje dodajanja ali spreminjanja podatkov
rešitev
Ko rešite težavo z diskom, razširite ali izbrišite neželene datoteke, sledite spodnjemu vodiču.
Nastavi read_only_allow_delete na false
Pošlji zahtevo za prodajo z uporabo elasticsearch-head:Prijava do hiperpovezave je vidna., kot je prikazano na spodnji sliki:
To še vedno ne more odpraviti Redovega zdravstvenega stanja,Podatke ".monitoring-es-6-*" izbrišite neposredno, stanje postane zdravo, kot je prikazano na spodnji sliki:
(Konec)
|