Kubernetes资源ConfigMap

2024-04-04 23:52
文章标签 kubernetes 资源 configmap

本文主要是介绍Kubernetes资源ConfigMap,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、ConfigMap的基本概念

1、什么是configMap

ConfigMap资源主要为容器注入相关的程序配置信息,用来定制程序的运行方式,比如Redis监听端口、最大客户端连接数。

当定义好一个ConfiqMap资源后,如果Pod需要使用,可以通过通过环境变量、或存储卷的形式将其挂载并加载相关的配置,降低了配置与镜像文件的耦合关系。

2、为什么需要configMap

将应用配置信息与程序进行分离,这样可以使得应用程序被更好地复用通过不同的配置能实现更灵活的功能,例如:在测试环境中Nqinx提供test域名访问,且没配置压缩功能,而在生产环境中则需要提供www域名访问,且需要开启压缩功能,所以将应用容器与配置分离,根据不同的环境调用不同的ConfigMap配置,能有效的降低耦合度和复杂度。

二、使用命令创建configMap

1.使用 kubectl create configmap命令使用 --from-literal 选项给出键值对来创建 ConfigMap

[root@master configMap]# kubectl  create configmap  nginx-command-cm --from-literal=nginx.host='0.0.0.0' --from-literal=nginx.port='8899'
configmap/nginx-command-cm created
[root@master configMap]# kubectl  get configmaps 
NAME               DATA   AGE
kube-root-ca.crt   1      108d
nginx-command-cm   2      8s

2.通过 kubectl get configmap 查看 nginx-comand-cm对象YAML格式可以看出,ConfigMap资源没有 sepc和status,而是直接使用data字段嵌套键值数据。
在这里插入图片描述

  • 从上配置得知,若要基于配置清单创建ConfigMap资源时,仅需要指定apiVersion、kind、metadata、data这四个字段;
    在这里插入图片描述

三、基于文件创建configMap

ConfigMap资源也可以为应用程序提供大段配置,这些大段配置通常保存在一个或多个文件中,可以使用 kubectl create configmap 命令,通过 --from-file 选项一次加载一个配置文件的内容为指定键的值。默认文件名为key,文件内容为values

1、准备两个Nginx的配置文件

## Nginx的主配置文件
vim myserver.conf
server {listen 8080;server name my.oldxu.net;Location / {root / usr/share/nginx/html;index index.html;}include /etc/nginx/conf.d/*.cfg;
}## Nginx的分配置文件,Nginx模块状态配置
vim myserver-status.cfg
Location /ngx_status {stub status;access_log off;
}

2、基于文件进行创建configMap

## 准备两个配置文件
[root@master configMap]# vim myserver.conf
[root@master configMap]# vim myserver-status.cfg
## 基于配置文件进行创建configmap
[root@master configMap]# kubectl  create  configmap  nginx-confs --from-file=./myserver.conf --from-file=status.cfg=./myserver-status.cfg 
configmap/nginx-confs created
## 查看configMap
[root@master configMap]# kubectl get configmaps 
NAME               DATA   AGE
kube-root-ca.crt   1      108d
nginx-command-cm   2      13m
nginx-confs        2      7s
[root@master configMap]# kubectl  describe configmaps nginx-confs  
Name:         nginx-confs
Namespace:    default
Labels:       <none>
Annotations:  <none>Data
====
myserver.conf:
----
server {listen 8080;server name my.oldxu.net;Location / {root / usr/share/nginx/html;index index.html;}include /etc/nginx/conf.d/*.cfg;
}status.cfg:
----
Location /ngx_status {stub status;access_log off;
}BinaryData
====Events:  <none>## 导出configMap的yaml文件
[root@master configMap]# kubectl  get configmaps  nginx-confs  -o yaml 
apiVersion: v1
data:myserver.conf: server {\n  listen 8080;\n  server name my.oldxu.net;\n  Location/ {\n    root / usr/share/nginx/html;\n\tindex index.html;\n  }\n  include /etc/nginx/conf.d/*.cfg;\n

这篇关于Kubernetes资源ConfigMap的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/877136

相关文章

python使用watchdog实现文件资源监控

《python使用watchdog实现文件资源监控》watchdog支持跨平台文件资源监控,可以检测指定文件夹下文件及文件夹变动,下面我们来看看Python如何使用watchdog实现文件资源监控吧... python文件监控库watchdogs简介随着Python在各种应用领域中的广泛使用,其生态环境也

Kubernetes PodSecurityPolicy:PSP能实现的5种主要安全策略

Kubernetes PodSecurityPolicy:PSP能实现的5种主要安全策略 1. 特权模式限制2. 宿主机资源隔离3. 用户和组管理4. 权限提升控制5. SELinux配置 💖The Begin💖点点关注,收藏不迷路💖 Kubernetes的PodSecurityPolicy(PSP)是一个关键的安全特性,它在Pod创建之前实施安全策略,确保P

90、k8s之secret+configMap

一、secret配置管理 配置管理: 加密配置:保存密码,token,其他敏感信息的k8s资源 应用配置:我们需要定制化的给应用进行配置,我们需要把定制好的配置文件同步到pod当中容器 1.1、加密配置: secret: [root@master01 ~]# kubectl get secrets ##查看加密配置[root@master01 ~]# kubectl get se

K8S(Kubernetes)开源的容器编排平台安装步骤详解

K8S(Kubernetes)是一个开源的容器编排平台,用于自动化部署、扩展和管理容器化应用程序。以下是K8S容器编排平台的安装步骤、使用方式及特点的概述: 安装步骤: 安装Docker:K8S需要基于Docker来运行容器化应用程序。首先要在所有节点上安装Docker引擎。 安装Kubernetes Master:在集群中选择一台主机作为Master节点,安装K8S的控制平面组件,如AP

什么是Kubernetes PodSecurityPolicy?

@TOC 💖The Begin💖点点关注,收藏不迷路💖 1、什么是PodSecurityPolicy? PodSecurityPolicy(PSP)是Kubernetes中的一个安全特性,用于在Pod创建前进行安全策略检查,限制Pod的资源使用、运行权限等,提升集群安全性。 2、为什么需要它? 默认情况下,Kubernetes允许用户自由创建Pod,可能带来安全风险。

容器编排平台Kubernetes简介

目录 什么是K8s 为什么需要K8s 什么是容器(Contianer) K8s能做什么? K8s的架构原理  控制平面(Control plane)         kube-apiserver         etcd         kube-scheduler         kube-controller-manager         cloud-controlle

【Kubernetes】K8s 的安全框架和用户认证

K8s 的安全框架和用户认证 1.Kubernetes 的安全框架1.1 认证:Authentication1.2 鉴权:Authorization1.3 准入控制:Admission Control 2.Kubernetes 的用户认证2.1 Kubernetes 的用户认证方式2.2 配置 Kubernetes 集群使用密码认证 Kubernetes 作为一个分布式的虚拟

49个权威的网上学习资源网站

艺术与音乐 Dave Conservatoire — 一个完全免费的音乐学习网站,口号是“让每一个人都可以接受世界级的音乐教育”,有视频,有练习。 Drawspace — 如果你想学习绘画,或者提高自己的绘画技能,就来Drawspace吧。 Justin Guitar — 超过800节免费的吉他课程,有自己的app,还有电子书、DVD等实用内容。 数学,数据科学与工程 Codecad

kubernetes集群部署Zabbix监控平台

一、zabbix介绍 1.zabbix简介 Zabbix是一个基于Web界面的分布式系统监控的企业级开源软件。可以监视各种系统与设备的参数,保障服务器及设备的安全运营。 2.zabbix特点 (1)安装与配置简单。 (2)可视化web管理界面。 (3)免费开源。 (4)支持中文。 (5)自动发现。 (6)分布式监控。 (7)实时绘图。 3.zabbix的主要功能

【Kubernetes】常见面试题汇总(三)

目录 9.简述 Kubernetes 的缺点或当前的不足之处? 10.简述 Kubernetes 相关基础概念? 9.简述 Kubernetes 的缺点或当前的不足之处? Kubernetes 当前存在的缺点(不足)如下: ① 安装过程和配置相对困难复杂; ② 管理服务相对繁琐; ③ 运行和编译需要很多时间; ④ 它比其他替代品更昂贵; ⑤ 对于简单的应用程序来说,可能不