Kubernetes配置中心(ConfigMap)使用

Kubernetes配置中心(ConfigMap)使用

1.1-配置文件(以nginx为例)

kind: ConfigMap  # 指定类型
apiVersion: v1
metadata:
  name: config  # 配置名
  namespace: nginx  # 命名空间(不指定则默认为default)
data:
  # nginx的配置文件名(内容根据实际应用)
  # 同一个命名空间下,可以创建多个配置文件以供调用
  nginx.conf: |

    #user  nobody;
    worker_processes  2;

    #error_log  logs/error.log;
    #error_log  logs/error.log  notice;
    #error_log  logs/error.log  info;

    #pid        logs/nginx.pid;
    daemon off;

    events {
        worker_connections  1024;
    }


    http {
        include       mime.types;
        default_type  application/octet-stream;

        #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
        #                  '$status $body_bytes_sent "$http_referer" '
        #                  '"$http_user_agent" "$http_x_forwarded_for"';

        #access_log  logs/access.log  main;

        sendfile        on;
        #tcp_nopush     on;

        keepalive_timeout  0;
        #keepalive_timeout  65;

        server {
            listen   8888; #注意,此处的listen对应于/etc/fdfs/storage.conf中的http.server_port=8888
            server_name  localhost;
            client_max_body_size 10000M;
            location ~/group1/M00 {
                proxy_pass http://site4;
                if ($arg_attname ~ "^(.+)") {
                    add_header Content-Type application/x-download;
                    add_header Content-Disposition "attachment;filename=$arg_attnamee";
                    }
                root /opt/fastdfs_storage_data/data;
                ngx_fastdfs_module;
                }
        }


    }

1.2-pod中使用配置文件

此处为正常从本机挂载文件,和从配置中心挂在文件区别,还有通过pv远程挂载(点击可查看)

		# 此处为容器内部
        volumeMounts:
          - name: host-name  # 指定挂载的名
            mountPath: /etc/localtime  # 指定挂载到容器内部位置

          - name: nginx-config  # 指定挂在明
            mountPath: /usr/local/nginx/conf/nginx.conf  # 指定容器挂在位置
            # 此处需要使用subPath指定一下配置文件,当时测试时不指定无法读取配置配置中心的配置文件(可能是自己操作不当)
            subPath: nginx.conf  

	  # 此处与容器平级,可以同级创建多个以 -name区分操作即可
      volumes:
        - name: host-name  # 与容器内部挂载名同步
          hostPath:
            path: /etc/localtime  # 选择本地文件挂载到容器内部

        - name: nginx-config  # 与容器内部挂在明同步
          configMap:  # 此处指定为configMap类型
            name: config  # 此处config要与配置中心的配置name保持一致
            items:
              - key: nginx.conf  # 此处为配置中心的内部的配置文件名
                path: nginx.conf  # 由于没有配置path所以与配置文件名保持一致即可
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值