Artikel ini adalah artikel cermin dari terjemahan mesin, silakan klik di sini untuk melompat ke artikel aslinya.

Melihat: 10663|Jawab: 2

Di bawah CentOS 7, Kafka sering menutup solusi

[Salin tautan]
Diposting pada 22/09/2021 17.31.38 | | | |
Resensi:

Sistem Kafka Windows akan menutup telepon setelah berjalan untuk jangka waktu tertentu
https://www.itsvse.com/thread-9984-1-1.html

KESALAHAN Windows Kafka Gagal membersihkan log untuk __consumer_offsets
https://www.itsvse.com/thread-9980-1-1.html

Gunakan perintah berikut untuk memeriksa status berjalan Kafka. Sebagai berikut:

kafka.service
   Dimuat: dimuat (/usr/lib/systemd/system/kafka.service; Diaktifkan; preset vendor: dinonaktifkan)
   Aktif: gagal (Hasil: kode keluar) sejak Wed 2021-09-22 14:43:11 CST; 1 jam 43 menit yang lalu
  Proses: 7363 ExecStart=/usr/local/kafka/bin/kafka-server-start.sh /usr/local/kafka/config/server.properties (code=exited, status=1/FAILURE)
PID Utama: 7363 (kode = keluar, status = 1 / KEGAGALAN)

Sep 22 14:43:11 devops02 kafka-server-start.sh[7363]: [2021-09-22 14:43:11,295] WARN [ReplicaManager broker=1] Menghentikan penyajian replika di dir /tmp/kafka-logs ( kafka.server.ReplicaManager)
Sep 22 14:43:11 devops02 kafka-server-start.sh[7363]: [2021-09-22 14:43:11,298] WARN [GroupCoordinator 1]: Gagal menulis metadata kosong untuk grup KqBatchAna: Ini bukan benar koordinator. (kafka.co... koordinator atas)
Sep 22 14:43:11 devops02 kafka-server-start.sh[7363]: [2021-09-22 14:43:11,303] INFO [ReplicaFetcherManager di broker 1] Menghapus fetcher untuk partisi 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 pada broker 1] Menghapus fetcher untuk partisi HashSet(__consumer_ offset-22, __consumer_offsets... FSET-8, __con
Sep 22 14:43:11 devops02 kafka-server-start.sh[7363]: [2021-09-22 14:43:11,378] WARN [ReplicaManager broker=1] Broker 1 menghentikan pengambilan untuk partisi __consumer_offsets-22,__ consumer_offsets-30,__consumer_... FSET-21,__con
Sep 22 14:43:11 devops02 kafka-server-start.sh[7363]: [2021-09-22 14:43:11,379] MEMPERINGATKAN Menghentikan penyajian log di dir /tmp/kafka-logs (kafka.log.LogManager)
Sep 22 14:43:11 devops02 kafka-server-start.sh[7363]: [2021-09-22 14:43:11,386] KESALAHAN Shutdown broker karena semua direktur log di /tmp/kafka-logs telah gagal (kafka.log.LogManager)
Sep 22 14:43:11 devops02 systemd[1]: kafka.service: proses utama keluar, kode=keluar, status=1/KEGAGALAN
Sep 22 14:43:11 devops02 systemd[1]: Unit kafka.service memasuki status gagal.
Sep 22 14:43:11 devops02 systemd[1]: kafka.service gagal.
Hint: Some lines were ellipsized, use -l to show in full.



Buka direktori log Kafka /usr/local/kafka/logs untuk melihat file log server.log, sebagai berikut:

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

Kesalahan menyebabkan:Linux secara teratur membersihkan file di direktori /tmp, direktori file kafka disimpan secara default/tmp/kafka-logs, menyebabkannya dibersihkan secara teratur, mengakibatkan pengoperasian program yang tidak normal.

Di bawah CentOS 7, ada 3 layanan sistem yang terkait dengan pembersihan:

systemd-tmpfiles-setup.service :Buat File dan Direktori yang Mudah Menguap
systemd-tmpfiles-setup-dev.service:Membuat simpul perangkat statis di /dev
systemd-tmpfiles-clean.service :Pembersihan Direktori Sementara

Ada juga 3 profil terkait, sebagai berikut:

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

Gunakan perintah berikut untuk melihat log yang terkait dengan tmpfiles:



tmp di/usr/lib/tmpfiles.d/tmp.confKonfigurasi file seperti yang ditunjukkan pada gambar berikut:

# File ini adalah bagian dari systemd.
#
# systemd adalah perangkat lunak gratis; Anda dapat mendistribusikannya kembali dan/atau memodifikasinya
# di bawah ketentuan Lisensi Publik Umum Rendah GNU sebagaimana diterbitkan oleh
# Yayasan Perangkat Lunak Bebas; versi 2.1 dari Lisensi, atau
# (atas pilihan Anda) versi yang lebih baru.

# Lihat tmpfiles.d(5) untuk detailnya

# Hapus direktori tmp secara terpisah, agar lebih mudah diganti
v /tmp 1777 root root 10d
v /var/tmp 1777 root root 30d

# Kecualikan titik pemasangan namespace yang dibuat dengan 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



Solusi 1

Ubah file konfigurasi Kafka /config/server.properties untuk memodifikasi konfigurasi log.dirs, misalnya:



Solusi 2

Tambahkan direktori pengecualian dan edit file: /usr/lib/tmpfiles.d/tmp.conf


(Akhir)




Mantan:CentOS 7 menginstal lingkungan runtime dengan ASP.NET Core 3.1
Depan:nslookup diperkenalkan secara singkat
Diposting pada 22/09/2021 19.51.17 |
Datang dan belajar lagi。。。。。
 Tuan tanah| Diposting pada 07/02/2022 14.31.46 |
Lihat perintah log pembersihan:


Feb 02 18:18:09 centos7-itsvse systemd[1]: Memulai pembersihan direktori sementara...
Feb 02 18:18:09 centos7-itsvse systemd[1]: Memulai pembersihan direktori sementara.
Feb 03 18:19:09 centos7-itsvse systemd[1]: Memulai pembersihan direktori sementara...
Feb 03 18:19:09 centos7-itsvse systemd[1]: Memulai pembersihan direktori sementara.
Feb 04 18:20:09 centos7-itsvse systemd[1]: Memulai pembersihan direktori sementara...
Feb 04 18:20:09 centos7-itsvse systemd[1]: Memulai pembersihan direktori sementara.
Feb 05 18:21:09 centos7-itsvse systemd[1]: Memulai Pembersihan Direktori Sementara...
Feb 05 18:21:09 centos7-itsvse systemd[1]: Memulai pembersihan direktori sementara.
Feb 06 18:22:09 centos7-itsvse systemd[1]: Memulai pembersihan direktori sementara...
Feb 06 18:22:09 centos7-itsvse systemd[1]: Memulai pembersihan direktori sementara.
Sanggahan:
Semua perangkat lunak, materi pemrograman, atau artikel yang diterbitkan oleh Code Farmer Network hanya untuk tujuan pembelajaran dan penelitian; Konten di atas tidak boleh digunakan untuk tujuan komersial atau ilegal, jika tidak, pengguna akan menanggung semua konsekuensi. Informasi di situs ini berasal dari Internet, dan sengketa hak cipta tidak ada hubungannya dengan situs ini. Anda harus sepenuhnya menghapus konten di atas dari komputer Anda dalam waktu 24 jam setelah pengunduhan. Jika Anda menyukai program ini, harap dukung perangkat lunak asli, pembelian pendaftaran, dan dapatkan layanan asli yang lebih baik. Jika ada pelanggaran, silakan hubungi kami melalui email.

Mail To:help@itsvse.com