【发布时间】:2022-03-09 04:51:32
【问题描述】:
所以现在我们正试图让 Bitnami Redis Sentinel 集群与我们的 Rails 应用程序 + Sidekiq 一起工作。
我们尝试了不同的方法,但我们并不清楚,我们应该如何为 Sidekiq 指定哨兵(关键部分在这里,哨兵节点是只读的,所以我们不能将它们用于 sidekiq,因为作业状态得到写)。
由于在 Kubernetes 上只有 2 种服务可用:“redis”和“redis-headless”(不确定它们有何不同?) - 我如何像这样指定哨兵:
Sidekiq.configure_server do |config|
config.redis = {
url: "redis",
sentinels: [
{ host: "?", port: 26379 } # why do we have to specify it here seperately, since we should be able to get a unified answer via a service, or?
{ host: "?", port: 26379 }
{ host: "?", port: 26379 }
}
}
end
如果有人能对此有所了解,那就太好了。据我了解,bitnami redis sentiel 只返回主服务器的 IP,然后应用程序必须处理对该主服务器的相应写入(https://github.com/bitnami/charts/tree/master/bitnami/redis#master-replicas-with-sentinel) - 但我真的不明白关于如何使用 sidekiq 做到这一点?
【问题讨论】:
-
您是否设法让 Sidekiq 与您的 Redis Sentinel 集群完美配合?
标签: ruby-on-rails kubernetes redis bitnami redis-sentinel