小编rai*_*yan的帖子

听Eureka活动

我有一台在本地机器上运行的Eureka服务器.Eureka客户已在此服务器上注册.我可以查看eureka仪表板以查看已注册的实例.

我可以在服务器端有一个事件监听器,它会在注册或取消实例时被触发吗?

我查看了源代码并发现eureka从spring发出以下3个事件 ApplicationContext

  1. EurekaInstanceRenewedEvent
  2. EurekaInstanceRegisteredEvent
  3. EurekaInstanceCancelledEvent

其中只有EurekaInstanceRenewedEvent当服务器收到心跳时才会触发工作和监听器.当从eureka注册或取消新实例时,我无法收听其他事件.

任何帮助将不胜感激.

events spring spring-cloud netflix-eureka spring-cloud-netflix

7
推荐指数
1
解决办法
1999
查看次数

Elasticsearch 不接受数据

我在 kubernetes 上有一个 Elasticsearch 集群设置。最近logstash 无法向集群推送任何数据,因为集群中的一个节点磁盘空间不足。

这是logstash中的错误

 [Ruby-0-Thread-13@[main]>worker1: /usr/share/logstash/logstash-core/lib/logstash/pipeline.rb:383] elasticsearch - retrying failed action with response code: 403 ({"type"=>"cluster_block_exception", "reason"=>"blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];"}) 
Run Code Online (Sandbox Code Playgroud)

es-master 将节点标记为只读,因为可用磁盘空间超过阈值

[WARN ][o.e.c.r.a.DiskThresholdMonitor] [es-master-65ccf55794-pm4xz] flood stage disk watermark [95%] exceeded on [SaRCGuyyTBOxTjNtvjui-g][es-data-1][/data/data/nodes/0] free: 9.1gb[2%], all indices on this node will be marked read-only
Run Code Online (Sandbox Code Playgroud)

在此之后,我释放了该节点上的资源,现在它有足够的可用空间(几乎 50%)。但是 logstash 仍然无法将数据推送到弹性搜索,并且正在记录上述相同的错误。

我有以下问题

  1. elasticsearch 会自动恢复吗?
  2. 如果没有,我应该重新启动集群吗?如果我只是重新启动数据节点就足够了,还是应该重新启动主节点和 indest 节点?
  3. 有没有办法在不重启的情况下再次标记索引可写?

elasticsearch logstash

2
推荐指数
1
解决办法
915
查看次数