Kubernetes 香港博士后vs卡桑德拉

Kubernetes 香港博士后vs卡桑德拉,kubernetes,google-kubernetes-engine,kong,Kubernetes,Google Kubernetes Engine,Kong,我正试图根据文件在GKE部署Kong 我注意到它可以作为StatefulSet使用,但可以作为ReplicationController使用。我能理解其中的区别吗?还有谁能建议如何在这两个选项中进行选择?StatefulSet更适合管理有状态的应用程序(postgres和cassandra肯定是这样),因为它提供了创建PersistentVolumeClaim的可能性,以便在您的情况下使用GKE PD,这样您的状态将存储在专用PD上的单独分区上。相比之下,您提供的使用ReplicationCon

我正试图根据文件在GKE部署Kong


我注意到它可以作为StatefulSet使用,但可以作为ReplicationController使用。我能理解其中的区别吗?还有谁能建议如何在这两个选项中进行选择?

StatefulSet更适合管理有状态的应用程序(postgres和cassandra肯定是这样),因为它提供了创建PersistentVolumeClaim的可能性,以便在您的情况下使用GKE PD,这样您的状态将存储在专用PD上的单独分区上。相比之下,您提供的使用ReplicationController的Postgres部署使用emptyDir,这意味着当您使用Postgres意外/失败删除POD时,所有数据都将丢失,因此在这种情况下,您可能需要重新初始化Kong部署(运行Kong迁移、配置路由器等)

在Statefolset之前。这是一种管理pod副本的方法。管理复制副本的“较新”方法是由使用的


适用于那些需要POD以有序方式启动并存储在磁盘上的某种数据的应用程序。因此,它非常适合主/从数据存储或环形拓扑数据存储,如Cassandra。我强烈建议对这些类型的工作负载使用statefulset。

您还可以看到带有statefulset的postgres示例: