南宁网站建设优化排名如何选择佛山网站建设

张小明 2026/1/10 3:12:40
南宁网站建设优化排名,如何选择佛山网站建设,网站域名类型,做网站税费把 configmap 做成 volume#xff0c;挂载到 pod#xff08;常用#xff09;一、Configmap 概述什么是 Configmap#xff1f;Configmap 是 k8s 中的资源对象#xff0c;用于保存非机密性的配置的#xff0c;数据可以用 key/value 键值对的形式保存#xff0c;也可通过文…把 configmap 做成 volume挂载到 pod常用一、Configmap 概述什么是 ConfigmapConfigmap 是 k8s 中的资源对象用于保存非机密性的配置的数据可以用 key/value 键值对的形式保存也可通过文件的形式保存。Configmap 能解决哪些问题ConfigMap 的主要作用就是为了让镜像和配置文件解耦以便实现镜像的可移植性和可复用性。我们在部署服务的时候每个服务都有自己的配置文件如果一台服务器上部署多个服务nginx、nginx、apache 等那么这些配置都存在这个节点上假如一台服务 器不能满足线上高并发的要求需要对服务器扩容扩容之后的服务器还是需要部署 多个服务nginx、nginx、apache新增加的服务器上还是要管理这些服务的配置 如果有一个服务出现问题需要修改配置文件每台物理节点上的配置都需要修改 这种方式肯定满足不了线上大批量的配置变更要求。 所以k8s 中引入了 Configmap 资源对象可以当成 volume 挂载到 pod 中实现统一的配置管理。1、Configmap 是 k8s 中的资源 相当于配置文件可以有一个或者多个 Configmap2、Configmap 可以做成 Volumek8s pod 启动之后通过 volume 形式映射到容器内部指定目录上3、容器中应用程序按照原有方式读取容器特定目录上的配置文件。4、在容器看来配置文件就像是打包在容器内部特定目录整个过程对应用没有任何侵入。Configmap 应用场景1、使用 k8s 部署应用当你将应用配置写进代码中更新配置时也需要打包镜像configmap 可以将配置信息和 docker 镜像解耦以便实现镜像的可移植性和可复用性因为一个 configMap 其实就是一系列配置信息的集合可直接注入到 Pod 中给容器使用。configmap 注入方式有两种一种将 configMap 做为存储卷一种是将configMap 通过 env 中 configMapKeyRef 注入到容器中。2、使用微服务架构的话存在多个服务共用配置的情况如果每个服务中单独一份配置的话那么更新配置就很麻烦使用 configmap 可以友好的进行配置共享。使用 ConfigMap 的限制条件ConfigMap 需要在 Pod 启动前创建出来并且只有当 ConfigMap 和 Pod 处于同一命名空间时才可以被 Pod 引用当 Pod 挂载 ConfigMap 绑定的目录时目录下的目录并不会挂载到 Pod 内只有目录下的文件会被挂载。ConfigMap 在设计上不是用来保存大量数据的。在 ConfigMap 中保存的数据不可超过 1MiB。如果你需要保存超出此尺寸限制的数据可以考虑挂载存储卷或者使用独立的数据库或者文件服务。二、Configmap 创建方法命令行直接创建直接在命令行中指定 configmap 参数创建通过--from-literal 指定参数[rootk8s-master01 ~]# kubectl create configmap nginx-config --from-literalnginx_port8080 --from-literalserver_namemyapp.nginx.com [rootk8s-master01 ~]# kubectl get configmap NAME DATA AGE kube-root-ca.crt 1 13d nginx-config 2 51s [rootk8s-master01 ~]# kubectl get cm NAME DATA AGE kube-root-ca.crt 1 13d nginx-config 2 66s [rootk8s-master01 ~]# kubectl describe configmap nginx-config Name: nginx-config Namespace: default Labels: none Annotations: none Data server_name: ---- nginx.jx.com nginx_port: ---- 8080 BinaryData Events: none ###查看创建的configmap的yaml信息 [rootk8s-master01 ~]# kubectl get cm nginx-config -o yaml apiVersion: v1 data: server_name: nginx.jx.com nginx_port: 8080 kind: ConfigMap metadata: creationTimestamp: 2024-02-01T06:57:54Z name: nginx-config namespace: default resourceVersion: 616425 uid: 062bd992-202a-4ac3-a578-32542792a43a创建选项解析以下是整理后的参数表格包含参数名称和含义说明参数名称含义说明--allow-missing-template-keys设置为true时忽略模板中字段或映射键缺失导致的错误--append-hash将configmap的哈希值附加到名称后--as-group指定操作时模拟的组可重复使用--as-uid指定操作时模拟的用户ID--as指定操作时模拟的用户名普通用户或服务账户--cache-dir默认缓存目录路径--certificate-authorityCA证书文件路径用于验证服务器证书--client-certificateTLS客户端证书文件路径--client-keyTLS客户端密钥文件路径--cluster指定kubeconfig中的集群名称--context指定kubeconfig中的上下文名称--disable-compression设置为true时禁用请求压缩--dry-run模拟执行模式none/server/client--field-manager字段所有权管理器名称--from-env-file从键值对文件创建configmap--from-file使用文件内容作为configmap的值文件名作为键--from-literal直接指定键值对插入configmap--help显示帮助信息--insecure-skip-tls-verify跳过服务器证书验证不安全--kubeconfig指定kubeconfig文件路径--log-flush-frequency日志刷新间隔秒数--match-server-version要求服务器与客户端版本匹配--namespace指定请求的命名空间范围--output输出格式json/yaml/name等--passwordAPI服务器基本认证密码--profile性能分析类型cpu/heap等--profile-output性能分析结果输出文件名--request-timeout单次请求超时时间--save-config保存对象配置到注释中--serverKubernetes API服务器地址--show-managed-fields输出时保留managedFields字段--template模板字符串/文件路径配合go-template输出--tls-server-name服务器证书验证名称--tokenAPI服务器认证令牌--usernameAPI服务器基本认证用户名--user指定kubeconfig用户名称--validate配置验证级别strict/warn/ignore--vmodule基于文件过滤的日志设置--v日志详细级别--warnings-as-errors将服务器警告视为错误并以非零状态退出通过文件创建常用通过指定文件创建一个 configmap--from-file文件若没有定义key则使用文件名作为key文件内容作为value。以下是关于www.conf: |作用的解释表格并补充了相关 YAML 多行文本语法说明YAML 多行文本语法表格语法符号名称作用示例|块折叠符保留换行符末尾换行符会被截断文本内容原样显示适合配置文件场景yamlbrcontent: |br line1br line2br\-块截断符折叠换行符为空格末尾换行符会被截断yamlbrcontent: -br line1br line2br|块保留符保留所有换行符包括末尾yamlbrcontent: |br line1br line2brbr块折叠保留折叠换行符为空格但保留末尾换行符yamlbrcontent: br line1br line2brbr指定目录创建 configmap常用apiVersion: v1 data: mysql.cnf: | server_id1 mysql2.cnf: | server_id2 kind: ConfigMap metadata: creationTimestamp: 2024-02-01T07:16:32Z name: mysql-cnf namespace: default resourceVersion: 618449 uid: 3fc1c8ef-5ddd-477b-bc52-2ecf2de86e25#使用 envfrom变量 [rootk8s-master01 ~]# cat mysql-pod-envfrom.yaml apiVersion: v1 kind: Pod metadata: name: mysql-pod-envfrom spec: containers: - name: mysql image: busybox:1.28 imagePullPolicy: IfNotPresent command: [ /bin/sh, -c, sleep 3600 ] envFrom: - configMapRef: name: mysql #指定configmap的名字 restartPolicy: Never #更新资源清单文件 [rootk8s-master01 ~]# kubectl apply -f mysql-pod-envfrom.yaml pod/mysql-pod-envfrom created [rootk8s-master01 ~]# kubectl get pods NAME READY STATUS RESTARTS AGE mysql-pod 1/1 Running 0 13m mysql-pod-envfrom 1/1 Running 0 107s [rootk8s-master01 ~]# kubectl exec -it mysql-pod-envfrom -c mysql -- /bin/sh / # env KUBERNETES_PORTtcp://10.10.0.1:443 KUBERNETES_SERVICE_PORT443 HOSTNAMEmysql-pod-envfrom NGINX_SVC_NODEPORT_PORT_8000_TCP_ADDR10.10.166.16 SHLVL1 HOME/root NGINX_SVC_NODEPORT_PORT_8000_TCP_PORT8000 NGINX_SVC_NODEPORT_PORT_8000_TCP_PROTOtcp SERVICE_BLUE_SERVICE_HOST10.10.157.201 NGINX_SVC_NODEPORT_SERVICE_HOST10.10.166.16 SERVICE_BLUE_SERVICE_PORT80 SERVICE_BLUE_PORTtcp://10.10.157.201:80 NGINX_SVC_NODEPORT_PORT_8000_TCPtcp://10.10.166.16:8000 TERMxterm lower1 KUBERNETES_PORT_443_TCP_ADDR10.10.0.1 NGINX_SVC_NODEPORT_PORTtcp://10.10.166.16:8000 NGINX_SVC_NODEPORT_SERVICE_PORT8000 PATH/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin log1 KUBERNETES_PORT_443_TCP_PORT443 SERVICE_BLUE_PORT_80_TCP_ADDR10.10.157.201 KUBERNETES_PORT_443_TCP_PROTOtcp SERVICE_BLUE_PORT_80_TCP_PORT80 SERVICE_BLUE_PORT_80_TCP_PROTOtcp KUBERNETES_PORT_443_TCPtcp://10.10.0.1:443 KUBERNETES_SERVICE_PORT_HTTPS443 KUBERNETES_SERVICE_HOST10.10.0.1 PWD/ SERVICE_BLUE_PORT_80_TCPtcp://10.10.157.201:80把 configmap 做成 volume挂载到 pod常用[rootk8s-master01 ~]# cat mysql-configmap.yaml apiVersion: v1 kind: ConfigMap metadata: name: mysql labels: app: mysql data: log: 1 lower: 1 my.cnf: | [mysqld] welcomeduoduo [rootk8s-master01 ~]# kubectl apply -f mysql-configmap.yaml configmap/mysql configured #查看详细配置信息 [rootk8s-master01 ~]# kubectl describe configmap mysql Name: mysql Namespace: default Labels: appmysql Annotations: none Data log: ---- 1 lower: ---- 1 my.cnf: ---- [mysqld] welcomeduoduo BinaryData Events: none #创建pod资源清单文件挂载configmap卷 [rootk8s-master01 ~]# cat mysql-pod-volume.yaml apiVersion: v1 kind: Pod metadata: name: mysql-pod-volume spec: containers: - name: mysql image: busybox:1.28 imagePullPolicy: IfNotPresent command: [ /bin/sh,-c,sleep 3600 ] volumeMounts: - name: mysql-config mountPath: /tmp/config volumes: - name: mysql-config configMap: name: mysql restartPolicy: Never [rootk8s-master01 ~]# kubectl apply -f mysql-pod-volume.yaml pod/mysql-pod-volume created [rootk8s-master01 configmap]# kubectl exec -it mysql-pod-volume -- /bin/sh / # / # / # / # cd /tmp/config/ /tmp/config # ls log lower my.cnf /tmp/config # ls -l total 0 lrwxrwxrwx 1 root root 10 Feb 1 08:12 log - ..data/log lrwxrwxrwx 1 root root 12 Feb 1 08:12 lower - ..data/lower lrwxrwxrwx 1 root root 13 Feb 1 08:12 my.cnf - ..data/my.cnf四、Configmap 热更新仅限于卷的形式如果是环境变量的形式则不更新限于应用程序能够对配置文件进行动态感知。nginx不行需要在apply之后对pod执行命令nginx -s reload[rootk8s-master01 ~]# kubectl edit configmap mysql #将log:1 变成 log:2 apiVersion:v1 data: log:2 lower:1重新执行一次资源清单文件[rootk8s-master01 test1]# kubectl apply -f mysql-pod-volume.yaml pod/mysql-pod-volume configured [rootk8s-master01 ~]# kubectl exec -it mysql-pod-volume -- /bin/sh / # cat /tmp/config/log 2/ # #一次构建镜像通过配置管理中心configmap 实现了 多场景运行
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

dnf做心悦宠物的网站seo的理解

链接:https://pan.quark.cn/s/6eb332dc88cb支持平台:#Windows #macOS #Linux #Android一款影视播放器,支持视频点播(VOD)和JavaScript扩展源。可以通过简单的操作快速找到并播放自己喜欢的影视内容。支持多种视频格式&…

张小明 2026/1/7 13:53:43 网站建设

专业的建网站的公司php和mysql网站毕业设计

WinCDEmu作为Windows平台最强大的开源虚拟光驱工具,彻底改变了传统光盘使用方式。这款驱动级软件让您无需任何物理设备,就能轻松挂载ISO、CUE、CCD、NRG等主流映像格式,实现真正的数字光盘管理革命。 【免费下载链接】WinCDEmu 项目地址: …

张小明 2026/1/7 13:53:10 网站建设

桃花岛网站是什么怀化找工作网站

OpenLayers与AI智能地图:从零构建空间特征识别系统 【免费下载链接】openlayers OpenLayers 项目地址: https://gitcode.com/gh_mirrors/op/openlayers 你是否遇到过这样的困境:手头有大量地理空间数据,却苦于无法快速识别其中的重要特…

张小明 2026/1/7 13:52:38 网站建设

自助建站设计工作主要包括各大网站头条

深入多层板PCB制造:从设计到量产的工艺链全解析你有没有遇到过这样的情况?明明仿真结果完美,原理图无懈可击,Layout也通过了所有规则检查——可当第一批PCB回来焊接时,BGA却频频虚焊;或者高速信号眼图严重畸…

张小明 2026/1/7 13:52:05 网站建设

源码网站开发宁波建设网 公积金网点

工业质检升级:YOLO助力智能制造转型 在现代电子制造工厂的SMT生产线上,每分钟有数百块PCB板高速流转。传统质检依赖工人肉眼在显微镜下逐个检查焊点质量——长时间重复作业带来的视觉疲劳不可避免地导致漏检率上升,而人工成本却逐年攀升。某…

张小明 2026/1/8 20:36:44 网站建设