阅读 103

kubernetes集群系列资料13--存储机制介绍

一、K8S存储机制介绍  

k8s的stateful控制组件是为有状态服务而设计的,有状态服务需要对数据进行存储;k8s有4种存储机制,主要为:

  1)configMap:为K8S存储配置文件而设计的,configMap可以用来保存单个属性,也可以用来保存整个配置文件或者JSON二进制大对象。
  2)secret:为了解决密码、token、密钥等敏感数据的配置加密而设计,而不需要将这些敏感数据暴露到镜像或pod.spec中,可以volume或环境变量的方式使用。
  3)volume:为容器提供共享存储卷,避免发生容器崩溃重启后容器中文件丢失的问题。当pod不存在时,volume也不复存在;k8s支持多种类型的卷,pod可使用任意数量的卷。
  4)persistentVolume/persistentVolumeClai:

二、configMap介绍

  许多应用程序从配置文件、命令行参数或环境变量中读取配置信息,而configMap API给我们提供了向容器注入配置信息的机制。
  传统生成环境中,配置文件注册中心负责向n个集群n个节点应用程序的提供配置信息,该中心需要自行构建,没有较好的开源方案。应用程序向配置文件注册中心提供本节点的信息(如:IP、hostname),配置文件注册中心根据规则为该节点应用程序更新配置,应用程序按照新配置进行重载后运行。
  k8s集群中,configMap充当了配置文件注册中心的作用。pod向configMap申请配置,configMap为各pod下发不同的配置。
  configMap创建配置有3中方式:使用目录创建、使用文件创建、使用字面值创建。

1、使用目录创建configMap

mkdir configMapFile;cd configMapFile
cat > game.properties <ui.properties<

 

 

 

2、使用文件创建configMap

kubectl create configmap game-config2 --from-file=../configMapFile/game.properties #使用文件创建configMap;
kubectl get cm game-config2 -o yaml

 

 

 多次使用文件创建,与在该目录下一次性批量创建效果相同。

3、使用字面量创建configMap

kubectl create configmap game-config3 --from-literal=special.how=very --from-literal=special.type=charm #使用字面量创建configMap;
kubectl get cm game-config3 -o yaml

 

三、secret介绍 

 

原文:https://www.cnblogs.com/chalon/p/14898159.html

文章分类
代码人生
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐