diff --git a/client-k8s.yaml b/client-k8s.yaml new file mode 100644 index 0000000..162b42c --- /dev/null +++ b/client-k8s.yaml @@ -0,0 +1,458 @@ + +--- +kind: Deployment +apiVersion: apps/v1 +metadata: + name: wu-lazy-cloud-heartbeat-local-client-start + namespace: default + labels: + k8s.kuboard.cn/layer: monitor + k8s.kuboard.cn/name: wu-lazy-cloud-heartbeat-local-client-start + annotations: + k8s.kuboard.cn/displayName: 内网穿透服务端(云下) +spec: + replicas: 1 + selector: + matchLabels: + k8s.kuboard.cn/layer: monitor + k8s.kuboard.cn/name: wu-lazy-cloud-heartbeat-local-client-start + template: + metadata: + creationTimestamp: null + labels: + k8s.kuboard.cn/layer: monitor + k8s.kuboard.cn/name: wu-lazy-cloud-heartbeat-local-client-start + annotations: + kubectl.kubernetes.io/restartedAt: '2025-01-16T22:39:39+08:00' + spec: + containers: + - name: wu-lazy-cloud-heartbeat-local-client-start + image: >- + registry.cn-hangzhou.aliyuncs.com/wu-lazy/wu-lazy-cloud-heartbeat-client-start:1.3.0-JDK17-SNAPSHOT + env: + - name: spring.lazy.netty.client.inet-host + value: 124.222.48.62 + - name: spring.lazy.netty.client.inet-port + value: '30560' + - name: spring.lazy.netty.client.client-id + value: tencent + - name: JAVA_OPTS + value: '-Xms32m -Xmx64m' + - name: logging1.level.root + value: DEBUG + resources: {} + terminationMessagePath: /dev/termination-log + terminationMessagePolicy: File + imagePullPolicy: Always + securityContext: + privileged: true + runAsUser: 0 + 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: cloud-mysql + namespace: default + labels: + k8s.eip.work/layer: db + k8s.eip.work/name: cloud-mysql + k8s.kuboard.cn/name: cloud-mysql + annotations: + analysis.crane.io/replicas-recommendation: | + replicas: 1 + analysis.crane.io/resource-recommendation: | + containers: + - containerName: mysql + target: + cpu: 229m + memory: 2070Mi + k8s.eip.work/displayName: 数据库 + k8s.eip.work/ingress: 'false' + k8s.eip.work/service: NodePort + k8s.eip.work/workload: cloud-mysql + k8s.kuboard.cn/workload: cloud-mysql +spec: + replicas: 0 + selector: + matchLabels: + k8s.eip.work/layer: db + k8s.eip.work/name: cloud-mysql + k8s.kuboard.cn/name: cloud-mysql + template: + metadata: + creationTimestamp: null + labels: + k8s.eip.work/layer: db + k8s.eip.work/name: cloud-mysql + k8s.kuboard.cn/name: cloud-mysql + annotations: + kubectl.kubernetes.io/restartedAt: '2023-10-07T09:38:51+08:00' + spec: + volumes: + - name: mysql-cnf-map + configMap: + name: mysql-cnf + items: + - key: cnf + path: custom.cnf + defaultMode: 420 + - name: tz + hostPath: + path: /usr/share/zoneinfo/Asia/Shanghai + type: File + containers: + - name: mysql + image: 'mysql:8.0.28' + env: + - name: MYSQL_ROOT_PASSWORD + value: wujiawei + resources: + limits: + cpu: 500m + memory: 512Mi + requests: + cpu: 500m + memory: 512Mi + volumeMounts: + - name: mysql-data + mountPath: /var/lib/mysql + - name: mysql-cnf-map + mountPath: /etc/mysql/conf.d/custom.cnf + subPath: custom.cnf + - name: tz + mountPath: /etc/localtime + terminationMessagePath: /dev/termination-log + terminationMessagePolicy: File + imagePullPolicy: IfNotPresent + restartPolicy: Always + terminationGracePeriodSeconds: 30 + dnsPolicy: ClusterFirst + securityContext: {} + schedulerName: default-scheduler + volumeClaimTemplates: + - kind: PersistentVolumeClaim + apiVersion: v1 + metadata: + name: mysql-data + creationTimestamp: null + annotations: + k8s.eip.work/pvcType: Dynamic + spec: + accessModes: + - ReadWriteMany + resources: + requests: + storage: 10Gi + storageClassName: nfs-storage + volumeMode: Filesystem + status: + phase: Pending + serviceName: cloud-mysql + podManagementPolicy: OrderedReady + updateStrategy: + type: RollingUpdate + rollingUpdate: + partition: 0 + revisionHistoryLimit: 10 + persistentVolumeClaimRetentionPolicy: + whenDeleted: Retain + whenScaled: Retain + +--- +kind: Service +apiVersion: v1 +metadata: + name: cloud-mysql + namespace: default + labels: + k8s.eip.work/layer: db + k8s.eip.work/name: cloud-mysql + k8s.kuboard.cn/name: cloud-mysql +spec: + ports: + - name: zmac2s + protocol: TCP + port: 3306 + targetPort: 3306 + nodePort: 30512 + selector: + k8s.eip.work/layer: db + k8s.eip.work/name: cloud-mysql + type: NodePort + sessionAffinity: None + externalTrafficPolicy: Cluster + ipFamilies: + - IPv4 + ipFamilyPolicy: SingleStack + internalTrafficPolicy: Cluster + +--- +kind: Service +apiVersion: v1 +metadata: + name: wu-lazy-cloud-heartbeat-local-client-start + namespace: default + labels: + k8s.kuboard.cn/layer: monitor + k8s.kuboard.cn/name: wu-lazy-cloud-heartbeat-local-client-start +spec: + ports: + - name: net + protocol: TCP + port: 6001 + targetPort: 6001 + - name: nas + protocol: TCP + port: 100 + targetPort: 100 + - name: kuboard + protocol: TCP + port: 101 + targetPort: 101 + - name: netty-client + protocol: TCP + port: 6004 + targetPort: 6004 + - name: nas-web-dav + protocol: TCP + port: 102 + targetPort: 102 + - name: rustdesk + protocol: TCP + port: 103 + targetPort: 103 + - name: nastool + protocol: TCP + port: 104 + targetPort: 104 + - name: jellyfin + protocol: TCP + port: 105 + targetPort: 105 + - name: qb + protocol: TCP + port: 106 + targetPort: 106 + - name: jackett + protocol: TCP + port: 107 + targetPort: 107 + - name: rustdesk-tcp + protocol: TCP + port: 108 + targetPort: 108 + - name: rustdesk-ip-tcp + protocol: TCP + port: 109 + targetPort: 109 + - name: rustdesk-ip-udp + protocol: UDP + port: 109 + targetPort: 109 + - name: nas-ssh + protocol: TCP + port: 110 + targetPort: 110 + selector: + k8s.kuboard.cn/layer: monitor + k8s.kuboard.cn/name: wu-lazy-cloud-heartbeat-local-client-start + type: ClusterIP + sessionAffinity: None + ipFamilies: + - IPv4 + ipFamilyPolicy: SingleStack + internalTrafficPolicy: Cluster + +--- +kind: Ingress +apiVersion: networking.k8s.io/v1 +metadata: + name: wu-lazy-cloud-heartbeat-local-client-start + namespace: default + labels: + k8s.kuboard.cn/layer: monitor + k8s.kuboard.cn/name: wu-lazy-cloud-heartbeat-local-client-start +spec: + ingressClassName: traefik + rules: + - host: net.wu-framework.cn + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: wu-lazy-cloud-heartbeat-local-client-start + port: + number: 6001 + - host: nas.wu-framework.cn + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: wu-lazy-cloud-heartbeat-local-client-start + port: + number: 100 + - host: kuboard.wu-framework.cn + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: wu-lazy-cloud-heartbeat-local-client-start + port: + number: 101 + - host: client.wu-framework.cn + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: wu-lazy-cloud-heartbeat-local-client-start + port: + number: 6004 + - host: nas-dav.wu-framework.cn + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: wu-lazy-cloud-heartbeat-local-client-start + port: + number: 102 + - host: rustdesk.wu-framework.cn + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: wu-lazy-cloud-heartbeat-local-client-start + port: + number: 103 + - host: nastool.wu-framework.cn + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: wu-lazy-cloud-heartbeat-local-client-start + port: + number: 104 + - host: jellyfin.wu-framework.cn + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: wu-lazy-cloud-heartbeat-local-client-start + port: + number: 105 + - host: qb.wu-framework.cn + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: wu-lazy-cloud-heartbeat-local-client-start + port: + number: 106 + - host: jackett.wu-framework.cn + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: wu-lazy-cloud-heartbeat-local-client-start + port: + number: 107 + - host: rustdesk-tcp.wu-framework.cn + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: wu-lazy-cloud-heartbeat-local-client-start + port: + number: 108 + - host: rustdesk-ip.wu-framework.cn + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: wu-lazy-cloud-heartbeat-local-client-start + port: + number: 109 + - host: nas-ssh.wu-framework.cn + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: wu-lazy-cloud-heartbeat-local-client-start + port: + number: 110 + +--- +kind: ConfigMap +apiVersion: v1 +metadata: + name: mysql-cnf + namespace: default +data: + cnf: >- + [mysql] + + no-auto-rehash + + [mysqld] + + skip-host-cache + + skip-name-resolve + + max_connections=1000 + + lower_case_table_names=0 + + default-time-zone='+08:00' + + sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' + + log_timestamps='SYSTEM' + + slow_query_log=ON + + + binlog_expire_logs_seconds = 2 + + innodb_flush_log_at_trx_commit=2 + + group_concat_max_len=1024 +