Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 10663|Yanıt: 2

CentOS 7 altında ise Kafka genellikle çözümleri kapatıyor

[Bağlantıyı kopyala]
Yayınlandı 22.09.2021 17:31:38 | | | |
Eleştiri:

Kafka Windows sistemi bir süre çalıştıktan sonra kapanır
https://www.itsvse.com/thread-9984-1-1.html

Windows Kafka HATASI Günlüğü temizlemede başarısız oldu__consumer_offsets
https://www.itsvse.com/thread-9980-1-1.html

Kafka'nın çalışma durumunu kontrol etmek için aşağıdaki komutu kullanın. Şöyle:

kafka.service
   Yüklendi: yüklendi (/usr/lib/systemd/system/system/kafka.service; Etkin; satıcı ön ayarı: devre dışı bırakılmış)
   Aktif: başarısız oldu (Sonuç: çıkış kodu) 2021-09-22 Çarşamba 14:43:11 CST; 1 saat 43 dakika önce
  Süreç: 7363 ExecStart=/usr/local/kafka/bin/kafka-server-start.sh /usr/local/kafka/config/server.properties (code=exitated, status=1/FAIL)
Ana PID: 7363 (kod=çıkış, durum=1/HATA

22 Sep 14:43:11 devops02 kafka-server-start.sh[7363]: [2021-09-22 14:43:11,295] UYARI [ReplicaManager broker=1] Replikaların dir /tmp/kafka-logs'ta servis edilmesi durduruluyor ( kafka.server.ReplicaManager)
22 Eylül 14:43:11 devops02 kafka-server-start.sh[7363]: [2021-09-22 14:43:11,298] UYARI [GrupKoordinatör 1]: Grup için boş meta veri yazılamadı KqBatchAna: Bu doğru değil koordinatör. (kafka.co... upCoordinator)
22 Sep 14:43:11 devops02 kafka-server-start.sh[7363]: [2021-09-22 14:43:11,303] INFO [ReplicaFetcherManager broker 1 üzerine] Partitions için fetcher kaldırıldı 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] Partitions için fetcher kaldırıldı HashSet(__consumer_ ofsetler-22, __consumer_offsets... fsets-8, __con
22 Sep 14:43:11 devops02 kafka-server-start.sh[7363]: [2021-09-22 14:43:11,378] UYAR [ReplicaManager broker=1] Broker 1 bölümler için fetcher'i durdurdu __consumer_offsets-22,__ consumer_offsets-30,__consumer_... fsets-21,__con
22 Eylül 14:43:11 devops02 kafka-server-start.sh[7363]: [2021-09-22 14:43:11,379] UYARI dir /tmp/kafka-logs'ta logların servis edilmesi durduruluyor (kafka.log.LogManager)
22 Eylül 14:43:11 devops02 kafka-server-start.sh[7363]: [2021-09-22 14:43:11,386] HATA Kapatma aracı çünkü /tmp/kafka-logs içindeki tüm log direksiyonları başarısız oldu (kafka.log.LogManager)
22 Sep 14:43:11 devops02 systemd[1]: kafka.service: ana süreç çıktı, code=exited, status=1/FAILURE
22 Eylül 14:43:11 devops02 systemd[1]: Unit kafka.service başarısız duruma girdi.
Sep 22 14:43:11 devops02 systemd[1]: kafka.service failed.
Hint: Some lines were ellipsized, use -l to show in full.



server.log günlük dosyalarını görmek için Kafka log dizinine /usr/local/kafka/logs gidin, aşağıdaki gibi:

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

Hata nedenleri:Linux, /tmp dizinindeki dosyaları düzenli olarak temizler, Kafka dosya dizininin varsayılan olarak saklandığı/tmp/kafka-logsdizini düzenli olarak temizledi ve programın anormal çalışmasına yol açtı.

CentOS 7 kapsamında temizlikle ilgili 3 sistem hizmeti vardır:

systemd-tmpfiles-setup.service :Volatile Dosyalar ve Dizinler Oluştur
systemd-tmpfiles-setup-dev.service:/dev içinde statik cihaz düğümleri oluşturun
systemd-tmpfiles-clean.service :Geçici dizinlerin temizlenmesi

Ayrıca 3 ilgili profil de vardır, aşağıdaki gibidir:

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

tmpfiles ile ilgili logları görüntülemek için aşağıdaki komutu kullanın:



TMP dizininde/usr/lib/tmpfiles.d/tmp.confDosya yapılandırması aşağıdaki şekilde gösterilmiştir:

# Bu dosya systemd'nin bir parçası.
#
# systemd özgür yazılımdır; Yeniden dağıtabilir ve/veya değiştirebilirsiniz
# GNU Küçük Genel Kamu Lisansı şartları altında,
# Özgür Yazılım Vakfı; ya Lisansın 2.1 sürümü, ya da
# (Seçeneğinizde) daha sonraki herhangi bir versiyon.

# Detaylar için tmpfiles.d(5) adresine bakınız

# TMP dizinlerini ayrı ayrı temizleyin, böylece geçersiz hale getirin
v /tmp 1777 kök kök 10d
v /var/tmp 1777 kök kökü 30d

# PrivateTmp=yes ile oluşturulan namespace mountpoints hariç
x /tmp/systemd-private-%b-*
X /tmp/systemd-private-%b-*/tmp
x /var/tmp/systemd-private-%b-*
X /var/tmp/systemd-private-%b-*/tmp



Çözüm 1

Kafka'nın yapılandırma dosyası /config/server.properties log.dirs yapılandırmasını değiştirmek için örneğin:



Çözüm 2

Bir hariç tutma dizini ekle ve dosyayı düzenleyin: /usr/lib/tmpfiles.d/tmp.conf


(Son)




Önceki:CentOS 7, çalışma zamanı ortamını ASP.NET Core 3.1 ile kurar
Önümüzdeki:nslookup komutu kısa bir süreliğine tanıtıldı
Yayınlandı 22.09.2021 19:51:17 |
Gel ve tekrar öğren。。。。。
 Ev sahibi| Yayınlandı 7.02.2022 14:31:46 |
Temizleme günlüğü komutuna göz atın:


02 Şubat 18:18:09 centos7-itsvse systemd[1]: Geçici dizinlerin temizlenmesine başlanıyor...
02 Şubat 18:18:09 centos7-itsvse systemd[1]: Geçici dizinlerin temizlenmesine başlandı.
03 Şubat 18:19:09 centos7-itsvse systemd[1]: Geçici dizinlerin temizlenmesine başlanıyor...
03 Şubat 18:19:09 centos7-itsvse systemd[1]: Geçici dizinlerin temizlenmesine başlandı.
04 Şubat 18:20:09 centos7-itsvse systemd[1]: Geçici dizinlerin temizlenmesine başlanıyor...
04 Şubat 18:20:09 centos7-itsvse systemd[1]: Geçici dizinlerin temizlenmesine başlandı.
05 Şubat 18:21:09 centos7-itsvse systemd[1]: Geçici dizinlerin temizlenmesine başlanıyor...
05 Şubat 18:21:09 centos7-itsvse systemd[1]: Geçici dizinlerin temizlenmesine başlandı.
06 Şubat 18:22:09 centos7-itsvse systemd[1]: Geçici dizinlerin temizlenmesine başlanıyor...
06 Şubat 18:22:09 centos7-itsvse systemd[1]: Geçici dizinlerin temizlenmesine başlandı.
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com