Kubernetes configMap(配置文件存储)
Kubernetes configMap(配置文件存储)
官方文档:https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/
与Secret类似,区别在于ConfigMap保存的是不需要加密配置信息。
应用场景:应用配置
创建测试配置文件
1、创建测试配置文件
vim redis.properties
redis.host=127.0.0.1
redis.port=6379
redis.password=123456
2、通过命令创建引用配置文件
kubectl create configmap redis-config --from-file=./redis.properties
3、查看创建的配置文件
kubectl get cm
NAME DATA AGE
redis-config 1 8s
4、查看详细信息
kubectl describe cm redis-config
Name: redis-config
Namespace: default
Labels: <none>
Annotations: <none> Data
====
redis.properties:
----
redis.host=127.0.0.1
redis.port=6379
redis.password=123456 Events: <none>
通过volume导入方式
1、创建yaml文件
vim cm.yaml
apiVersion: v1
kind: Pod
metadata:
name: mypod
spec:
containers:
- name: busybox
image: busybox
command: [ "/bin/sh","-c","cat /etc/config/redis.properties" ]
volumeMounts:
- name: config-volume
mountPath: /etc/config
volumes:
- name: config-volume
# 指定保存的配置文件
configMap:
# 配置文件名称
name: redis-config
restartPolicy: Never
2、创建容器
kubectl create -f cm.yaml
3、查看结果
kubectl logs mypod
redis.host=127.0.0.1
redis.port=6379
redis.password=123456
通过变量名方式
1、创建yaml文件
vim myconfig.yaml
apiVersion: v1
kind: ConfigMap
metadata:
# 指定命名空间
name: myconfig
namespace: default
# 指定level type
data:
# 指定变量 value则是配置文件的配置
special.level: info
special.type: hello
2、创建容器
kubectl create -f myconfig.yaml
3、查看创建
kubectl get cm
NAME DATA AGE
myconfig 2 23s
redis-config 1 11m
4、创建pod yaml
vim config-var.yaml
apiVersion: v1
kind: Pod
metadata:
name: mypod
spec:
containers:
- name: busybox
image: busybox
command: [ "/bin/sh", "-c", "echo $(LEVEL) $(TYPE)" ]
env:
- name: LEVEL
valueFrom:
# 通过key加载配置文件
configMapKeyRef:
# 使用的key
name: myconfig
key: special.level
- name: TYPE
valueFrom:
configMapKeyRef:
# 使用的type
name: myconfig
key: special.type
restartPolicy: Never
5、查看验证
kubectl logs mypod
info hello
Kubernetes configMap(配置文件存储)的更多相关文章
- Kubernetes K8S之存储ConfigMap详解
K8S之存储ConfigMap概述与说明,并详解常用ConfigMap示例 主机配置规划 服务器名称(hostname) 系统版本 配置 内网IP 外网IP(模拟) k8s-master CentOS ...
- kubernetes Configmap secret的使用
kubernetes configmap 核心作用是让配置信息和镜像解耦,pod可以使用configmap的数据生成配置文件.如果后端的pod配置文件要改变时,只需要更改下configmap里面的数据 ...
- Kubernetes中的存储(六)
一.ConfigMap 1,介绍 ConfigMap 功能在 Kuberbetes 1.2 版本中引入,许多应用程序会从配置文件.命令行参数或环境变量中读取配置信息.ConfigMap API 给我们 ...
- Kubernetes K8S之存储Volume详解
K8S之存储Volume概述与说明,并详解常用Volume示例 主机配置规划 服务器名称(hostname) 系统版本 配置 内网IP 外网IP(模拟) k8s-master CentOS7.7 2C ...
- Kubernetes之持久化存储
转载自 https://blog.csdn.net/dkfajsldfsdfsd/article/details/81319735 ConfigMap.Secret.emptyDir.hostPath ...
- Ocelot简易教程(六)之重写配置文件存储方式并优化响应数据
本来这篇文章在昨天晚上就能发布的,悲剧的是写了两三千字的文章居然没保存,结果我懵逼了.今天重新来写这篇文章.今天我们就一起来探讨下如何重写Ocelot配置文件的存储方式以及获取方式. 作者:依乐祝 原 ...
- Docker Swarm 配置文件存储
Docker Swarm 配置文件存储 config:宿主级容器服务配置文件单独保存到docker中存储调用. 环境: 系统:Centos 7.4 x64 应用版本:Docker 18.09.0 管理 ...
- [转载]Ocelot简易教程(六)之重写配置文件存储方式并优化响应数据
作者:依乐祝 原文地址:https://www.cnblogs.com/yilezhu/p/9807125.html 很多人都说配置文件的配置很繁琐,如果存储在数据库就方便很多,可以通过自定义UI界面 ...
- Kubernetes 学习(十)Kubernetes 容器持久化存储
0. 前言 最近在学习张磊老师的 深入剖析Kubernetes 系列课程,最近学到了 Kubernetes 容器持久化存储部分 现对这一部分的相关学习和体会做一下整理,内容参考 深入剖析Kuberne ...
随机推荐
- mysql 5.7 创建用户报错ERROR 1364 (HY000): Field 'ssl_cipher' doesn't have a default value
如: INSERT INTO user (host, user, authentication_string, select_priv, insert_priv, update_priv) VALUE ...
- vue项目中引入iconfont
背景 对于前端而言,图标的发展可谓日新月异.从img标签,到雪碧图,再到字体图标,svg,甚至svg也有了类似于雪碧图的方案svg-sprite-loader.雪碧图没有什么好讲的了,只是简单地利用了 ...
- Java学习笔记 jar包获取当前路径
情况 使用一个jar包,需要下载一个文件到与当前jar包同目录,如何去获取此目录? 代码 使用.即可作为当前的目录 windows环境下,我的jar包所在的目录为D:\test val dir = F ...
- C# Task ContinueWith
static void Main(string[] args) { Task firstTask = Task.Run(() => { PrintPlus(); }); Task secondT ...
- H265之格式解析
头定义如下: 上一段码流: 前面 4个字节位00 00 00 01 为nul头,这个和H264是一样的. 下面两个字节为40 01 ====>二进制 0100 0000 0000 0001 F ...
- 高版本 MySQL 导出的脚本到低版本 MySQL 中执行时报错
导入 MySQL 脚本时报错:[ERR] 1273 - Unknown collation: 'utf8mb4_0900_ai_ci'低版本还不支持 utfmb4 这个字符集 解决方法:将 sql 脚 ...
- Linux 下Postgresql 命令:
关闭:service postgresql stop 启动:service postgresql start 启动数据库:pg_ctl start -D /data/postgres 重启数据库: p ...
- Android多module下重复jar包问题
版权声明:本文为xing_star原创文章,转载请注明出处! 本文同步自http://javaexception.com/archives/166 Android多module下重复jar包问题 An ...
- 基于file上传文件的并发上传(多个文件一起上传到后台并把数据存储的同一条数据中,如 数据库字段videopath,imge。前台发送来的文件file1,file2。 videopath=file1,imge=file2)
前台代码: <div class="tab-content"> <dl> <dt>所属栏目</dt> <dd> < ...
- 使用Flask构建一个Web应用
Flask是一个使用Python编写的轻量级Web应用框架. 一.安装Flask 以管理员身份,打开命令提示符窗口,输入下面命令 py -3 -m pip install flask 这个命令会连接到 ...