我想拥有50个redis实例,我可以使用docker-compose实现吗?还是应该改用Kuberneties?这里的要点是我希望每个实例都有自己的端口和自己的卷。
另一个问题是我如何在多个主机之间分配实例,例如,每个10个容器将在不同的服务器上托管它。 (docker-swarm或Kuberneties吗?)
Kubernetes将适合您的用例。我会使用来自马stable的Helm图表:
https://hub.helm.sh/charts/bitnami/redis/6.4.0
花一些时间在kubernetes中,这样您就可以免费获得很多。 Redis在Kubernetes中将是一个Statefulset,如果有资源,您可以根据需要扩展它。在许多云提供商中,Redis应该是开箱即用的应用程序:
一个有状态集保证每个实例都使用其自己的数据量。
https://www.digitalocean.com/docs/databases/redis/how-to/create/
玩得开心!
如以上答案中所述,您绝对可以使用Helm图表,但是您也可以在Kubernetes中使用运算符。
Redis运算符:https://github.com/spotahome/redis-operator
该操作员为您提供了额外的功能并管理Redis集群。
在Kubernetes中,您可以使用HA掌舵Redis图表,并使用有PVC支持的有状态集对其进行缩放。
PVC称为持久性卷声明,它将存储Redis .rdb
快照和.aof
appendonly
文件。