前言:
如今小伙伴们对“nginx配置中map”大概比较注意,大家都需要了解一些“nginx配置中map”的相关内容。那么小编同时在网络上汇集了一些对于“nginx配置中map””的相关资讯,希望我们能喜欢,我们一起来了解一下吧!1、挂载应用配置文件配置集ConfigMap
当有许多应用如redis、mysql,希望将它的配置文件挂载出去,以便随时修改,可以用ConfigMap配置集
具体用法查看以下ConfigMap配置集实战
2、挂载应用配置文件的敏感信息Secret
Secret 对象类型用来保存敏感信息,例如使用yaml创建应用时从私有仓库拉去镜像时需要密码、OAuth 令牌和 SSH 密钥。 将这些信息放在 secret 中比放在 Pod 的定义或者 容器镜像 中来说更加安全和灵活。
具体用法查看 以下Secret配置实战
3、ConfigMap配置集实战1、创建一个配置文件
如redis的配置文件,在其中添加相关配置内容,用于测试我们简单添加依据内容appendonly: yes
2、根据文件创建成配置集ConfigMap
配置集创建完成后,即可将源文件删除,因为配置文件已存储到了k8s的etcd中了
3、查询配置集
4、根据配置集名称查配置集详细信息
5、创建Pod应用同时挂载ConfigMap
redis-conf就是之前创建的配置集
apiVersion: v1kind: Podmetadata: name: redisspec: containers: - name: redis image: redis command: - redis-server - "/redis-master/redis.conf" #指的是redis容器内部的位置 ports: - containerPort: 6379 volumeMounts: - mountPath: /data name: data - mountPath: /redis-master name: config volumes: - name: data emptyDir: {} - name: config configMap: name: redis-conf items: - key: redis.conf path: redis.conf
执行命令 kubectl apply -f redis.yaml
"/redis-master/redis.conf" 指的是redis容器内部的位置,与创建好的配置集redis-conf对应
查询Pod状态 kubectl get pod,创建成功即可。
6、测试
可以到容器里修改/redis-master/redis.conf内容,也可以到直接修改配置集,会自动同步到容器里。
注意:对于应用本身的功能,如redis的一些应用,本身不支持配置的热更新,则需要重启才能使配置生效到应用本身中
7、修改配置集
4、Secret配置实战
当从私有仓库拉去镜像时,需要账户秘密,这时用Secret可以防止泄漏
1、创建Secret
命令格式
kubectl create secret docker-registry 可以自定义名称 \ --docker-server=<你的镜像仓库服务器> \ --docker-username=<你的用户名> \ --docker-password=<你的密码> \ --docker-email=<你的邮箱地址>如: kubectl create secret docker-registry yz-docker \--docker-username=111 \--docker-password=222 \--docker-email=22233@qq.com2、查看Secret配置
3、根据名称查看Secret详细信息
kubectl get secret yz-docker -oyaml 如下可看到数据被加密了
4、创建Pod应用同时使用Secret
kubectl apply -f secretdemo.yaml,如下内容imagePullSecrets指定了Secret名称。防止直接写明文到文件里了。
apiVersion: v1kind: Podmetadata: name: private-nginxspec: containers: - name: private-nginx image: yao/mynginx:v1.0 imagePullSecrets: - name: yz-docker
标签: #nginx配置中map