陈佳浩
陈佳浩
发布于 2024-08-17 / 92 阅读
0
0

配置节点亲和性

--- #单独起一个名称空间
apiVersion: v1          #指定api组
kind: Namespace         #指定api类型
metadata:               #元数据
  name: test-affinity   #定义名称空间名字
--- #启动一个deployment
apiVersion: apps/v1          #指定api组
kind: Deployment        #指定api类型
metadata:               #元数据
  name: test-affinity   #定义deploy名字
  namespace: test-affinity        #指定名称空间
spec:                   #指定对象规约
  replicas: 3           #定义副本集
  selector:                         #定义标签选择器
    matchLabels:                    #定义匹配标签
      app: busybox      #指定匹配的标签
  template:             #定义模板
    metadata:           #元数据
      labels:           #标签
        app: busybox    #指定标签
    spec:               #指定对象规约
      affinity:         #亲和性配置
        nodeAffinity:   #配置节点亲和性
          requiredDuringSchedulingIgnoredDuringExecution:       #指定在调度期间必须满足的条件
            nodeSelectorTerms:          #定义节点选择条件
            - matchExpressions:         #定义节点选择条件表达式
              - key: kubernetes.io/os   #匹配标签的键
                operator: In            #定义匹配的操作符
                values:                 #值列表
                - linux                 #值
          preferredDuringSchedulingIgnoredDuringExecution:      #设置在调度期间的偏好
          - weight: 1                   #权重值
            preference:                 #定义调度节点的偏好
              matchExpressions:         #定义节点选择条件表达式
              - key: test-label-1       #匹配标签的键
                operator: In            #定义匹配的操作符
                values:                 #值列表
                - beijing               #值
          - weight: 50                  #权重值
            preference:                 #定义调度节点的偏好
              matchExpressions:         #定义节点选择条件表达式
              - key: test-label-2       #匹配标签的键
                operator: In            #定义匹配的操作符
                values:                 #值列表
                - new                   #值
      containers:       #定义容器
        - name: busybox     #定义容器名字
          image: harbor.placjh.com/busybox/busybox:1.36       #指定镜像和版本
          command:          #pod启动命令
            - "/bin/sh"
            - "-c"
            - "sleep 3600"
          imagePullPolicy: IfNotPresent     #定义镜像拉取策略



评论