-
k8s之数据存储-配置存储
ConfigMap
configmap是一种比较特殊的存储卷,它的主要作用是用来存储配置信息的
创建configmap.yaml,内容如下
apiVersion: v1 kind: ConfigMap metadata: name: configmap namespace: dev data: info: username:admin password:123456
接下来,使用此配置文件创建configmap
[root@master ~]# vim configmap.yaml [root@master ~]# kubectl create -f configmap.yaml configmap/configmap created [root@master ~]# kubectl describe cm configmap -n dev Name: configmap Namespace: dev Labels: <none> Annotations: <none> Data ==== info: ---- username:admin password:123456 Events: <none>
接下来创建一个pod-configmap.yaml,将上面创建的configmap挂载进去
apiVersion: v1 kind: Pod metadata: name: pod-configmap namespace: dev spec: containers: - name: nginx image: nginx:1.17.1 volumeMounts: - name: config mountPath: /configmap/config volumes: - name: config configMap: name: configmap
使用配置文件
[root@master ~]# vim pod-configmap.yaml [root@master ~]# kubectl create -f pod-configmap.yaml pod/pod-configmap created [root@master ~]# kubectl get pod pod-configmap -n dev NAME READY STATUS RESTARTS AGE pod-configmap 1/1 Running 0 32s
进入容器,可以看见映射已经成功,每个configmap都映射成了一个目录
[root@master ~]# kubectl exec -it pod-configmap -n dev /bin/sh # cd /configmap/config # ls info # more info username:admin password:123456 # exit
编辑configmap,将password改为123456789
[root@master ~]# kubectl edit cm configmap -n dev # Please edit the object below. Lines beginning with a '#' will be ignored, # and an empty file will abort the edit. If an error occurs while saving this file will be # reopened with the relevant failures. # apiVersion: v1 data: info: username:admin password:123456789 kind: ConfigMap metadata: creationTimestamp: "2021-08-18T03:58:59Z" name: configmap namespace: dev resourceVersion: "171455" selfLink: /api/v1/namespaces/dev/configmaps/configmap uid: 46f41475-b95b-4477-9221-50054d6a5ea2
再次查看info文件
[root@master ~]# kubectl exec -it pod-configmap -n dev /bin/sh # more /configmap/config/info username:admin password:123456789
Secret
在k8s中,还存在一种和ConfigMap非常类似的对象,成为Secret对象。它主要用于存储敏感信息,例如密码,密钥,证书等等。
首先使用base64对数据进行编码
[root@master ~]# echo -n 'admin' | base64 YWRtaW4= [root@master ~]# echo -n '123456' | base64 MTIzNDU2
接下来编写secret.yaml,并创建secret
apiVersion: v1 kind: Secret metadata: name: secret namespace: dev type: Opaque data: username: YWRtaW4= password: MTIzNDU2
使用配置文件
[root@master ~]# vim secret.yaml [root@master ~]# kubectl create -f secret.yaml secret/secret created [root@master ~]# kubectl describe secret/secret -n dev Name: secret Namespace: dev Labels: <none> Annotations: <none> Type: Opaque Data ==== password: 6 bytes username: 5 bytes
创建pod-secret.yaml,将上面的secret挂载进去
apiVersion: v1 kind: Pod metadata: name: pod-secret namespace: dev spec: containers: - name: nginx image: nginx:1.17.1 volumeMounts: - name: config mountPath: /secret/config volumes: - name: config secret: secretName: secret
使用配置文件
[root@master ~]# vim pod-secret.yaml [root@master ~]# kubectl create -f pod-secret.yaml pod/pod-secret created #查看secret信息,发现已经自动解码了 [root@master ~]# kubectl exec -it pod-secret -n dev /bin/sh # cd /secret/config # ls password username # more username admin # more password 123456
至此,已经实现了利用secret实现信息的编码
出处:https://www.cnblogs.com/Ayanamidesu/p/15156177.html
栏目列表
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比
一款纯 JS 实现的轻量化图片编辑器
关于开发 VS Code 插件遇到的 workbench.scm.
前端设计模式——观察者模式
前端设计模式——中介者模式
创建型-原型模式