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

郴州网站网页设计与制作代码成品

郴州网站,网页设计与制作代码成品,随州公司做网站,苏州市城乡建设局网站目录 一、ConfigMap概述 二、ConfigMap创建 2.1、命令行方式创建 2.2、yaml 文件方式创建 三、ConfigMap查询 四、ConfigMap更新 4.1、kubectl edit方式 4.2、kubectl apply方式 五、ConfigMap使用 5.1、spec.env 【环境变量】 5.2、spec.envFrom 【环境变量】 5.3…目录 一、ConfigMap概述 二、ConfigMap创建 2.1、命令行方式创建 2.2、yaml 文件方式创建 三、ConfigMap查询 四、ConfigMap更新 4.1、kubectl edit方式 4.2、kubectl apply方式 五、ConfigMap使用 5.1、spec.env 【环境变量】 5.2、spec.envFrom 【环境变量】 5.3、指定 items【卷挂载方式】 5.4、不指定 items【卷挂载方式】 六、ConfigMap删除 一、ConfigMap概述 ConfigMap 功能在 Kubernetes1.2 版本中引入许多应用程序会从配置文件、命令行参数或环境变量中读取配 置信息。ConfigMap API给我们提供了向容器中注入配置信息的机制ConfigMap 可以被用来保存单个属性也可以用来保存整个配置文件或者JSON 二进制大对象 。 ConfigMap 的主要作用就是为了让镜像和配置文件解耦以便实现镜像的可移植性和可复用性。 注意ConfigMap 并不提供保密或者加密功能。 如果你想存储的数据是加密的请使用 Secret 或者使用其他第三方工具来保证你的数据的私密性而不是用 ConfigMap。 二、ConfigMap创建 2.1、命令行方式创建 读取文件方式也可以是目录通过--from-file参数从文件中读取可以指定 key 的名称若不指定则默认使用文件名为key。--from-file指定在目录下的所有文件都会被用在 ConfigMap 里边创建一个键值对键的名字就是文件名值就是文件里内容。 vim configmap-file.properties version:1.0 environment:dev 创建ConfigMap $ vim configmap-file.properties# 通过kubectl create configmap创建ConfigMap $ kubectl create configmap from-file-configmap --from-fileconfigmap-file.properties configmap/from-file-configmap created$ kubectl get configmap/from-file-configmap NAME DATA AGE from-file-configmap 1 25s# 查看ConfigMap的yaml资源清单 $ kubectl get configmap/from-file-configmap -o yaml apiVersion: v1 data:configmap-file.properties: | # ConfigMap的数据换行的话冒号后面需要加 |version:1.0environment:dev kind: ConfigMap metadata:creationTimestamp: 2023-01-05T05:33:28Zname: from-file-configmapnamespace: defaultresourceVersion: 3179uid: a9f17c3a-af94-4a9a-9145-e06f3d3bf030 当然我们也可以通过--from-literal参数可以指定多个手动指定ConfigMap中的键值对。如下 $ kubectl create configmap cm-test --from-literalMYSQL_ROOT_USERNAMEroot --from-literalMYSQL_ROOT_PASSWORD123456 configmap/cm-test created$ kubectl describe cm cm-test Name: cm-test Namespace: default Labels: none Annotations: noneDataMYSQL_ROOT_PASSWORD: ---- 123456 MYSQL_ROOT_USERNAME: ---- rootBinaryData2.2、yaml 文件方式创建 创建资源清单vim configmap.yaml apiVersion: v1 data: # ConfigMap的Key 和 Value。 每一个键都映射到一个简单的值version: 1.0 # 需要注意yaml的语法key和value之间需要有空格environment: dev # 定义一个变量值类型为字符串需要加引号 kind: ConfigMap metadata:name: from-yaml-configmap 创建ConfigMap $ vim configmap.yaml $ kubectl apply -f configmap.yaml configmap/from-yaml-configmap created$ kubectl get cm NAME DATA AGE from-file-configmap 1 11m from-yaml-configmap 2 19s kube-root-ca.crt 1 13d 三、ConfigMap查询 # 查看 configmap 列表 $ kubectl get configmap NAME DATA AGE from-file-configmap 1 13m from-yaml-configmap 2 2m2s kube-root-ca.crt 1 13d# 查看 configmap 详情 $ kubectl describe configmap from-file-configmap Name: from-file-configmap Namespace: default Labels: none Annotations: noneDataconfigmap-file.properties: ---- version:1.0 environment:devBinaryData Events: none# 查看 yaml 输出 $ kubectl get configmap from-file-configmap -o yaml apiVersion: v1 data:configmap-file.properties: |version:1.0environment:dev kind: ConfigMap metadata:creationTimestamp: 2023-01-05T05:33:28Zname: from-file-configmapnamespace: defaultresourceVersion: 3179uid: a9f17c3a-af94-4a9a-9145-e06f3d3bf030 四、ConfigMap更新 4.1、kubectl edit方式 $ kubectl describe configmap from-file-configmap Name: from-file-configmap Namespace: default Labels: none Annotations: noneDataconfigmap-file.properties: ---- version:1.0 # 更新之前的version为1.0 environment:devBinaryData Events: none# kubectl edit configmap其实是通过修改from-file-configmap这个ConfigMap对象资源清单中的值 controlplane $ kubectl edit configmap from-file-configmap configmap/from-file-configmap edited# 查看更新之后的ConfigMap的值 controlplane $ kubectl describe configmap from-file-configmap Name: from-file-configmap Namespace: default Labels: none Annotations: noneDataconfigmap-file.properties: ---- version:2.0 # 更新之后的version为2.0 environment:devBinaryData Events: none 4.2、kubectl apply方式 这种方式其实也是通过修改ConfigMap对象对应的yaml资源清单文件然后重新执行kubectl apply -f xxx即可。 $ vim configmap.yaml$ kubectl describe cm from-yaml-configmap Name: from-yaml-configmap Namespace: default Labels: none Annotations: noneDataenvironment: ---- dev # 修改之前的environment为dev version: ---- 1.0BinaryData Events: none$ kubectl apply -f configmap.yaml configmap/from-yaml-configmap configured$ kubectl describe cm from-yaml-configmap Name: from-yaml-configmap Namespace: default Labels: none Annotations: noneDataenvironment: ---- prod # 修改之后的environment为prod version: ---- 1.0BinaryData Events: none 五、ConfigMap使用 容器应用对 ConfigMap 的使用主要是两种 通过环境变量获取 ConfigMap 的内容spec.env和spec.envFrom通过卷 volume 挂载的方式将 ConfigMap 的内容挂载到容器内部的文件或目录spec.volumes 5.1、spec.env 【环境变量】 定义Pod资源清单vim configmap-pod-demo01.yaml apiVersion: v1 kind: Pod metadata:name: tomcat spec:containers:- name: tomcatimage: tomcat:8command: [ /bin/sh, -c, env | grep APP]env: # 配置环境变量- name: APP_VERSION # 定义环境变量的名称valueFrom: configMapKeyRef: name: from-yaml-configmap # 引用from-yaml-configmap这个ConfigMap这个值来自 ConfigMapkey: version # 需要取值的键ConfigMap中的配置key为version- name: APP_ENVIRONMENT # 定义环境变量的名称valueFrom: configMapKeyRef: name: from-yaml-configmap # 引用from-yaml-configmap这个ConfigMapkey: environment # ConfigMap中的配置key为environmentrestartPolicy: Never 创建Pod观察控制台输出 $ kubectl apply -f configmap-pod-demo01.yaml pod/tomcat created $ kubectl get pod/tomcat NAME READY STATUS RESTARTS AGE tomcat 0/1 Completed 0 9s$ kubectl logs tomcat APP_ENVIRONMENTprod APP_VERSION1.0 可以看到from-yaml-configmap这个ConfigMap中的内容已经成功声明为Pod中的两个环境变量 $APP_VERSION、$APP_ENVIRONMENT并且值也正确。 5.2、spec.envFrom 【环境变量】 定义Pod资源清单vim configmap-pod-demo02.yaml apiVersion: v1 kind: Pod metadata:name: tomcat spec:containers:- name: tomcatimage: tomcat:8imagePullPolicy: IfNotPresentcommand: [/bin/sh,-c,env]envFrom: # 配置环境变量- configMapRef:name: from-yaml-configmap # 根据from-yaml-configmap这个ConfigMap中所有的key和value自动生成环境变量restartPolicy: Never 创建Pod观察控制台输出 $ kubectl apply -f configmap-pod-demo02.yaml pod/tomcat created$ kubectl get pod/tomcat NAME READY STATUS RESTARTS AGE tomcat 0/1 Completed 0 32s$ kubectl logs tomcat KUBERNETES_SERVICE_PORT443 KUBERNETES_PORTtcp://10.96.0.1:443 LANGUAGEen_US:en HOSTNAMEtomcat LD_LIBRARY_PATH/usr/local/tomcat/native-jni-lib TOMCAT_SHA512e595e906d62ff16545318108478aa101103181569dc6f4549dd0cdf8744147f7e9ba8a88cab6d33237b22981acb1085de86e7b2a4f1659efdbd4804df1303561 HOME/root CATALINA_HOME/usr/local/tomcat TOMCAT_MAJOR8 version1.0 # 根据from-yaml-configmap这个ConfigMap资源自动生成环境变量:version JAVA_VERSIONjdk-17.0.58 environmentprod # 根据from-yaml-configmap这个ConfigMap资源自动生成环境变量:environment GPG_KEYS05AB33110949707C93A279E3D3EFE6B686867BA6 07E48665A34DCAFAE522E5E6266191C37C037D42 47309207D818FFD8DCD3F83F1931D684307A10A5 541FBE7D8F78B25E055DDEE13C370389288584E7 5C3C5F3E314C866292F359A8F3AD5C94A67F707E 765908099ACF92702C7D949BFA0C35EA8AA299F1 79F7026C690BAA50B92CD8B66A3AD3F4F22C4FED 9BA44C2621385CB966EBA586F72C284D731FABEE A27677289986DB50844682F8ACB77FC2E86E29AC A9C5DF4D22E99998D9875A5110C01C5A2F6059E7 DCFD35E0BF8CA7344752DE8B6FB21E8933C60243 F3A04C595DB5B6A5F1ECA43E3B7BBB100D811BBE F7DA48BB64BCB84ECBA7EE6935CD23C10D498E23 KUBERNETES_PORT_443_TCP_ADDR10.96.0.1 PATH/usr/local/tomcat/bin:/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin KUBERNETES_PORT_443_TCP_PORT443 KUBERNETES_PORT_443_TCP_PROTOtcp LANGen_US.UTF-8 TOMCAT_VERSION8.5.84 KUBERNETES_SERVICE_PORT_HTTPS443 KUBERNETES_PORT_443_TCPtcp://10.96.0.1:443 JAVA_HOME/opt/java/openjdk LC_ALLen_US.UTF-8 KUBERNETES_SERVICE_HOST10.96.0.1 PWD/usr/local/tomcat TOMCAT_NATIVE_LIBDIR/usr/local/tomcat/native-jni-lib 如上可以看到通过envFrom可以实现根据某个ConfigMap资源自动生成环境变量这样在Pod中就可以使用这些环境变量了。 env 和 envFrom 的区别 env可以自定义变量名但需要重复性操作 envFrom不可以自定义变量名但是很便捷 5.3、指定 items【卷挂载方式】 定义Pod资源清单vim configmap-pod-demo03.yaml apiVersion: v1 kind: Pod metadata:name: tomcat spec:containers:- name: tomcatimage: tomcat:8volumeMounts:- name: config-volumemountPath: /conf # 挂载configmap-file.properties到Pod的/conf目录下volumes:- name: config-volume configMap: # 你可以在 Pod 级别设置卷然后将其挂载到 Pod 内的容器中name: from-file-configmap # 要挂载的 ConfigMap 的名字items: # 来自 ConfigMap 的一组键将被创建为文件- key: configmap-file.properties # 来自 ConfigMap 的一组键将被创建为文件path: configmap-file.properties # ConfigMap挂载到容器内的相对路径restartPolicy: Never 创建Pod然后进入Pod中/conf目录查看configmap-file.properties文件是否挂载进去 $ kubectl apply -f configmap-pod-demo03.yaml pod/tomcat created$ kubectl get pod/tomcat NAME READY STATUS RESTARTS AGE tomcat 1/1 Running 0 20s$ kubectl exec -it tomcat -c tomcat -- bash roottomcat:/usr/local/tomcat# cat /conf/configmap-file.properties version:2.0 environment:dev 5.4、不指定 items【卷挂载方式】 定义Pod资源清单vim configmap-pod-demo04.yaml apiVersion: v1 kind: Pod metadata:name: tomcat spec:containers:- name: tomcatimage: tomcat:8volumeMounts:- name: configmap-volumemountPath: /confvolumes:- name: configmap-volumeconfigMap: # 创建一个ConfigMap类型的数据卷name: from-yaml-configmap # 引用的ConfigMap的名称restartPolicy: Never 创建Pod然后进入容器查看相关内容 $ kubectl apply -f configmap-pod-demo04.yaml pod/tomcat created$ kubectl get pod/tomcat NAME READY STATUS RESTARTS AGE tomcat 1/1 Running 0 10s$ kubectl exec -it tomcat -c tomcat -- bash roottomcat:/usr/local/tomcat# ls -l /conf total 0 lrwxrwxrwx 1 root root 18 Jan 5 07:01 environment - ..data/environment lrwxrwxrwx 1 root root 14 Jan 5 07:01 version - ..data/version 六、ConfigMap删除 # 方式一通过 yaml 文件删除 kubectl delete -f configmap.yaml# 方式二直接删除资源 kubectl delete configmap from-yaml-configmap# 方式三 删除所有configmap kubectl delete configmap --all
http://www.hkea.cn/news/14501301/

相关文章:

  • 南京做网站seo的企业管理公司的经营范围
  • 高校档案网站建设seo搜索引擎优化简历
  • 个人网站可以放广告吗全球可以做外贸的社交网站
  • 傻瓜内网网站建设网架公司招聘打板施工队伍
  • 同德县公司网站建设青团智慧团建登录入口
  • 中讯高科网站建设wordpress 安装插件
  • 网站开发掌握哪种语言厦门网站建设模拟
  • 会计常用的三个软件泉州关键词优化推广
  • 公司装修装饰seo网站营销公司
  • 苏州市网站优化网站设计研究方法
  • 石家庄设计网站公司慈溪做网站
  • 个人做企业网站番禺做网站哪家强
  • wordpress文章中出站葫芦岛黄页电话号码
  • 建设宠物网站的目的找个做游戏的视频网站好
  • 百度指数对比合肥seo按天收费
  • 栾城区住房建设局官方网站数字营销证书
  • 泰安网站建设有哪些建立门户网站的步骤
  • 企业官方网站怎么建设网站空间服务
  • 外贸网站建站nh5自适应网站源码
  • 柳江网站开发凯里网站设计公司
  • 哪个网站网站空间最好营销自动化平台
  • html网站的规划与建设沈阳中小企业网站建设
  • wordpress优势菏泽seo
  • wordpress自豪的百度网站推广排名优化
  • 南昌做建网站的有哪些网站做的比较好
  • 企业网站开发框架上海app开发平台
  • 眉山网站定制专业的外贸网站建设公司
  • 网站设计创新点怎么写克拉玛依网站建设
  • 网站变exe文件怎么做长沙市建设厅官方网站
  • 小学网站建设设计方案网站宣传文案