如何将STS应用程序和目标Pod调度到OpenEBS中的同一节点?

时间:2018-12-13 13:12:12

标签: kubernetes openebs

我们有一个设置(在GKE k8s 1.10中连接了6个带有临时SSD的节点)和带有6个副本的应用程序StatefulSet。该计划是将一对一的应用程序容器映射到一个节点,并使用目标关联性将jiva目标容器与应用程序容器保持在同一节点上。在应用程序层解决了数据复制/冗余问题,因此我们只需要为存储类设置1个副本。

1 个答案:

答案 0 :(得分:0)

目标相似性策略可用于将卷目标Pod与工作负载共同定位在同一节点上。

此功能利用了依赖于Pod标签的Kubernetes Pod Affinity功能。用户将需要在Application和PVC上添加以下标签。

labels:
  openebs.io/target-affinity: <application-unique-label>

您可以使用以下方式在应用程序和OpenEBS PVC中指定目标关联性,对于“应用程序包”,它类似于以下内容

apiVersion: v1
kind: Pod
metadata:
  name: fio-jiva
  labels:
    name: fio-jiva
    openebs.io/target-affinity: fio-jiva

对于OpenEBS PVC,它将类似于以下内容。

kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: fio-jiva-claim
  labels:
    openebs.io/target-affinity: fio-jiva

注意:此功能仅适用于应用程序与PVC之间存在1-1映射的情况。不建议将PVC指定为模板的STS。