我正试图按照文档https://github.com/Kong/kong-dist-kubernetes在GKE中部署Kong
我注意到卡桑德拉可以作为StatefulSet,而波斯特格斯可以作为ReplicationController。我能理解其中的区别吗?还有人能建议如何在这两种情况下做出选择吗?
发布于 2018-10-02 05:04:54
ReplicationControllers早于StatefulSets。这是一种管理你的豆荚复制品的方法。管理副本的“更新”方法是ReplicaSets,部署使用它。
StatefulSets用于要求您的荚以有序方式启动的应用程序,以及存储在磁盘上的某种类型的数据。因此,它非常适用于主从数据存储或环形拓扑数据存储(如Cassandra )。我强烈建议对这些类型的工作负载使用StatefulSets。
发布于 2018-10-01 13:29:42
StatefulSet更适合管理有状态应用程序( postgres和cassandra绝对是这样),因为它提供了在您的情况下创建PersistentVolumeClaim来使用GKE的可能性,因此您的状态将存储在专用PD上的单独分区上。相比之下,使用您提供的使用ReplicationController的Postgres部署使用emptyDir,因此它意味着当您删除带有Postgres的意外/失败的emptyDir时,所有数据都将丢失,因此在这种情况下,您可能需要重新初始化您的Kong部署(运行江内迁移、配置路由器等)。
https://stackoverflow.com/questions/52590347
复制相似问题