当前位置: 首页 > news >正文

做淘客网站企业备案做软件好还是做网站好

做淘客网站企业备案,做软件好还是做网站好,行业解决方案,室内设计网站参考Configmap概述 Configmap概述Configmap能解决哪些问题#xff1f;Configmap应用场景局限性 Configmap创建方法命令行直接创建通过文件创建指定目录创建configmap 编写configmap资源清单YAML文件使用Configmap通过环境变量引入#xff1a;使用configMapKeyRef通过环境变量引入… Configmap概述 Configmap概述Configmap能解决哪些问题Configmap应用场景局限性 Configmap创建方法命令行直接创建通过文件创建指定目录创建configmap 编写configmap资源清单YAML文件使用Configmap通过环境变量引入使用configMapKeyRef通过环境变量引入使用envfrom把configmap做成volume挂载到pod Configmap热更新 Configmap概述 Configmap是k8s中的资源对象用于保存非机密性的配置的数据可以用key/value键值对的形式保存也可通过文件的形式保存。 Configmap能解决哪些问题 我们在部署服务的时候每个服务都有自己的配置文件如果一台服务器上部署多个服务nginx、tomcat、apache等那么这些配置都存在这个节点上假如一台服务器不能满足线上高并发的要求需要对服务器扩容扩容之后的服务器还是需要部署多个服务nginx、tomcat、apache新增加的服务器上还是要管理这些服务的配置如果有一个服务出现问题需要修改配置文件每台物理节点上的配置都需要修改这种方式肯定满足不了线上大批量的配置变更要求。 所以k8s中引入了Configmap资源对象可以当成volume挂载到pod中实现统一的配置管理。 Configmap是k8s中的资源 相当于配置文件可以有一个或者多个ConfigmapConfigmap可以做成Volumek8s pod启动之后通过 volume 形式映射到容器内部指定目录上容器中应用程序按照原有方式读取容器特定目录上的配置文件。在容器看来配置文件就像是打包在容器内部特定目录整个过程对应用没有任何侵入。 Configmap应用场景 使用k8s部署应用当你将应用配置写进代码中更新配置时也需要打包镜像configmap可以将配置信息和docker镜像解耦以便实现镜像的可移植性和可复用性因为一个configMap其实就是一系列配置信息的集合可直接注入到Pod中给容器使用。configmap注入方式有两种一种将configMap做为存储卷一种是将configMap通过env中configMapKeyRef注入到容器中。使用微服务架构的话存在多个服务共用配置的情况如果每个服务中单独一份配置的话那么更新配置就很麻烦使用configmap可以友好的进行配置共享。 局限性 ConfigMap在设计上不是用来保存大量数据的。在ConfigMap中保存的数据不可超过1 MiB。如果你需要保存超出此尺寸限制的数据可以考虑挂载存储卷或者使用独立的数据库或者文件服务。 Configmap创建方法 命令行直接创建 直接在命令行中指定configmap参数创建通过–from-literal指定参数 kubectl create configmap tomcat-config --from-literaltomcat_port8080 --from-literalserver_namemyapp.tomcat.comkubectl describe configmap tomcat-config Name: tomcat-config Namespace: default Labels: none Annotations: none Dataserver_name: ---- myapp.tomcat.com tomcat_port: ---- 8080 Events: none通过文件创建 通过指定文件创建一个configmap–from-file文件 vim nginx.confserver {server_name www.nginx.com;listen 80;root /home/nginx/www/ } #定义一个key是www值是nginx.conf中的内容kubectl create configmap www-nginx --from-filewww./nginx.confkubectl describe configmap www-nginx Name: www-nginx Namespace: default Labels: none Annotations: noneDatawww: ---- server {server_name www.nginx.com;listen 80;root /home/nginx/www/ }指定目录创建configmap mkdir test-a cd test-a/cat my-server.cnf server-id1cat my-slave.cnf server-id2指定目录创建configmap kubectl create configmap mysql-config --from-file/root/test-a/查看configmap详细信息 kubectl describe configmap mysql-config Name: mysql-config Namespace: default Labels: none Annotations: none Datamy-server.cnf: ---- server-id1 my-slave.cnf: ---- server-id2 Events: none编写configmap资源清单YAML文件 cat mysql-configmap.yaml apiVersion: v1 kind: ConfigMap metadata:name: mysqllabels:app: mysql data:master.cnf: |[mysqld]log-binlog_bin_trust_function_creators1lower_case_table_names1slave.cnf: |[mysqld]super-read-onlylog_bin_trust_function_creators1使用Configmap 通过环境变量引入使用configMapKeyRef 创建一个存储mysql配置的configmap cat mysql-configmap.yaml apiVersion: v1 kind: ConfigMap metadata:name: mysqllabels:app: mysql data:log: 1lower: 1kubectl apply -f mysql-configmap.yaml创建pod引用Configmap中的内容 cat mysql-pod.yamlapiVersion: v1 kind: Pod metadata:name: mysql-pod spec:containers:- name: mysqlimage: busyboxcommand: [ /bin/sh, -c, sleep 3600 ]env:- name: log_bin #定义环境变量log_binvalueFrom: configMapKeyRef:name: mysql #指定configmap的名字key: log #指定configmap中的key- name: lower #定义环境变量lowervalueFrom:configMapKeyRef:name: mysqlkey: lowerrestartPolicy: Neverkubectl apply -f mysql-pod.yamlkubectl exec -it mysql-pod -- /bin/sh / # printenv log_bin1 lower1通过环境变量引入使用envfrom cat mysql-pod-envfrom.yaml apiVersion: v1 kind: Pod metadata:name: mysql-pod-envfrom spec:containers:- name: mysqlimage: busyboximagePullPolicy: IfNotPresentcommand: [ /bin/sh, -c, sleep 3600 ]envFrom: - configMapRef:name: mysql #指定configmap的名字restartPolicy: Neverkubectl apply -f mysql-pod-envfrom.yamlkubectl exec -it mysql-pod-envfrom -- /bin/sh / # printenv lower1 log1把configmap做成volume挂载到pod cat mysql-configmap.yaml apiVersion: v1 kind: ConfigMap metadata:name: mysqllabels:app: mysql data:log: 1lower: 1my.cnf: |[mysqld]Welcomehahakubectl apply -f mysql-configmap.yamlcat mysql-pod-volume.yaml apiVersion: v1 kind: Pod metadata:name: mysql-pod-volume spec:containers:- name: mysqlimage: busyboxcommand: [ /bin/sh,-c,sleep 3600 ]volumeMounts:- name: mysql-configmountPath: /tmp/configvolumes:- name: mysql-configconfigMap:name: mysqlrestartPolicy: Neverkubectl apply -f mysql-pod-volume.yamlkubectl exec -it mysql-pod-volume -- /bin/sh / # cd /tmp/config/ /tmp/config # ls log lower my.cnfConfigmap热更新 kubectl edit configmap mysql # 把logs: “1”变成log: “2”kubectl exec -it mysql-pod-volume -- /bin/sh / # cat /tmp/config/log 2发现log值变成了2更新生效了 更新 ConfigMap 后使用该 ConfigMap 挂载的 Env 不会同步更新 使用该 ConfigMap 挂载的 Volume 中的数据需要一段时间实测大概10秒才能同步更新
http://www.zqtcl.cn/news/692125/

相关文章:

  • 兰州市建设工程安全质量监督站网站优化公司治理
  • 高质量的合肥网站建设天津百度网站快速优化
  • 千元低价网站建设wordpress修改文章时间
  • 做网站需要几个程序wordpress淘客api
  • 建筑公司网站源码本地建站教程
  • 甘肃省建设厅官方网站信息网腾讯企点qq
  • 搜狗收录网站建个网络平台多少钱
  • 电子商务网站开发目的和意义郑州网站优化的微博_腾讯微博
  • asp.net网站建设项目实战 董义革wordpress伪静态规则访问失败
  • 网站添加锚点网站备案名称更换
  • 手机商城网站如何企业网站建设及运营现状分析
  • 网站建设注意的问题网站模板 知乎
  • 自主设计和创建网站网站建设价格便宜
  • 高手做网站财经资讯网站该怎么做推广
  • 加强农业网站建设青岛全网营销推广
  • 做淘客网站怎么样济南软件公司排名
  • 企业网站优化兴田德润怎么样网站建设建设公司资质要求
  • 如何把网站做跳转浏览器链接地址wordpress 离线更新
  • 乌海学校网站建设wordpress默认主题下载
  • 海兴县做网站如何选网站建设公司
  • asp网站设为首页代码孝仙洪高速公路建设指挥部网站
  • 浦东新区网站开发人才网站建设策划书
  • 网站做flash好不好免费微信公众号素材网
  • 开发网站嵌入广告汕头电商网站建设
  • 电脑做科目一网站购物网站怎么创建
  • c2c网站建设公司wordpress被公众号干掉
  • wordpress托管建站网站页面布局和样式设计
  • 建站平台江苏省建设监理协会网站
  • 安徽网站开发培训价格百度seo排名公司
  • 青海网站建设费用oa系统和erp系统区别