
---
kind: Deployment
apiVersion: apps/v1
metadata:
  name: mall4j-elasticsearch
  namespace: mall4j-middleware
  labels:
    k8s.kuboard.cn/name: mall4j-elasticsearch
  annotations: {}
spec:
  replicas: 1
  selector:
    matchLabels:
      k8s.kuboard.cn/name: mall4j-elasticsearch
  template:
    metadata:
      creationTimestamp: null
      labels:
        k8s.kuboard.cn/name: mall4j-elasticsearch
    spec:
      volumes:
        - name: mall4j-elasticsearch
          nfs:
            server: 192.168.1.28
            path: /nfs/data/mall4j-middleware/mall4j-elasticsearch/
      containers:
        - name: mall4j-elasticsearch
          image: 'elasticsearch:7.17.5'
          env:
            - name: TAKE_FILE_OWNERSHIP
              value: 'true'
            - name: discovery.type
              value: single-node
            - name: ES_JAVA_OPTS
              value: '-Xms2048m -Xmx2048m'
            - name: ELASTICSEARCH_USERNAME
              value: 'elastic'
            - name: ELASTIC_PASSWORD
              value: 'hn02le.34lkdLKD'
            - name: xpack.security.enabled
              value: 'true'
          resources: {}
          volumeMounts:
            - name: mall4j-elasticsearch
              mountPath: /usr/share/elasticsearch/data
              subPath: ./data
            - name: mall4j-elasticsearch
              mountPath: /usr/share/elasticsearch/plugins
              subPath: ./plugins
            - name: mall4j-elasticsearch
              mountPath: /usr/share/elasticsearch/config/elasticsearch.yml
              subPath: ./config/elasticsearch.yml
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
          imagePullPolicy: IfNotPresent
      restartPolicy: Always
      terminationGracePeriodSeconds: 30
      dnsPolicy: Default
      securityContext: {}
      schedulerName: default-scheduler
      dnsConfig: {}
  strategy:
    type: RollingUpdate
    rollingUpdate:
      maxUnavailable: 25%
      maxSurge: 25%
  revisionHistoryLimit: 10
  progressDeadlineSeconds: 600

---
kind: Deployment
apiVersion: apps/v1
metadata:
  name: mall4j-minio
  namespace: mall4j-middleware
  labels:
    k8s.kuboard.cn/name: mall4j-minio
  annotations: {}
spec:
  replicas: 1
  selector:
    matchLabels:
      k8s.kuboard.cn/name: mall4j-minio
  template:
    metadata:
      creationTimestamp: null
      labels:
        k8s.kuboard.cn/name: mall4j-minio
    spec:
      volumes:
        - name: mall4j-minio
          nfs:
            server: 192.168.1.28
            path: /nfs/data/mall4j-middleware/mall4j-minio/
      containers:
        - name: mall4j-minio
          image: 'minio/minio:RELEASE.2021-06-17T00-10-46Z'
          args:
            - server
            - /data
          env:
            - name: MINIO_ROOT_USER
              value: admin
            - name: MINIO_ROOT_PASSWORD
              value: 'hn02le.34lkdLKD'
          resources: {}
          volumeMounts:
            - name: mall4j-minio
              mountPath: /data
              subPath: ./data
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
          imagePullPolicy: IfNotPresent
      restartPolicy: Always
      terminationGracePeriodSeconds: 30
      dnsPolicy: ClusterFirst
      securityContext: {}
      schedulerName: default-scheduler
  strategy:
    type: RollingUpdate
    rollingUpdate:
      maxUnavailable: 25%
      maxSurge: 25%
  revisionHistoryLimit: 10
  progressDeadlineSeconds: 600

---
kind: Deployment
apiVersion: apps/v1
metadata:
  name: mall4j-nacos
  namespace: mall4j-middleware
  labels:
    k8s.kuboard.cn/name: mall4j-nacos
  annotations: {}
spec:
  replicas: 1
  selector:
    matchLabels:
      k8s.kuboard.cn/name: mall4j-nacos
  template:
    metadata:
      creationTimestamp: null
      labels:
        k8s.kuboard.cn/name: mall4j-nacos
      annotations:
        kubectl.kubernetes.io/restartedAt: '2022-10-26T15:47:06+08:00'
    spec:
      containers:
        - name: mall4j-nacos
          image: 'nacos/nacos-server:v2.1.1'
          env:
            - name: JVM_XMS
              value: 1024m
            - name: JVM_XMX
              value: 1024m
            - name: MODE
              value: standalone
            - name: PREFER_HOST_MODE
              value: hostname
            - name: SPRING_DATASOURCE_PLATFORM
              value: mysql
            - name: MYSQL_SERVICE_HOST
              value: 10.1.246.56
            - name: MYSQL_SERVICE_DB_NAME
              value: mall4j_nacos
            - name: MYSQL_SERVICE_USER
              value: root
            - name: MYSQL_SERVICE_PASSWORD
              value: 'hn02le.34lkdLKD'
            - name: NACOS_AUTH_ENABLE
              value: true
            - name: NACOS_CORE_AUTH_PLUGIN_NACOS_TOKEN_SECRET_KEY
              value: ETDrhi0SaqIrT3OxlGr9ztKShaR8BK4eV
            - name: NACOS_CORE_AUTH_SERVER_IDENTITY_KEY
              value: mall4j
            - name: NACOS_CORE_AUTH_SERVER_IDENTITY_VALUE
              value: tmerclub
          resources: {}
          livenessProbe:
            httpGet:
              path: /nacos/actuator/health/liveness
              port: 8848
              scheme: HTTP
            timeoutSeconds: 1
            periodSeconds: 30
            successThreshold: 1
            failureThreshold: 3
          readinessProbe:
            httpGet:
              path: /nacos/actuator/health/liveness
              port: 8848
              scheme: HTTP
            timeoutSeconds: 1
            periodSeconds: 30
            successThreshold: 1
            failureThreshold: 3
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
          imagePullPolicy: IfNotPresent
      restartPolicy: Always
      terminationGracePeriodSeconds: 30
      dnsPolicy: Default
      securityContext: {}
      schedulerName: default-scheduler
      dnsConfig: {}
  strategy:
    type: RollingUpdate
    rollingUpdate:
      maxUnavailable: 25%
      maxSurge: 25%
  revisionHistoryLimit: 10
  progressDeadlineSeconds: 600

---
kind: Deployment
apiVersion: apps/v1
metadata:
  name: mall4j-nginx
  namespace: mall4j-middleware
  labels:
    k8s.kuboard.cn/name: mall4j-nginx
  annotations: {}
spec:
  replicas: 1
  selector:
    matchLabels:
      k8s.kuboard.cn/name: mall4j-nginx
  template:
    metadata:
      creationTimestamp: null
      labels:
        k8s.kuboard.cn/name: mall4j-nginx
    spec:
      volumes:
        - name: mall4j-nginx
          nfs:
            server: 192.168.1.28
            path: /nfs/data/mall4j-middleware/mall4j-nginx
      containers:
        - name: mall4j-nginx
          image: nginx
          ports:
            - hostPort: 80
              containerPort: 80
              protocol: TCP
          resources: {}
          volumeMounts:
            - name: mall4j-nginx
              mountPath: /etc/nginx/nginx.conf
              subPath: ./conf/nginx.conf
            - name: mall4j-nginx
              mountPath: /etc/nginx/conf.d
              subPath: ./conf/conf.d
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
          imagePullPolicy: IfNotPresent
      restartPolicy: Always
      terminationGracePeriodSeconds: 30
      dnsPolicy: Default
      securityContext: {}
      schedulerName: default-scheduler
      dnsConfig: {}
  strategy:
    type: RollingUpdate
    rollingUpdate:
      maxUnavailable: 25%
      maxSurge: 25%
  revisionHistoryLimit: 10
  progressDeadlineSeconds: 600

---
kind: Deployment
apiVersion: apps/v1
metadata:
  name: mall4j-redis
  namespace: mall4j-middleware
  labels:
    k8s.kuboard.cn/name: mall4j-redis
  annotations: {}
spec:
  replicas: 1
  selector:
    matchLabels:
      k8s.kuboard.cn/name: mall4j-redis
  template:
    metadata:
      creationTimestamp: null
      labels:
        k8s.kuboard.cn/name: mall4j-redis
    spec:
      containers:
        - name: mall4j-redis
          image: redis:7.0
        - command:
            - redis-server
            - '--requirepass'
            - hn02le.34lkdLKD
          resources: {}
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
          imagePullPolicy: IfNotPresent
      restartPolicy: Always
      terminationGracePeriodSeconds: 30
      dnsPolicy: ClusterFirst
      securityContext: {}
      schedulerName: default-scheduler
  strategy:
    type: RollingUpdate
    rollingUpdate:
      maxUnavailable: 25%
      maxSurge: 25%
  revisionHistoryLimit: 10
  progressDeadlineSeconds: 600

---
kind: Deployment
apiVersion: apps/v1
metadata:
  name: mall4j-aof-redis
  namespace: mall4j-middleware
  labels:
    k8s.kuboard.cn/name: mall4j-aof-redis
  annotations: {}
spec:
  replicas: 1
  selector:
    matchLabels:
      k8s.kuboard.cn/name: mall4j-aof-redis
  template:
    metadata:
      creationTimestamp: null
      labels:
        k8s.kuboard.cn/name: mall4j-aof-redis
    spec:
      volumes:
        - name: mall4j-aof-redis
          nfs:
            path: /nfs/data/mall4j-middleware/mall4j-aof-redis/
            server: 192.168.1.28
      containers:
        - name: mall4j-aof-redis
          image: redis:7.0
        - command:
            - redis-server
            - /etc/redis/redis.conf
            - '--requirepass'
            - hn02le.34lkdLKD
          resources: {}
          volumeMounts:
            - mountPath: /etc/redis/redis.conf
              name: mall4j-aof-redis
              subPath: ./redis.conf
            - mountPath: /data
              name: mall4j-aof-redis
              subPath: ./data
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
          imagePullPolicy: IfNotPresent
      restartPolicy: Always
      terminationGracePeriodSeconds: 30
      dnsPolicy: ClusterFirst
      securityContext: {}
      schedulerName: default-scheduler
  strategy:
    type: RollingUpdate
    rollingUpdate:
      maxUnavailable: 25%
      maxSurge: 25%
  revisionHistoryLimit: 10
  progressDeadlineSeconds: 600

---
kind: Deployment
apiVersion: apps/v1
metadata:
  name: mall4j-rocketmq
  namespace: mall4j-middleware
  labels:
    k8s.kuboard.cn/name: mall4j-rocketmq
  annotations: {}
spec:
  replicas: 1
  selector:
    matchLabels:
      k8s.kuboard.cn/name: mall4j-rocketmq
  template:
    metadata:
      creationTimestamp: null
      labels:
        k8s.kuboard.cn/name: mall4j-rocketmq
    spec:
      volumes:
        - name: volume-35rcx
          nfs:
            server: 192.168.1.28
            path: /nfs/data/mall4j-middleware/mall4j-rocketmq/
      containers:
        - name: mall4j-rocketmq-namesrv
          image: 'apache/rocketmq:5.1.1'
          command:
            - sh
            - mqnamesrv
          env:
            - name: JAVA_OPT_EXT
              value: '-Duser.home=/home/rocketmq -Xms512M -Xmx512M -Xmn128M'
          resources: {}
          volumeMounts:
            - name: volume-35rcx
              mountPath: /home/rocketmq/logs
              subPath: ./namesrv/logs
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
          imagePullPolicy: IfNotPresent
        - name: mall4j-rocketmq-dashboard
          image: 'fsckzy01/rocketmq-dashboard:1.0.1'
          env:
            - name: JAVA_OPTS
              value: >-
                -Drocketmq.namesrv.addr=localhost:9876
                -Dcom.rocketmq.sendMessageWithVIPChannel=false -Xms256M -Xmx256M
          resources: {}
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
          imagePullPolicy: IfNotPresent
      restartPolicy: Always
      terminationGracePeriodSeconds: 30
      dnsPolicy: Default
      securityContext: {}
      schedulerName: default-scheduler
      dnsConfig: {}
  strategy:
    type: RollingUpdate
    rollingUpdate:
      maxUnavailable: 25%
      maxSurge: 25%
  revisionHistoryLimit: 10
  progressDeadlineSeconds: 600

---
kind: Deployment
apiVersion: apps/v1
metadata:
  name: mall4j-rocketmq-broker
  namespace: mall4j-middleware
  labels:
    k8s.kuboard.cn/name: mall4j-rocketmq-broker
  annotations: {}
spec:
  replicas: 1
  selector:
    matchLabels:
      k8s.kuboard.cn/name: mall4j-rocketmq-broker
  template:
    metadata:
      creationTimestamp: null
      labels:
        k8s.kuboard.cn/name: mall4j-rocketmq-broker
    spec:
      volumes:
        - name: mall4j-rocketmq-broker
          nfs:
            server: 192.168.1.28
            path: /nfs/data/mall4j-middleware/mall4j-rocketmq
      containers:
        - name: mall4j-rocketmq-broker
          image: 'apache/rocketmq:5.1.1'
          command:
            - sh
            - mqbroker
            - '-c'
            - /etc/rocketmq/broker.conf
            - '-n'
            - '10.1.3.73:9876'
            - autoCreateTopicEnable=true
          env:
            - name: JAVA_OPT_EXT
              value: >-
                -Duser.home=/home/rocketmq -Xms512M -Xmx512M -Xmn128M
                -XX:-AssumeMP
          resources: {}
          volumeMounts:
            - name: mall4j-rocketmq-broker
              mountPath: /etc/rocketmq/broker.conf
              subPath: ./broker/conf/broker.conf
            - name: mall4j-rocketmq-broker
              mountPath: /home/rocketmq/store
              subPath: ./broker/store
            - name: mall4j-rocketmq-broker
              mountPath: /home/rocketmq/logs
              subPath: ./broker/logs
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
          imagePullPolicy: IfNotPresent
      restartPolicy: Always
      terminationGracePeriodSeconds: 30
      dnsPolicy: Default
      securityContext: {}
      schedulerName: default-scheduler
      dnsConfig: {}
  strategy:
    type: RollingUpdate
    rollingUpdate:
      maxUnavailable: 25%
      maxSurge: 25%
  revisionHistoryLimit: 10
  progressDeadlineSeconds: 600

---
kind: Deployment
apiVersion: apps/v1
metadata:
  name: mall4j-seata
  namespace: mall4j-middleware
  labels:
    k8s.kuboard.cn/name: mall4j-seata
  annotations: {}
spec:
  replicas: 1
  selector:
    matchLabels:
      k8s.kuboard.cn/name: mall4j-seata
  template:
    metadata:
      creationTimestamp: null
      labels:
        k8s.kuboard.cn/name: mall4j-seata
    spec:
      volumes:
        - name: mall4j-seata
          nfs:
            server: 192.168.1.28
            path: /nfs/data/mall4j-middleware/mall4j-seata/
      containers:
        - name: mall4j-seata
          image: 'seataio/seata-server:2.0.0'
          env:
            - name: SEATA_IP
              value: 192.168.193.128
            - name: SEATA_PORT
              value: '32741'
            - name: TZ
              value: Asia/Shanghai
          resources: {}
          volumeMounts:
            - name: mall4j-seata
              readOnly: true
              mountPath: /seata-server/resources/application.yml
              subPath: ./application.yml
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
          imagePullPolicy: IfNotPresent
      restartPolicy: Always
      terminationGracePeriodSeconds: 30
      dnsPolicy: Default
      securityContext: {}
      schedulerName: default-scheduler
      dnsConfig: {}
  strategy:
    type: RollingUpdate
    rollingUpdate:
      maxUnavailable: 25%
      maxSurge: 25%
  revisionHistoryLimit: 10
  progressDeadlineSeconds: 600

---
kind: Deployment
apiVersion: apps/v1
metadata:
  name: mall4j-xxl-job
  namespace: mall4j-middleware
  labels:
    k8s.kuboard.cn/name: mall4j-xxl-job
  annotations: {}
spec:
  replicas: 1
  selector:
    matchLabels:
      k8s.kuboard.cn/name: mall4j-xxl-job
  template:
    metadata:
      creationTimestamp: null
      labels:
        k8s.kuboard.cn/name: mall4j-xxl-job
    spec:
      containers:
        - name: mall4j-xxl-job
          image: 'xuxueli/xxl-job-admin:2.4.0'
          env:
            - name: PARAMS
              value: >-
                --spring.datasource.url=jdbc:mysql://10.1.246.56:3306/xxl_job?Unicode=true&characterEncoding=UTF-8
                \ --spring.datasource.username=root \        
                --spring.datasource.password=hn02le.34lkdLKD \        
                --spring.mail.host=smtp.qq.com \ --spring.mail.port=25 \
                --spring.mail.username=xxxx@qq.com \        
                --spring.mail.password=xxxx \        
                --spring.mail.properties.mail.smtp.auth=true \        
                --spring.mail.properties.mail.smtp.starttls.enable=true
                \        
                --spring.mail.properties.mail.smtp.starttls.required=true
                \        
                --spring.mail.properties.mail.smtp.socketFactory.class=javax.net.ssl.SSLSocketFactory
                \         --xxl.job.accessToken=default_token \        
                --xxl.job.logretentiondays=7
          resources: {}
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
          imagePullPolicy: IfNotPresent
      restartPolicy: Always
      terminationGracePeriodSeconds: 30
      dnsPolicy: ClusterFirst
      securityContext: {}
      schedulerName: default-scheduler
  strategy:
    type: RollingUpdate
    rollingUpdate:
      maxUnavailable: 25%
      maxSurge: 25%
  revisionHistoryLimit: 10
  progressDeadlineSeconds: 600

---
kind: StatefulSet
apiVersion: apps/v1
metadata:
  name: mall4j-canal
  namespace: mall4j-middleware
  labels:
    k8s.kuboard.cn/name: mall4j-canal
spec:
  replicas: 1
  selector:
    matchLabels:
      k8s.kuboard.cn/name: mall4j-canal
  template:
    metadata:
      creationTimestamp: null
      labels:
        k8s.kuboard.cn/name: mall4j-canal
      annotations:
        kubectl.kubernetes.io/restartedAt: '2022-11-25T11:31:11+08:00'
    spec:
      volumes:
        - name: mall4j-canal
          nfs:
            server: 192.168.1.28
            path: /nfs/data/mall4j-middleware/mall4j-canal/
      containers:
        - name: mall4j-canal
          image: 'canal/canal-server:v1.1.5'
          resources: {}
          volumeMounts:
            - name: mall4j-canal
              mountPath: /home/admin/canal-server/conf/canal.properties
              subPath: ./conf/canal.properties
            - name: mall4j-canal
              mountPath: /home/admin/canal-server/conf/example
              subPath: ./conf/example
            - name: mall4j-canal
              mountPath: /home/admin/canal-server/logs
              subPath: ./logs
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
          imagePullPolicy: IfNotPresent
      restartPolicy: Always
      terminationGracePeriodSeconds: 30
      dnsPolicy: Default
      securityContext: {}
      schedulerName: default-scheduler
      dnsConfig: {}
  serviceName: mall4j-canal
  podManagementPolicy: OrderedReady
  updateStrategy:
    type: RollingUpdate
    rollingUpdate:
      partition: 0
  revisionHistoryLimit: 10

---
kind: StatefulSet
apiVersion: apps/v1
metadata:
  name: mall4j-mongodb
  namespace: mall4j-middleware
  labels:
    k8s.kuboard.cn/name: mall4j-mongodb
spec:
  replicas: 1
  selector:
    matchLabels:
      k8s.kuboard.cn/name: mall4j-mongodb
  template:
    metadata:
      creationTimestamp: null
      labels:
        k8s.kuboard.cn/name: mall4j-mongodb
    spec:
      volumes:
        - name: volume-immdf
          nfs:
            server: 192.168.1.28
            path: /nfs/data/mall4j-middleware/mall4j-mongo
      containers:
        - name: mall4j-mongodb
          image: 'mongo:6.0.1'
          env:
            - name: MONGO_INITDB_ROOT_USERNAME
              value: root
            - name: MONGO_INITDB_ROOT_PASSWORD
              value: 'hn02le.34lkdLKD'
          resources: {}
          volumeMounts:
            - name: volume-immdf
              mountPath: /data/db
              subPath: ./db
            - name: volume-immdf
              mountPath: /data/log
              subPath: ./log
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
          imagePullPolicy: IfNotPresent
      restartPolicy: Always
      terminationGracePeriodSeconds: 30
      dnsPolicy: ClusterFirst
      securityContext: {}
      schedulerName: default-scheduler
  serviceName: mall4j-mongodb
  podManagementPolicy: OrderedReady
  updateStrategy:
    type: RollingUpdate
    rollingUpdate:
      partition: 0
  revisionHistoryLimit: 10

---
kind: StatefulSet
apiVersion: apps/v1
metadata:
  name: mall4j-mysql
  namespace: mall4j-middleware
  labels:
    k8s.kuboard.cn/name: mall4j-mysql
spec:
  replicas: 1
  selector:
    matchLabels:
      k8s.kuboard.cn/name: mall4j-mysql
  template:
    metadata:
      creationTimestamp: null
      labels:
        k8s.kuboard.cn/name: mall4j-mysql
    spec:
      volumes:
        - name: mall4j-mysql
          nfs:
            server: 192.168.1.28
            path: /nfs/data/mall4j-middleware/mall4j-mysql
      containers:
        - name: mall4j-mysql
          image: 'mysql:8.0.35'
          env:
            - name: MYSQL_ROOT_PASSWORD
              value: 'hn02le.34lkdLKD'
            - name: TZ
              value: Asia/Shanghai
          resources:
            limits:
              cpu: '10'
              memory: 8Gi
          volumeMounts:
            - name: mall4j-mysql
              mountPath: /var/lib/mysql
              subPath: ./data
            - name: mall4j-mysql
              mountPath: /etc/mysql/conf.d
              subPath: ./conf.d
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
          imagePullPolicy: IfNotPresent
      restartPolicy: Always
      terminationGracePeriodSeconds: 30
      dnsPolicy: ClusterFirst
      securityContext: {}
      schedulerName: default-scheduler
  serviceName: mall4j-mysql
  podManagementPolicy: OrderedReady
  updateStrategy:
    type: RollingUpdate
    rollingUpdate:
      partition: 0
  revisionHistoryLimit: 10

---
kind: Deployment
apiVersion: apps/v1
metadata:
  name: mall4j-shardingsphere
  namespace: mall4j-middleware
  labels:
    k8s.kuboard.cn/name: mall4j-shardingsphere
  annotations: {}
spec:
  replicas: 1
  selector:
    matchLabels:
      k8s.kuboard.cn/name: mall4j-shardingsphere
  template:
    metadata:
      creationTimestamp: null
      labels:
        k8s.kuboard.cn/name: mall4j-shardingsphere
    spec:
      volumes:
        - name: mall4j-shardingsphere
          nfs:
            server: 192.168.1.28
            path: /nfs/data/mall4j-middleware/mall4j-shardingsphere/
      containers:
        - name: mall4j-shardingsphere
          image: 'apache/shardingsphere-proxy:5.4.1'
          env:
            - name: TZ
              value: Asia/Shanghai
          resources: {}
          volumeMounts:
            - name: mall4j-shardingsphere
              readOnly: true
              mountPath: /opt/shardingsphere-proxy/conf
              subPath: ./conf
            - name: mall4j-shardingsphere
              readOnly: true
              mountPath: /opt/shardingsphere-proxy/ext-lib
              subPath: ./ext-lib
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
          imagePullPolicy: IfNotPresent
      restartPolicy: Always
      terminationGracePeriodSeconds: 30
      dnsPolicy: Default
      securityContext: {}
      schedulerName: default-scheduler
      dnsConfig: {}
  strategy:
    type: RollingUpdate
    rollingUpdate:
      maxUnavailable: 25%
      maxSurge: 25%
  revisionHistoryLimit: 10
  progressDeadlineSeconds: 600

---
kind: Service
apiVersion: v1
metadata:
  name: mall4j-canal
  namespace: mall4j-middleware
  labels:
    k8s.kuboard.cn/name: mall4j-canal
spec:
  ports:
    - name: jzbsw3
      protocol: TCP
      port: 11111
      targetPort: 11111
      nodePort: 30195
  selector:
    k8s.kuboard.cn/name: mall4j-canal
  type: NodePort
  sessionAffinity: None
  externalTrafficPolicy: Cluster
  ipFamilies:
    - IPv4
  ipFamilyPolicy: SingleStack
  internalTrafficPolicy: Cluster

---
kind: Service
apiVersion: v1
metadata:
  name: mall4j-elasticsearch
  namespace: mall4j-middleware
  labels:
    k8s.kuboard.cn/name: mall4j-elasticsearch
spec:
  ports:
    - name: 7yaisb
      protocol: TCP
      port: 9200
      targetPort: 9200
      nodePort: 31752
    - name: jxai2k
      protocol: TCP
      port: 9300
      targetPort: 9300
      nodePort: 31099
  selector:
    k8s.kuboard.cn/name: mall4j-elasticsearch
  type: NodePort
  sessionAffinity: None
  externalTrafficPolicy: Cluster
  ipFamilies:
    - IPv4
  ipFamilyPolicy: SingleStack
  internalTrafficPolicy: Cluster

---
kind: Service
apiVersion: v1
metadata:
  name: mall4j-minio
  namespace: mall4j-middleware
  labels:
    k8s.kuboard.cn/name: mall4j-minio
spec:
  ports:
    - name: wsf6yb
      protocol: TCP
      port: 9000
      targetPort: 9000
      nodePort: 30681
  selector:
    k8s.kuboard.cn/name: mall4j-minio
  type: NodePort
  sessionAffinity: None
  externalTrafficPolicy: Cluster
  ipFamilies:
    - IPv4
  ipFamilyPolicy: SingleStack
  internalTrafficPolicy: Cluster

---
kind: Service
apiVersion: v1
metadata:
  name: mall4j-mongodb
  namespace: mall4j-middleware
  labels:
    k8s.kuboard.cn/name: mall4j-mongodb
spec:
  ports:
    - name: dxtw7e
      protocol: TCP
      port: 27017
      targetPort: 27017
      nodePort: 30598
  selector:
    k8s.kuboard.cn/name: mall4j-mongodb
  type: NodePort
  sessionAffinity: None
  externalTrafficPolicy: Cluster
  ipFamilies:
    - IPv4
  ipFamilyPolicy: SingleStack
  internalTrafficPolicy: Cluster

---
kind: Service
apiVersion: v1
metadata:
  name: mall4j-mysql
  namespace: mall4j-middleware
  labels:
    k8s.kuboard.cn/name: mall4j-mysql
spec:
  ports:
    - name: c5ii2b
      protocol: TCP
      port: 3306
      targetPort: 3306
      nodePort: 30268
  selector:
    k8s.kuboard.cn/name: mall4j-mysql
  type: NodePort
  sessionAffinity: None
  externalName: mall4j-mysql.mall4j-middleware
  externalTrafficPolicy: Cluster
  ipFamilies:
    - IPv4
  ipFamilyPolicy: SingleStack
  internalTrafficPolicy: Cluster

---
kind: Service
apiVersion: v1
metadata:
  name: mall4j-nacos
  namespace: mall4j-middleware
  labels:
    k8s.kuboard.cn/name: mall4j-nacos
spec:
  ports:
    - name: wyddfm
      protocol: TCP
      port: 8848
      targetPort: 8848
      nodePort: 30030
    - name: 3gxc5s
      protocol: TCP
      port: 9848
      targetPort: 9848
      nodePort: 31007
    - name: bmnej4
      protocol: TCP
      port: 9849
      targetPort: 9849
      nodePort: 31030
  selector:
    k8s.kuboard.cn/name: mall4j-nacos
  type: NodePort
  sessionAffinity: None
  externalTrafficPolicy: Cluster
  ipFamilies:
    - IPv4
  ipFamilyPolicy: SingleStack
  internalTrafficPolicy: Cluster

---
kind: Service
apiVersion: v1
metadata:
  name: mall4j-nginx
  namespace: mall4j-middleware
  labels:
    k8s.kuboard.cn/name: mall4j-nginx
spec:
  ports:
    - protocol: TCP
      port: 80
      targetPort: 80
  selector:
    k8s.kuboard.cn/name: mall4j-nginx
  type: ClusterIP
  sessionAffinity: None
  ipFamilies:
    - IPv4
  ipFamilyPolicy: SingleStack
  internalTrafficPolicy: Cluster

---
kind: Service
apiVersion: v1
metadata:
  name: mall4j-redis
  namespace: mall4j-middleware
  labels:
    k8s.kuboard.cn/name: mall4j-redis
spec:
  ports:
    - name: d7feys
      protocol: TCP
      port: 6379
      targetPort: 6379
      nodePort: 30272
  selector:
    k8s.kuboard.cn/name: mall4j-redis
  type: NodePort
  sessionAffinity: None
  externalTrafficPolicy: Cluster
  ipFamilies:
    - IPv4
  ipFamilyPolicy: SingleStack
  internalTrafficPolicy: Cluster

---
kind: Service
apiVersion: v1
metadata:
  name: mall4j-redis
  namespace: mall4j-middleware
  labels:
    k8s.kuboard.cn/name: mall4j-redis
spec:
  ports:
    - name: qhmx8a
      protocol: TCP
      port: 6379
      targetPort: 6379
      nodePort: 31377
  selector:
    k8s.kuboard.cn/name: mall4j-aof-redis
  type: NodePort
  sessionAffinity: None
  externalTrafficPolicy: Cluster
  ipFamilies:
    - IPv4
  ipFamilyPolicy: SingleStack
  internalTrafficPolicy: Cluster

---
kind: Service
apiVersion: v1
metadata:
  name: mall4j-rocketmq
  namespace: mall4j-middleware
  labels:
    k8s.kuboard.cn/name: mall4j-rocketmq
spec:
  ports:
    - name: ehmyty
      protocol: TCP
      port: 9876
      targetPort: 9876
      nodePort: 30582
    - name: febde3
      protocol: TCP
      port: 8080
      targetPort: 8080
      nodePort: 32179
  selector:
    k8s.kuboard.cn/name: mall4j-rocketmq
  type: NodePort
  sessionAffinity: None
  externalTrafficPolicy: Cluster
  ipFamilies:
    - IPv4
  ipFamilyPolicy: SingleStack
  internalTrafficPolicy: Cluster

---
kind: Service
apiVersion: v1
metadata:
  name: mall4j-rocketmq-broker
  namespace: mall4j-middleware
  labels:
    k8s.kuboard.cn/name: mall4j-rocketmq-broker
spec:
  ports:
    - name: amc2ct
      protocol: TCP
      port: 30909
      targetPort: 30909
      nodePort: 30909
    - name: pjjxc4
      protocol: TCP
      port: 30911
      targetPort: 30911
      nodePort: 30911
    - name: etidc6
      protocol: TCP
      port: 30912
      targetPort: 30912
      nodePort: 30912
  selector:
    k8s.kuboard.cn/name: mall4j-rocketmq-broker
  type: NodePort
  sessionAffinity: None
  externalTrafficPolicy: Cluster
  ipFamilies:
    - IPv4
  ipFamilyPolicy: SingleStack
  internalTrafficPolicy: Cluster

---
kind: Service
apiVersion: v1
metadata:
  name: mall4j-seata
  namespace: mall4j-middleware
  labels:
    k8s.kuboard.cn/name: mall4j-seata
spec:
  ports:
    - name: kr74bd
      protocol: TCP
      port: 32741
      targetPort: 32741
      nodePort: 32741
    - name: znjshi
      protocol: TCP
      port: 9080
      targetPort: 9080
      nodePort: 30788
    - name: 5fj4ac
      protocol: TCP
      port: 8091
      targetPort: 8091
      nodePort: 32728
  selector:
    k8s.kuboard.cn/name: mall4j-seata
  type: NodePort
  sessionAffinity: None
  externalTrafficPolicy: Cluster
  ipFamilies:
    - IPv4
  ipFamilyPolicy: SingleStack
  internalTrafficPolicy: Cluster

---
kind: Service
apiVersion: v1
metadata:
  name: mall4j-xxl-job
  namespace: mall4j-middleware
  labels:
    k8s.kuboard.cn/name: mall4j-xxl-job
spec:
  ports:
    - protocol: TCP
      port: 8080
      targetPort: 8080
      nodePort: 30218
  selector:
    k8s.kuboard.cn/name: mall4j-xxl-job
  type: NodePort
  sessionAffinity: None
  externalTrafficPolicy: Cluster
  ipFamilies:
    - IPv4
  ipFamilyPolicy: SingleStack
  internalTrafficPolicy: Cluster

---
kind: Service
apiVersion: v1
metadata:
  name: mall4j-shardingsphere
  namespace: mall4j-middleware
  labels:
    k8s.kuboard.cn/name: mall4j-shardingsphere
spec:
  ports:
    - protocol: TCP
      port: 3307
      targetPort: 3307
      nodePort: 30228
  selector:
    k8s.kuboard.cn/name: mall4j-shardingsphere
  type: NodePort
  sessionAffinity: None
  externalTrafficPolicy: Cluster
  ipFamilies:
    - IPv4
  ipFamilyPolicy: SingleStack
  internalTrafficPolicy: Cluster
