Läbivaatamine:
Kasuta järgmist käsku, et kontrollida Kafka töötamise olekut. Järgmiselt:
kafka.service Laaditud: laaditud (/usr/lib/systemd/system/system/kafka.service; Lubatud; tootja eelse seadistus: keelatud) Aktiivne: ebaõnnestunud (Tulemus: väljumiskood) alates kolmapäev 2021-09-22 14:43:11 CST; 1 tund 43 minutit tagasi Protsess: 7363 ExecStart=/usr/local/kafka/bin/kafka-server-start.sh /usr/local/kafka/config/server.properties (code=exited, status=1/FAILURE) Peamine PID: 7363 (kood=väljutud, staatus=1/RIKE)
22. sep 14:43:11 devops02 kafka-server-start.sh[7363]: [2021-09-22 14:43:11,295] HOIATUS [ReplicaManager broker=1] Replikade teenindamise peatamine dir /tmp/kafka-logs ( kafka.server.ReplicaManager) 22. sep 14:43:11 devops02 kafka-server-start.sh[7363]: [2021-09-22 14:43:11,298] HOIATUS [Grupikoordinaator 1]: Tühja metaandmete kirjutamine grupi jaoks KqBatchAna: See ei ole õige Koordinaator. (kafka.co... upCoordinator) 22. sep 14:43:11 devops02 kafka-server-start.sh[7363]: [2021-09-22 14:43:11,303] INFO [ReplicaFetcherManager maakleril 1] Eemaldatud fetcher partitsioonide jaoks HashSet(__consumer_offsets-22, __ consumer_offsets-30, ...-8, __consumer Sep 22 14:43:11 devops02 kafka-server-start.sh[7363]: [2021-09-22 14:43:11,304] INFO [ReplicaAlterLogDirsManager on broker 1] Eemaldatud fetcher partitsioonide jaoks HashSet(__consumer_ nihked-22, __consumer_offsets... FSETS-8, __con 22. sep 14:43:11 devops02 kafka-server-start.sh[7363]: [2021-09-22 14:43:11,378] HOIATUS [ReplicaManager broker=1] Maakler 1 peatas toomise partitsioonide jaoks __consumer_offsets-22,__ consumer_offsets-30,__consumer_... fsets-21,__con 22. sept 14:43:11 devops02 kafka-server-start.sh[7363]: [2021-09-22 14:43:11,379] HOIATUS Logide teenindamise peatamine dir /tmp/kafka-logs (kafka.log.LogManager) 22. sept 14:43:11 devops02 kafka-server-start.sh[7363]: [2021-09-22 14:43:11,386] VIGA Maakler sulges, sest kõik logisuunad /tmp/kafka-logs on ebaõnnestunud (kafka.log.LogManager) 22. sep 14:43:11 devops02 systemd[1]: kafka.service: peamine protsess lõpetatud, code=exited, status=1/FAILURE 22. sept 14:43:11 devops02 systemd[1]: Üksus kafka.service sisenes rikke seisundisse. 22. sep 14:43:11 devops02 systemd[1]: kafka.service failed.
Hint: Some lines were ellipsized, use -l to show in full.
Mine Kafka logikausta /usr/local/kafka/logs, et vaadata server.log logifaile järgmiselt:
[2021-09-22 14:43:11,286] ERROR Error logisegmenti rullimisel __consumer_offsets-8 jaoks dir /tmp/kafka-logs (kafka.server.LogDirFailureChannel)
java.io.FileNotFoundException: /tmp/kafka-logs/__consumer_offsets-8/00000000000000000000.index (No such file or directory) aadressil java.io.RandomAccessFile.open0 (Natiivse meetod) aadressil java.io.RandomAccessFile.open(RandomAccessFile.java:316) aadressil java.io.RandomAccessFile. <init>(RandomAccessFile.java:243) aadressil kafka.log.AbstractIndex.$anonfun$resize$1(AbstractIndex.scala:182) aadressil kafka.log.AbstractIndex.resize(AbstractIndex.scala:175) aadressil kafka.log.AbstractIndex.$anonfun$trimToValidSize$1(AbstractIndex.scala:241) aadressil kafka.log.AbstractIndex.trimToValidSize(AbstractIndex.scala:241) aadressil kafka.log.LogSegment.onBecomeInactiveSegment(LogSegment.scala:507) aadressil kafka.log.Log.$anonfun$roll$8(Log.scala:2037) at kafka.log.Log.$anonfun$roll$8$adapted(Log.scala:2037) Scalal. Option.foreach(Option.scala:437) aadressil kafka.log.Log.$anonfun$roll$2(Log.scala:2037) aadressil kafka.log.Log.roll (Log.scala:2453) aadressil kafka.log.Log.maybeRoll(Log.scala:1988) aadressil kafka.log.Log.append(Log.scala:1263) aadressil kafka.log.Log.appendAsLeader(Log.scala:1112) aadressil kafka.cluster.Partition.$anonfun$appendRecordsToLeader$1(Partition.scala:1069) aadressil kafka.cluster.Partition.appendRecordsToLeader(Partition.scala:1057) at kafka.server.ReplicaManager.$anonfun$appendToLocalLog$6(ReplicaManager.scala:958) aadressil scala.collection.Iterator$$anon$9.next(Iterator.scala:575) aadressil scala.collection.mutable.Growable.addAll(Growable.scala:62) aadressil scala.collection.mutable.Growable.addAll$(Growable.scala:57) aadressil scala.collection.immutable.MapBuilderImpl.addAll(Map.scala:692) aadressil scala.collection.immutable.Map$.from(Map.scala:643) aadressil scala.collection.immutable.Map$.from(Map.scala:173) aadressil scala.collection.MapOps.map (Map.scala:266) aadressil scala.collection.MapOps.map$(Map.scala:266) aadressil scala.collection.AbstractMap.map (Map.scala:372) aadressil kafka.server.ReplicaManager.appendToLocalLog(ReplicaManager.scala:946) at kafka.server.ReplicaManager.appendRecords(ReplicaManager.scala:616) aadressil kafka.coordinator.group.GroupMetadataManager.storeGroup(GroupMetadataManager.scala:325) aadressil kafka.coordinator.group.GroupCoordinator.$anonfun$onCompleteJoin$1(GroupCoordinator.scala:1206) aadressil kafka.coordinator.group.GroupMetadata.inLock(GroupMetadata.scala:227) aadressil kafka.coordinator.group.GroupCoordinator.onCompleteJoin(GroupCoordinator.scala:1178) aadressil kafka.coordinator.group.DelayedJoin.onComplete(DelayedJoin.scala:43) aadressil kafka.server.DelayedOperation.forceComplete(DelayedOperation.scala:72) aadressil kafka.coordinator.group.DelayedJoin.$anonfun$tryComplete$1(DelayedJoin.scala:38) aadressil kafka.coordinator.group.GroupCoordinator.$anonfun$tryCompleteJoin$1(GroupCoordinator.scala:1172) aadressil scala.runtime.java8.JFunction0$mcZ$sp.apply(JFunction0$mcZ$sp.scala:17) aadressil kafka.coordinator.group.GroupMetadata.inLock(GroupMetadata.scala:227) aadressil kafka.coordinator.group.GroupCoordinator.tryCompleteJoin(GroupCoordinator.scala:1171) aadressil kafka.coordinator.group.DelayedJoin.tryComplete(DelayedJoin.scala:38) aadressil kafka.server.DelayedOperation.safeTryCompleteOrElse(DelayedOperation.scala:110) aadressil kafka.server.DelayedOperationPurgatory.tryCompleteElseWatch(DelayedOperation.scala:234) aadressil kafka.coordinator.group.GroupCoordinator.prepareRebalance(GroupCoordinator.scala:1144) aadressil kafka.coordinator.group.GroupCoordinator.$anonfun$maybePrepareRebalance$1(GroupCoordinator.scala:1118) aadressil scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.scala:18) aadressil kafka.coordinator.group.GroupMetadata.inLock(GroupMetadata.scala:227) aadressil kafka.coordinator.group.GroupCoordinator.maybePrepareRebalance(GroupCoordinator.scala:1117) aadressil kafka.coordinator.group.GroupCoordinator.removeMemberAndUpdateGroup(GroupCoordinator.scala:1156) aadressil kafka.coordinator.group.GroupCoordinator.$anonfun$handleLeaveGroup$3(GroupCoordinator.scala:498) aadressil scala.collection.immutable.List.map (List.scala:246) aadressil kafka.coordinator.group.GroupCoordinator.$anonfun$handleLeaveGroup$2(GroupCoordinator.scala:470) aadressil scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.scala:18) aadressil kafka.coordinator.group.GroupMetadata.inLock(GroupMetadata.scala:227) aadressil kafka.coordinator.group.GroupCoordinator.handleLeaveGroup(GroupCoordinator.scala:467) aadressil kafka.server.KafkaApis.handleLeaveGroupRequest(KafkaApis.scala:1659) aadressil kafka.server.KafkaApis.handle(KafkaApis.scala:180) aadressil kafka.server.KafkaRequestHandler.run(KafkaRequestHandler.scala:74) aadressil java.lang.Thread.run(Thread.java:748) Viga põhjustab:Linux puhastab regulaarselt faile /tmp kataloogis, Kafka failikataloog salvestatakse vaikimisi/tmp/kafka-logskataloogi, mis põhjustas selle regulaarse puhastamise, mis põhjustas ebanormaalse programmi töö.
CentOS 7 all on kolm süsteemiteenust, mis on seotud puhastusega:
systemd-tmpfiles-setup.service :loo volatiilsed failid ja kataloogid systemd-tmpfiles-setup-dev.service: Loo staatilised seadmesõlmed /dev systemd-tmpfiles-clean.service :Ajutiste kataloogide puhastamine Lisaks on olemas 3 seotud profiili, järgmised:
/etc/tmpfiles.d/*.conf
/run/tmpfiles.d/*.conf
/usr/lib/tmpfiles.d/*.conf Kasuta järgmist käsku, et vaadata tmpfile'iga seotud logisid:
TMP kataloog/usr/lib/tmpfiles.d/tmp.confFaili konfiguratsioon on näidatud järgmisel joonisel:
# See fail on osa systemd-st.
# # systemd on vaba tarkvara; Sa võid seda ümber jagada ja/või muuta # vastavalt GNU Lesser General Public License'i tingimustele, mille avaldas # Vaba Tarkvara Sihtasutus; kas litsentsi versioon 2.1, või # (sinu valikul) ükskõik milline hilisem versioon.
# Vaata tmpfiles.d(5) üksikasju
# Puhasta TMP kataloogid eraldi, et neid oleks lihtsam üle kirjutada V /TMP 1777 juurjuur 10d v /var/tmp 1777 juurjuur 30d
# Välista nimeruumi kinnituspunktid, mis on loodud PrivateTmp=yes x /tmp/systemd-private-%b-* X /tmp/systemd-private-%b-*/tmp x /var/tmp/systemd-private-%b-* X /var/tmp/systemd-private-%b-*/tmp
Lahendus 1
Muuda Kafka konfiguratsioonifaili /config/server.properties, et muuta log.dirs konfiguratsiooni, näiteks:
Lahendus 2
Lisa välistuskaust ja muuda faili: /usr/lib/tmpfiles.d/tmp.conf
(Lõpp)
|