4.5.5. ## kudu-master.yaml

---
apiVersion: v1
kind: Service
metadata:
  name: kudu-master1
  labels:
    component: kudu-master1
spec:
  type: NodePort
  selector:
    component: kudu-master1
  ports:
    - port: 7050
      name: http
      targetPort: 7050
    - port: 7051
      name: rcp
      targetPort: 7051
      nodePort: 30448
    - port: 8051
      name: ui
      targetPort: 8051
      nodePort: 31406
---
apiVersion: apps/v1beta1
kind: Deployment
metadata:
  name: kudu-master1
  labels:
    component: kudu-master1
spec:
  replicas: 1
  template:
    metadata:
      labels:
        component: kudu-master1
    spec:
      hostname: kudu-master1
#      nodeSelector: 'node03' #直接通过节点名称调度到指定节点
      imagePullSecrets:
        - name: registry-secret
      containers:
        - name: kudu-master1
          image: registry.cn-hangzhou.aliyuncs.com/ispatial/kudu:ssdp-0.0.1
          imagePullPolicy: IfNotPresent
          volumeMounts:
            - name: data
              mountPath: /data
          ports:
            - containerPort: 7051
              name: rpc
            - containerPort: 8051
              name: http
          args: ["master"]
          env:
            - name: KUDU_MASTER
              value: kudu-master1:7051,kudu-master2:7051,kudu-master3:7051
      volumes:
      - name: data
        hostPath:
          path: /root/ssdp-volumes/kudu/kudu-master1
      restartPolicy: Always
#---
#apiVersion: v1
#kind: Service
#metadata:
#  name: kudu-master2
#  labels:
#    component: kudu-master2
#spec:
#  type: NodePort
#  selector:
#    component: kudu-master2
#  ports:
#    - port: 7050
#      name: http
#      targetPort: 7050
#    - port: 7051
#      name: rcp
#    - port: 8051
#      name: ui
#      targetPort: 8051
#---
#apiVersion: apps/v1beta1
#kind: Deployment
#metadata:
#  name: kudu-master2
#  labels:
#    component: kudu-master2
#spec:
#  replicas: 1
#  template:
#    metadata:
#      labels:
#        component: kudu-master2
#    spec:
#      hostname: kudu-master2
#      imagePullSecrets:
#        - name: registry-secret
#      containers:
#        - name: kudu-master2
#          image: registry.cn-hangzhou.aliyuncs.com/ispatial/kudu:ssdp-0.0.1
#          imagePullPolicy: IfNotPresent
#          ports:
#            - containerPort: 7051
#              name: rpc
#            - containerPort: 8051
#              name: http
#          args: ["master"]
#          env:
#            - name: KUDU_MASTER
#              value: kudu-master1:7051,kudu-master2:7051,kudu-master3:7051
#      restartPolicy: Always
#---
#apiVersion: v1
#kind: Service
#metadata:
#  name: kudu-master3
#  labels:
#    component: kudu-master3
#spec:
#  type: NodePort
#  selector:
#    component: kudu-master3
#  ports:
#    - port: 7050
#      name: http
#      targetPort: 7050
#    - port: 7051
#      name: rcp
#    - port: 8051
#      name: ui
#      targetPort: 8051
#---
#apiVersion: apps/v1beta1
#kind: Deployment
#metadata:
#  name: kudu-master3
#  labels:
#    component: kudu-master3
#spec:
#  replicas: 1
#  template:
#    metadata:
#      labels:
#        component: kudu-master3
#    spec:
#      hostname: kudu-master3
#      imagePullSecrets:
#        - name: registry-secret
#      containers:
#        - name: kudu-master3
#          image: registry.cn-hangzhou.aliyuncs.com/ispatial/kudu:ssdp-0.0.1
#          imagePullPolicy: IfNotPresent
#          ports:
#            - containerPort: 7051
#              name: rpc
#            - containerPort: 8051
#              name: http
#          args: ["master"]
#          env:
#            - name: KUDU_MASTER
#              value: kudu-master1:7051,kudu-master2:7051,kudu-master3:7051
#      restartPolicy: Always

## kudu-tserver.yaml

---
apiVersion: v1
kind: Service
metadata:
  name: kudu-tserver1
  labels:
    component: kudu-tserver1
spec:
  type: NodePort
  selector:
    component: kudu-tserver1
  ports:
    - port: 7050
      name: http
      targetPort: 7050
    - port: 8051
      name: ui
      targetPort: 8051
---
apiVersion: apps/v1beta1
kind: Deployment
metadata:
  name: kudu-tserver1
  labels:
    component: kudu-tserver1
spec:
  replicas: 1
  template:
    metadata:
      labels:
        component: kudu-tserver1
    spec:
      hostname: kudu-tserver1
#      nodeSelector: node02 #直接通过节点名称调度到指定节点
      imagePullSecrets:
        - name: registry-secret
      containers:
        - name: kudu-tserver1
          image: registry.cn-hangzhou.aliyuncs.com/ispatial/kudu:ssdp-0.0.1
          imagePullPolicy: IfNotPresent
          volumeMounts:
            - name: data
              mountPath: /data

          ports:
            - containerPort: 7051
              name: rpc
            - containerPort: 8051
              name: http
          args: ["tserver"]
          env:
            - name: KUDU_MASTER
              value: kudu-master1:7051
      volumes:
      - name: data
        hostPath:
          path: /root/ssdp-volumes/kudu/kudu-tserver1
      restartPolicy: Always
---
apiVersion: v1
kind: Service
metadata:
  name: kudu-tserver2
  labels:
    component: kudu-tserver2
spec:
  type: NodePort
  selector:
    component: kudu-tserver2
  ports:
    - port: 7050
      name: http
      targetPort: 7050
    - port: 8051
      name: ui
      targetPort: 8051
---
apiVersion: apps/v1beta1
kind: Deployment
metadata:
  name: kudu-tserver2
  labels:
    component: kudu-tserver2
spec:
  replicas: 1
  template:
    metadata:
      labels:
        component: kudu-tserver2
    spec:
      hostname: kudu-tserver2
#      nodeSelector: node03 #直接通过节点名称调度到指定节点
      imagePullSecrets:
        - name: registry-secret
      containers:
        - name: kudu-tserver2
          image: registry.cn-hangzhou.aliyuncs.com/ispatial/kudu:ssdp-0.0.1
          imagePullPolicy: IfNotPresent
          volumeMounts:
            - name: data
              mountPath: /data
          ports:
            - containerPort: 7051
              name: rpc
            - containerPort: 8051
              name: http
          args: ["tserver"]
          env:
            - name: KUDU_MASTER
              value: kudu-master1:7051
      volumes:
      - name: data
        hostPath:
          path: /root/ssdp-volumes/kudu/kudu-tserver2
      restartPolicy: Always
---
apiVersion: v1
kind: Service
metadata:
  name: kudu-tserver3
  labels:
    component: kudu-tserver3
spec:
  type: NodePort
  selector:
    component: kudu-tserver3
  ports:
    - port: 7050
      name: http
      targetPort: 7050
    - port: 8051
      name: ui
      targetPort: 8051
---
apiVersion: apps/v1beta1
kind: Deployment
metadata:
  name: kudu-tserver3
  labels:
    component: kudu-tserver3
spec:
  replicas: 1
  template:
    metadata:
      labels:
        component: kudu-tserver3
    spec:
      hostname: kudu-tserver3
#      nodeSelector: node02 #直接通过节点名称调度到指定节点
      imagePullSecrets:
        - name: registry-secret
      containers:
        - name: kudu-tserver3
          image: registry.cn-hangzhou.aliyuncs.com/ispatial/kudu:ssdp-0.0.1
          imagePullPolicy: IfNotPresent
          volumeMounts:
            - name: data
              mountPath: /data
          ports:
            - containerPort: 7051
              name: rpc
            - containerPort: 8051
              name: http
          args: ["tserver"]
          env:
            - name: KUDU_MASTER
              value: kudu-master1:7051
      volumes:
      - name: data
        hostPath:
          path: /root/ssdp-volumes/kudu/kudu-tserver3
      restartPolicy: Always