首页 > 其他分享 >【K8s】专题五(1):Kubernetes 配置之 ConfigMap

【K8s】专题五(1):Kubernetes 配置之 ConfigMap

时间:2024-06-12 16:57:33浏览次数:12  
标签:ConfigMap Kubernetes kubectl -- demo configmap yaml K8s

以下内容均来自个人笔记并重新梳理,如有错误欢迎指正!如果对您有帮助,烦请点赞、关注、转发!欢迎扫码关注个人公众号!

公众号二维码


目录

一、基本介绍

二、主要特性

三、资源清单(示例)

四、常用操作


一、基本介绍

在 Kubernetes 中,ConfigMap 是一种用于存储非敏感信息的资源对象,提供了向 Pod 注入配置信息的能力。

ConfigMap 通过将配置与容器镜像解耦,使用一系列键值对(key-value pairs)为应用程序提供配置信息,使得应用程序的配置更加灵活,并增强了可移植。

ConfigMap 详细介绍:ConfigMaps | Kubernetes


二、主要特性
  • 环境变量:ConfigMap 可以被设置为 Pod 的环境变量
  • 命令行参数:ConfigMap 可以被注入到 Pod 的启动命令行参数中
  • 数据卷:ConfigMap 可以被挂载为一个数据卷,使得 Pod 内的容器可以访问配置文件
  • 多个 ConfigMap:Pod 可以挂载多个 ConfigMap,这允许将不同方面的配置信息分开存储
  • 命名空间:ConfigMap 是命名空间级别的资源,其作用域被限制在特定的命名空间内
  • 对象管理:可以通过 Kubernetes API 来创建、更新和删除 ConfigMap


三、资源清单(示例)

1、示例一

# configmap.yaml
apiVersion: v1
kind: ConfigMap
metadata:
  name: demo-configmap
data:
  RUN_ENV: prod
  RUN_MODE: allinone

上述 configmap.yaml 文件定义了一个名为 demo-configmap 的 ConfigMap 对象,data 下定义了两组键值对作为环境变量。

2、示例二

# configmap.yaml
apiVersion: v1
kind: ConfigMap
metadata:
  name: demo-configmap
data:
  conf_A: |
    host: hostA
    name: nameA

  conf_B: |
    host: hostB
    name: nameB

上述 configmap.yaml 文件定义了一个名为 demo-configmap 的 ConfigMap 对象,data 下定义了两组键值对,分别是名为 conf_A 和 conf_B 的文件及其内容。

说明:可以通过以下命令查看 ConfigMap 资源清单支持定义的内容

kubectl explain configmap --recursive


四、常用操作

1、创建 ConfigMap

# 方式一:使用目录或文件
kubectl create configmap demo-configmap --from-file=<目录名称或文件名称>

标签:ConfigMap,Kubernetes,kubectl,--,demo,configmap,yaml,K8s
From: https://blog.csdn.net/2401_82795112/article/details/139532851

相关文章

  • k8s_示例_根据CPU使用率自动扩展Pod数量并使Pod分布在不同节点
    我们从制作测试用镜像开始,后续一步一步实现在k8s中使pod根据cpu用量自动扩展pod个数。知识准备在做这个示例之前,需要了解k8s(也叫kubernetes)基本原理,了解k8s是用来干嘛的即可,以及deployment、service、hpa、镜像、docker等概念。不然会有些晕的,不知道这些配置和这些操作......
  • 【Jenkins+K8s】持续集成与交付 (二十):K8s集群通过Deployment方式部署安装Jenkins
    ......
  • Centos7.9使用kubeadm部署K8S集群
    Centos7.9使用kubeadm部署K8S集群使用kubeadm部署一个k8s集群,单master+2worker节点。1.环境信息操作系统:CentOS7.9.2009内存:2GBCPU:2网络:能够互访,能够访问互联网hostnameip备注k8s-master192.168.0.51masterk8s-node1192.168.0.52workerk8s-node2192.168.0.53wor......
  • Centos7.9使用kubeadm部署K8S单机环境
    Centos7.9使用kubeadm部署K8S单机环境使用kubeadm部署一个k8s单机环境1.环境信息操作系统:CentOS7.9.2009内存:4GBCPU:2网络:能够互访,能够访问互联网hostnameip备注k8s192.168.0.159master+worker2.准备工作在所有节点(包括Master和Worker节......
  • Centos7.9使用kubeadm部署K8S集群
    Centos7.9使用kubeadm部署K8S集群使用kubeadm部署一个k8s集群,单master+2worker节点。1.环境信息操作系统:CentOS7.9.2009内存:2GBCPU:2网络:能够互访,能够访问互联网hostnameip备注k8s-master192.168.0.51masterk8s-node1192.168.0.52workerk8s-n......
  • 云原生周刊:Kubernetes 十周年 | 2024.6.11
    开源项目推荐KubernetesGoatKubernetesGoat是一个故意设计成有漏洞的Kubernetes集群环境,旨在通过交互式实践场地来学习并练习Kubernetes安全性。kube-state-metrics(KSM)kube-state-metrics是一个用于收集Kubernetes集群状态信息的开源项目,它能够提供各种有用的指......
  • k8s-CCE使用node节点使用VIP--hostNetwork&hostPort
    CCE使用node节点使用VIP背景:想在节点上使用VIP,将nodeport服务做到高可用。启动VIP后发现访问失败部署!ConfigurationFileforkeepalivedglobal_defs{router_idmaster-node}vrrp_instanceVI_1{stateBACKUPinterfaceeth0mcast_src_ip10.1......
  • Centos7.9部署单节点K8S环境
    Centos7.9部署单节点K8S环境通过Centosextras镜像源安装K8S环境,优点是方便快捷,缺点是版本较低,安装后的版本为1.5.2。1.准备工作关闭selinux[root@localhost~]#cat/etc/selinux/config#ThisfilecontrolsthestateofSELinuxonthesystem.#SELINUX=cantake......
  • K8S部署ECK采集日志
    1.部署nfs1.安装nfs#所有节点安装yuminstall-ynfs-utils在master节点创建nfs共享目录mkdir-pv/data/kubernetes编写配置文件cat>/etc/exports<<'EOF'/data/kubernetes*(rw,no_root_squash)EOFmaster节点启动nfssystemctlenable--nowrpcbindnfs2.使用......
  • Aws EC2,kubeadm方式安装kubernetes(k8s)
    版本docker版本:20.10.25k8s版本(kubeadm,kubelet和kubectl):1.20.10-0初始化#禁用SELinuxsudosetenforce0sudosed-i's/^SELINUX=enforcing$/SELINUX=permissive/'/etc/selinux/config#关闭防火墙sudosystemctlstopfirewalldsudosystemctldisablefirewal......