Kubernetes HA数据跨多个工人

Kubernetes HA数据跨多个工人,kubernetes,vps,Kubernetes,Vps,我已经建立了一个Kubernetes系统,有1个主节点和3个工作节点,以及一个负载平衡器。但目前我的管道被卡住了,因为我正在努力寻找解决方案,我如何才能建立一个WordPress网站,并在所有节点上复制流量。对我来说,一切都很清楚,只是我不知道,如何让所有3名员工(不同国家的VPS服务器)拥有相同的数据,以便POD可以工作和扩展,如果一名员工死亡,第二名和第三名员工可以继续提供所有服务。PVE是解决方案还是其他解决方案?请告诉我开始搜索的方向 谢谢。您可以在ReadWriteMany模式下创建一

我已经建立了一个Kubernetes系统,有1个主节点和3个工作节点,以及一个负载平衡器。但目前我的管道被卡住了,因为我正在努力寻找解决方案,我如何才能建立一个WordPress网站,并在所有节点上复制流量。对我来说,一切都很清楚,只是我不知道,如何让所有3名员工(不同国家的VPS服务器)拥有相同的数据,以便POD可以工作和扩展,如果一名员工死亡,第二名和第三名员工可以继续提供所有服务。PVE是解决方案还是其他解决方案?请告诉我开始搜索的方向


谢谢。

您可以在
ReadWriteMany
模式下创建一个
PersistentVolumeClaim
,创建一个
PersistentVolume
保存WordPress站点数据的
PersistentVolume
,然后创建一个
部署
,其中包含3个装载该
PersistentVolume
的副本

例如:

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: wordpress-data
spec:
  accessModes: 
    - ReadWriteMany
  volumeMode: Filesystem
  storageClass: fast # update this to whatever persistent storage class is available on your cluster.  See https://kubernetes.io/docs/concepts/storage/storage-classes/
  resources:
    requests:
      storage: 10Gi
apiVersion: apps/v1
kind: Deployment
metadata:
  name: wordpress
  labels:
    app: wordpress
spec:
  replicas: 3
  selector:
    matchLabels:
      app: wordpress
  template:
    metadata:
      labels:
        app: wordpress
    spec:
      containers:
      - name: wordpress
        image: wordpress:latest
        ports:
        - containerPort: 80
          name: http
          protocol: TCP
        volumeMounts:
          - mountPath: "/var/www/html"
            name: wordpress-data
      volumes:
        - name: wordpress-data
          persistentVolumeClaim:
            claimName: wordpress-data # notice this is referencing the PersistentVolumeClaim we declared above
apiVersion: v1
kind: Service
metadata:
  name: wordpress
spec:
  type: NodePort # or LoadBalancer
  selector:
    app: wordpress
  ports:
    - name: http
      protocol: TCP
      port: 80
      targetPort: 80