apiVersion: apps/v1 kind: StatefulSet metadata: name: mpos-fastdfs-tracker namespace: uen labels: app: mpos-fastdfs-tracker spec: replicas: 1 selector: matchLabels: app: mpos-fastdfs-tracker template: metadata: labels: app: mpos-fastdfs-tracker spec: containers: - name: mpos-fastdfs-tracker #image: registry.cn-hangzhou.aliyuncs.com/zhengyu1992/fastdfs:zy5447 image: harbor.uenpay.com/base/fastdfs:zy5447 imagePullPolicy: Always #imagePullPolicy: IfNotPresent resources: limits: cpu: '2' memory: 4Gi requests: cpu: 100m memory: 1Gi command: ["/bin/bash", "/usr/bin/start1.sh","tracker"] --- apiVersion: v1 kind: Service metadata: name: mpos-fastdfs-tracker namespace: uen labels: app: mpos-fastdfs-tracker spec: ports: - port: 22122 protocol: TCP targetPort: 22122 selector: app: mpos-fastdfs-tracker --- apiVersion: apps/v1 kind: StatefulSet metadata: name: mpos-fastdfs-uenpay namespace: uen labels: app: mpos-fastdfs-uenpay spec: replicas: 1 selector: matchLabels: app: mpos-fastdfs-uenpay template: metadata: labels: app: mpos-fastdfs-uenpay spec: containers: - name: mpos-fastdfs-uenpay #image: registry.cn-hangzhou.aliyuncs.com/zhengyu1992/fastdfs:zy5447 image: harbor.uenpay.com/base/fastdfs:zy5447 imagePullPolicy: Always #imagePullPolicy: IfNotPresent command: ["/bin/bash", "/usr/bin/start1.sh","storage"] env: - name: TRACKER_SERVER value: mpos-fastdfs-tracker:22122 - name: GROUP_NAME value: uenpay volumeMounts: - name: data mountPath: /var/fdfs volumeClaimTemplates: - metadata: name: data annotations: volume.beta.kubernetes.io/storage-class: "cephrbd-sc" spec: accessModes: - ReadWriteOnce resources: requests: storage: 30Gi --- apiVersion: v1 kind: Service metadata: name: mpos-fastdfs-uenpay namespace: uen labels: app: mpos-fastdfs-uenpay spec: ports: - name: server port: 23000 protocol: TCP targetPort: 23000 - name: http port: 8888 protocol: TCP targetPort: 8888 selector: app: mpos-fastdfs-uenpay --- apiVersion: v1 kind: ConfigMap metadata: name: mpos-fastdfs-nginx-config namespace: uen data: nginx.conf: | user root; worker_processes 4; #error_log logs/error.log info; events { worker_connections 1024; use epoll; } http { include mime.types; default_type application/octet-stream; sendfile on; tcp_nopush on; keepalive_timeout 65; server_names_hash_bucket_size 128; client_header_buffer_size 32k; large_client_header_buffers 4 32k; client_max_body_size 300m; proxy_redirect off; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_connect_timeout 90; proxy_send_timeout 90; proxy_read_timeout 90; proxy_buffer_size 16k; proxy_buffers 4 64k; proxy_busy_buffers_size 128k; proxy_temp_file_write_size 128k; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; #include ./conf.d/*.conf; #upstream start upstream mpos_fdfs_tracker { server mpos-fastdfs-tracker:22122 weight=100 max_fails=2 fail_timeout=10s; } upstream mpos_fdfs_uenpay { server mpos-fastdfs-uenpay:8888 weight=100 max_fails=2 fail_timeout=10s; } #upstream end #server start server { listen 80; listen [::]:80 default_server; server_name _; #access_log /var/log/access.log main; #error_log /var/log/error.log info; location ^~ /uenpay { proxy_next_upstream http_502 http_504 error timeout invalid_header; proxy_cache_valid 200 304 12h; proxy_cache_key $uri$is_args$args; add_header 'Access-Control-Allow-Origin' $http_origin; add_header 'Access-Control-Allow-Credentials' 'true'; add_header "Access-Control-Allow-Methods" "GET, POST, HEAD, PUT, DELETE, OPTIONS, PATCH"; add_header "Access-Control-Allow-Headers" "Origin, No-Cache, Authorization, X-Requested-With, If-Modified-Since, Pragma, Last-Modified, Cache-Control, Expires, Content-Type"; if ($request_method = 'OPTIONS') { return 200 'OK'; } proxy_pass http://mpos_fdfs_uenpay; } } server { listen 22122; server_name localhost; location / { proxy_pass http://mpos_fdfs_tracker; } } #server end } --- apiVersion: apps/v1 kind: Deployment metadata: name: mpos-fastdfs-nginx namespace: uen labels: app: mpos-fastdfs-nginx spec: replicas: 1 selector: matchLabels: app: mpos-fastdfs-nginx template: metadata: labels: app: mpos-fastdfs-nginx spec: containers: - name: nginx #image: nginx:1.22.0 image: harbor.uenpay.com/base/nginx:1.22.0 #image: registry.cn-hangzhou.aliyuncs.com/zhengyu1992/nginx:1.22.0 volumeMounts: - name: config mountPath: /etc/nginx/nginx.conf subPath: nginx.conf volumes: - name: config configMap: name: mpos-fastdfs-nginx-config --- apiVersion: v1 kind: Service metadata: name: mpos-fastdfs-nginx namespace: uen labels: app: mpos-fastdfs-nginx spec: ports: - port: 80 name: mpos-fastdfs-nginx protocol: TCP targetPort: 80 - port: 22122 name: tracker-22122 protocol: TCP targetPort: 22122 selector: app: mpos-fastdfs-nginx --- apiVersion: networking.k8s.io/v1 kind: Ingress metadata: annotations: nginx.ingress.kubernetes.io/ssl-redirect: 'true' name: mpos-fastdfs-nginx namespace: uen spec: ingressClassName: nginx rules: - host: mpos-fastdfs.uenpay.com http: paths: - backend: service: name: mpos-fastdfs-nginx port: number: 80 path: / pathType: Prefix tls: - hosts: - mpos-fastdfs.uenpay.com secretName: uenpay.com