Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 10663|Răspunde: 2

Sub CentOS 7, Kafka închide adesea soluțiile

[Copiază linkul]
Postat pe 22.09.2021 17:31:38 | | | |
Recenzie:

Sistemul Kafka Windows se va bloca după ce a funcționat o perioadă de timp
https://www.itsvse.com/thread-9984-1-1.html

Windows Kafka ERROR Nu a reușit să curețe jurnalul pentru __consumer_offsets
https://www.itsvse.com/thread-9980-1-1.html

Folosește următoarea comandă pentru a verifica starea de rulare a lui Kafka. Așa cum urmează:

kafka.service
   Încărcat: încărcat (/usr/lib/systemd/system/kafka.service; Activat; presetare vânzător: dezactivat)
   Activ: eșuat (Rezultat: cod de ieșire) din miercuri 2021-09-22 14:43:11 CST; Acum 1h 43 min
  Proces: 7363 ExecStart=/usr/local/kafka/bin/kafka-server-start.sh /usr/local/kafka/config/server.properties (code=exited, status=1/FAILURE)
PID principal: 7363 (cod=ieșit, status=1/DEFECT)

22 septembrie 14:43:11 devops02 kafka-server-start.sh[7363]: [2021-09-22 14:43:11,295] AVERTISMENT [ReplicaManager broker=1] Oprirea servirii replicilor în dir/tmp/kafka-logs ( kafka.server.ReplicaManager)
22 septembrie 14:43:11 devops02 kafka-server-start.sh[7363]: [2021-09-22 14:43:11,298] AVERTISMENT [GroupCoordinator 1]: Nu s-a scris metadate goale pentru grupul KqBatchAna: Aceasta nu este corectă Coordonator. (kafka.co... upCoordinator)
22 septembrie 14:43:11 devops02 kafka-server-start.sh[7363]: [2021-09-22 14:43:11,303] INFO [ReplicaFetcherManager pe brokerul 1] A fost eliminat fetcher-ul pentru partițiile HashSet(__consumer_offsets-22, __ consumer_offsets-30, ...-8, __consumer
22 septembrie 14:43:11 devops02 kafka-server-start.sh[7363]: [2021-09-22 14:43:11,304] INFO [ReplicaAlterLogDirsManager pe brokerul 1] A eliminat fetcher-ul pentru partițiile HashSet(__consumer_ offsets-22, __consumer_offsets... fsets-8, __con
22 septembrie 14:43:11 devops02 kafka-server-start.sh[7363]: [2021-09-22 14:43:11,378] WARN [ReplicaManager broker=1] Brokerul 1 a oprit preluarea partițiilor __consumer_offsets-22,__ consumer_offsets-30.__consumer_... fsets-21,__con
22 septembrie 14:43:11 devops02 kafka-server-start.sh[7363]: [2021-09-22 14:43:11,379] AVERTISMENT Oprirea servirii jurnalelor în dir/tmp/kafka-logs (kafka.log.LogManager)
22 septembrie 14:43:11 devops02 kafka-server-start.sh[7363]: [2021-09-22 14:43:11,386] EROARE Broker de oprire pentru că toate direcțiile de log din /tmp/kafka-logs au eșuat (kafka.log.LogManager)
Sep 22 14:43:11 devops02 systemd[1]: kafka.service: process principal exited, code=exited, status=1/FAILURE
22 septembrie 14:43:11 devops02 systemd[1]: Unitatea kafka.service a intrat în stare de eșec.
22 septembrie 14:43:11 devops02 systemd[1]: kafka.service a eșuat.
Hint: Some lines were ellipsized, use -l to show in full.



Accesați directorul de jurnal Kafka /usr/local/kafka/logs pentru a vizualiza fișierele de jurnal server.log, după cum urmează:

[2021-09-22 14:43:11,286] EROARE: Eroare la rularea segmentului de log pentru __consumer_offsets-8 în dir/tmp/kafka-logs (kafka.server.LogDirFailureChannel)
java.io.FileNotFoundException: /tmp/kafka-logs/__consumer_offsets-8/00000000000000000000.index (No such file or directory)
        la java.io.RandomAccessFile.open0(Metoda nativă)
        la java.io.RandomAccessFile.open(RandomAccessFile.java:316)
        la java.io.RandomAccessFile. <init>(RandomAccessFile.java:243)
        la kafka.log.AbstractIndex.$anonfun$resize$1(AbstractIndex.scala:182)
        la kafka.log.AbstractIndex.resize(AbstractIndex.scala:175)
        la kafka.log.AbstractIndex.$anonfun$trimToValidSize$1(AbstractIndex.scala:241)
        la kafka.log.AbstractIndex.trimToValidSize(AbstractIndex.scala:241)
        la kafka.log.LogSegment.onBecomeInactiveSegment(LogSegment.scala:507)
        la kafka.log.Log.$anonfun$roll$8(Log.scala:2037)
        la kafka.log.Log.$anonfun$roll$8$adapted(Log.scala:2037)
        La Scala. Option.foreach(Option.scala:437)
        la kafka.log.Log.$anonfun$roll$2(Log.scala:2037)
        la kafka.log.Log.roll(Log.scala:2453)
        la kafka.log.Log.maybeRoll(Log.scala:1988)
        la kafka.log.Log.append(Log.scala:1263)
        la kafka.log.Log.appendAsLeader(Log.scala:1112)
        la kafka.cluster.Partition.$anonfun$appendRecordsToLeader$1(Partition.scala:1069)
        la kafka.cluster.Partition.appendRecordsToLeader(Partition.scala:1057)
        at kafka.server.ReplicaManager.$anonfun$appendToLocalLog$6(ReplicaManager.scala:958)
        la scala.collection.Iterator$$anon$9.next(Iterator.scala:575)
        la scala.collection.mutable.Growable.addAll(Growable.scala:62)
        la scala.collection.mutable.Growable.addAll$(Growable.scala:57)
        la scala.collection.immutable.MapBuilderImpl.addAll(Map.scala:692)
        la scala.collection.immutable.Map$.from(Map.scala:643)
        la scala.collection.immutable.Map$.from(Map.scala:173)
        la scala.collection.MapOps.map(Map.scala:266)
        la scala.collection.MapOps.map$(Map.scala:266)
        la scala.collection.AbstractMap.map(Map.scala:372)
        la kafka.server.ReplicaManager.appendToLocalLog(ReplicaManager.scala:946)
        la kafka.server.ReplicaManager.appendRecords(ReplicaManager.scala:616)
        la kafka.coordinator.group.GroupMetadataManager.storeGroup(GroupMetadataManager.scala:325)
        la kafka.coordinator.group.GroupCoordinator.$anonfun$onCompleteJoin$1(GroupCoordinator.scala:1206)
        la kafka.coordinator.group.GroupMetadata.inLock(GroupMetadata.scala:227)
        la kafka.coordinator.group.GroupCoordinator.onCompleteJoin(GroupCoordinator.scala:1178)
        la kafka.coordinator.group.DelayedJoin.onComplete(DelayedJoin.scala:43)
        la kafka.server.DelayedOperation.forceComplete(DelayedOperation.scala:72)
        la kafka.coordinator.group.DelayedJoin.$anonfun$tryComplete$1(DelayedJoin.scala:38)
        la kafka.coordinator.group.GroupCoordinator.$anonfun$tryCompleteJoin$1(GroupCoordinator.scala:1172)
        at scala.runtime.java8.JFunction0$mcZ$sp.apply(JFunction0$mcZ$sp.scala:17)
        la kafka.coordinator.group.GroupMetadata.inLock(GroupMetadata.scala:227)
        la kafka.coordinator.group.GroupCoordinator.tryCompleteJoin(GroupCoordinator.scala:1171)
        la kafka.coordinator.group.DelayedJoin.tryComplete(DelayedJoin.scala:38)
        la kafka.server.DelayedOperation.safeTryCompleteOrElse(DelayedOperation.scala:110)
        la kafka.server.DelayedOperationPurgatory.tryCompleteElseWatch(DelayedOperation.scala:234)
        la kafka.coordinator.group.GroupCoordinator.prepareRebalance(GroupCoordinator.scala:1144)
        la kafka.coordinator.group.GroupCoordinator.$anonfun$maybePrepareRebalance$1(GroupCoordinator.scala:118)
        at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.scala:18)
        la kafka.coordinator.group.GroupMetadata.inLock(GroupMetadata.scala:227)
        la kafka.coordinator.group.GroupCoordinator.maybePrepareRebalance(GroupCoordinator.scala:1117)
        la kafka.coordinator.group.GroupCoordinator.removeMemberAndUpdateGroup(GroupCoordinator.scala:1156)
        la kafka.coordinator.group.GroupCoordinator.$anonfun$handleLeaveGroup$3(GroupCoordinator.scala:498)
        la scala.collection.immutable.List.map(List.scala:246)
        la kafka.coordinator.group.GroupCoordinator.$anonfun$handleLeaveGroup$2(GroupCoordinator.scala:470)
        at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.scala:18)
        la kafka.coordinator.group.GroupMetadata.inLock(GroupMetadata.scala:227)
        la kafka.coordinator.group.GroupCoordinator.handleLeaveGroup(GroupCoordinator.scala:467)
        at kafka.server.KafkaApis.handleLeaveGroupRequest(KafkaApis.scala:1659)
        at kafka.server.KafkaApis.handle(KafkaApis.scala:180)
        at kafka.server.KafkaRequestHandler.run(KafkaRequestHandler.scala:74)
        la java.lang.Thread.run(Thread.java:748)

Cauzele erorii:Linux curăță regulat fișierele din directorul /tmp, directorul de fișiere Kafka este stocat implicit/tmp/kafka-logsceea ce a făcut ca acesta să fie curățat regulat, rezultând o funcționare anormală a programului.

Sub CentOS 7, există 3 servicii de sistem legate de curățare:

systemd-tmpfiles-setup.service :Creează fișiere și directoare volatile
systemd-tmpfiles-setup-dev.service:Creează noduri statice de dispozitive în /dev
systemd-tmpfiles-clean.service :Curățarea directoarelor temporare

Există, de asemenea, 3 profiluri conexe, după cum urmează:

/etc/tmpfiles.d/*.conf
/run/tmpfiles.d/*.conf
/usr/lib/tmpfiles.d/*.conf

Folosiți următoarea comandă pentru a vizualiza jurnalele legate de fișierele tmp:



Directorul TMP în/usr/lib/tmpfiles.d/tmp.confConfigurația fișierului este așa cum este prezentată în următoarea figură:

# Acest fișier face parte din systemd.
#
# systemd este software liber; Poți să o redistribui și/sau să o modifici
# conform termenilor GNU Lesser General Public License, așa cum au fost publicați de
# Fundația pentru Software Liber; fie versiunea 2.1 a Licenței, fie
# (la alegerea ta) Orice versiune ulterioară.

# Vezi tmpfiles.d(5) pentru detalii

# Șterge separat directoarele tmp, pentru a le suprascrie mai ușor
v /tmp 1777 rădăcină 10d
v /var/tmp 1777 rădăcină 30d

# Exclude mountpoint-urile din spațiul de nume create cu PrivateTmp=da
x /tmp/systemd-private-%b-*
X /tmp/systemd-private-%b-*/tmp
x /var/tmp/systemd-private-%b-*
X /var/tmp/systemd-private-%b-*/tmp



Soluția 1

Modifică fișierul de configurare al Kafka /config/server.properties pentru a modifica configurația log.dirs, de exemplu:



Soluția 2

Adaugă un director de excludere și editează fișierul: /usr/lib/tmpfiles.d/tmp.conf


(Sfârșit)




Precedent:CentOS 7 instalează mediul de rulare cu ASP.NET Core 3.1
Următor:Comanda nslookup introdusă pe scurt
Postat pe 22.09.2021 19:51:17 |
Vino și învață din nou。。。。。
 Proprietarul| Postat pe 07.02.2022 14:31:46 |
Aruncă o privire la comanda de jurnal de curățenie:


Feb 02 18:18:09 centos7-itsvse systemd[1]: Încep curățarea directoarelor temporare...
2 feb 18:18:09 centos7-itsvse systemd[1]: Am început curățarea directoarelor temporare.
Feb 03 18:19:09 centos7-itsvse systemd[1]: Încep curățarea directoarelor temporare...
03 feb 18:19:09 centos7-itsvse systemd[1]: Am început curățarea directoarelor temporare.
04 feb 18:20:09 centos7-itsvse systemd[1]: Încep curățarea directoarelor temporare...
04 feb 18:20:09 centos7-itsvse systemd[1]: Am început curățarea directoarelor temporare.
Feb 05 18:21:09 centos7-itsvse systemd[1]: Încep curățarea directoarelor temporare...
05 feb 18:21:09 centos7-itsvse systemd[1]: Am început curățarea directoarelor temporare.
6 feb 06 18:22:09 centos7-itsvse systemd[1]: Încep curățarea directoarelor temporare...
6 feb 18:22:09 centos7-itsvse systemd[1]: Am început curățarea directoarelor temporare.
Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com