apisix~为自定义插件设计一个configmap脚本
configMap
Kubernetes 中的 ConfigMap 是一种用来存储配置数据的 API 资源,它允许您将配置信息以键值对的形式保存,并在容器中使用这些配置信息。ConfigMap 提供了一种将配置数据与应用程序解耦的方式,使得应用程序可以动态地获取配置而无需重新构建镜像。
以下是 ConfigMap 的一些特点和用途:
存储配置数据:ConfigMap 可以存储应用程序所需的配置数据,如环境变量、命令行参数、配置文件等。
解耦配置:通过使用 ConfigMap,可以将配置数据从应用程序中分离出来,使得应用程序更易于管理和维护。
动态更新配置:您可以在不重启应用程序的情况下更新 ConfigMap 中的配置数据,应用程序会自动获取最新的配置。
挂载到 Pod 中:您可以将 ConfigMap 中的配置数据挂载为 Volume,然后将其传递给 Pod 中的容器,使容器能够读取这些配置数据。
跨 Namespace 共享:ConfigMap 可以在同一集群内的不同 Namespace 之间共享和复用。
与 Secret 对比:与 Secret 不同,ConfigMap 存储的是明文数据,适合存储非敏感性数据;而 Secret 存储的是加密数据,适合存储敏感性数据。
在 Kubernetes 中,您可以使用 kubectl create configmap 命令创建 ConfigMap,也可以通过 YAML 文件定义 ConfigMap 的配置。随后,您可以在 Pod 的定义中引用这些 ConfigMap,并将其配置数据注入到容器中。
总的来说,ConfigMap 是 Kubernetes 中一个非常有用的资源,可以帮助您管理和提供应用程序所需的配置信息。如果您有任何关于 ConfigMap 的具体问题或者需要进一步了解,请随时告诉我。
今日需求
这块使用apisix的自定义插件为例,来说明一下这个功能,执行后,configmap由3个键组件,每个键对应一个文件。
#!/bin/sh
# 配置文件configmap
files=""
for file in "$(pwd)"/plugins/*.lua; do
files="$files --from-file=$file"
done
kubectl create configmap apisix-plugins-config -n apisix $files --dry-run=true -o yaml > apisix-plugins-config.yaml
kubectl apply -f apisix-plugins-config.yaml -n apisix
# 生成helm
first_param="values.override.yaml"
if [ -z "$1" ]; then
echo "没有传递第一个参数,将使用默认值"
else
first_param="$1"
fi
helm -n apisix upgrade -i apisix -f "./apisix/${first_param}" ./apisix #参数-i表示没有服务就建立,有就升级
如图所示

apisix~为自定义插件设计一个configmap脚本的更多相关文章
- Swift技术之如何在iOS 8下使用Swift设计一个自定义的输入法 (主要是NSLayoutConstraint 的使用)
当前位置: > Swift新手入门 > Swift技术之如何在iOS 8下使用Swift设计一个自定义的输入法 时间:2014-09-10 16:49来源:未知 作者:啊成 举报 点击:5 ...
- CKEditor在线编辑器增加一个自定义插件
CKEditor是一个非常优秀的在线编辑器,它的前身就是FCKEditor,CKEditor据官方说是重写了内核的,但功能和性能比FCKEditor更为强大和优越.记得07年的时候第一次接触FCKEd ...
- jQuery命名空间和自定义插件的的多种方法
jQuery插件的开发包括两种: 一种是类级别的插件开发,即给jquery添加新的全局函数,相当于给jQuery类本身添加方法.jQuery的全局函数就是属于jQuery命名空间的函数,另一种是对象级 ...
- [每日电路图] 7、设计一个PCB的流程及细节·总结——给外行的同学或刚入行的同学一个宏观鸟瞰电路板设计的大致流程的文章
前言 最近两天使用AD14软件设计了一个蓝牙防丢器电路板(PCB)图纸,中间有一些细节在本文中记录下,方便下次设计PCB时参考.也希望能给外行的同学或刚入行的同学一个宏观鸟瞰电路板设计的大致流程的文章 ...
- 如何设计一个RPC系统
版权声明:本文由韩伟原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/162 来源:腾云阁 https://www.qclou ...
- BrnShop开源网上商城第四讲:自定义插件
重要通知:BrnShop企业版NOSQL设计(基于Redis)已经开源!源码内置于最新版的BrnShop中,感兴趣的园友可以去下载来看看.官网地址:www.brnshop.com. 好了现在进入今天的 ...
- Qt之自定义插件(for Qt Designer)
之前Blog里面有关于QWT的编译.配置.使用的文章,分别是在VS与Creator下进行的. QWT编译.配置.使用(VS2010 + Qt5.1.0). QWT编译.配置.使用(Qt Creator ...
- BrnShop:自定义插件
BrnShop开源网上商城第四讲:自定义插件 重要通知:BrnShop企业版NOSQL设计(基于Redis)已经开源!源码内置于最新版的BrnShop中,感兴趣的园友可以去下载来看看.官网地址:www ...
- 你的专属定制——JQuery自定义插件
前 言 絮叨絮叨 jQuery是一个快速.简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架).jQuery设计的宗 ...
- jQuery自定义插件--banner图滚动
前言 jQuery是一个功能强大的库,提供了开发JavaScript项目所需的所有核心函数.很多时候我们使用jQuery的原因就是因为其使用插件的功能,然而,有时候我们还是需要使用自定义代码来扩展这些 ...
随机推荐
- 计算机网络中的Ad hoc network到底是个啥?
"Ad hoc network" 是一种临时网络,通常指由一组设备(如计算机.手机等)通过无线方式相互连接而不需要依赖固定的基础设施(如路由器或交换机).这些网络通常是自组织的,能 ...
- 工业AI制造:铝合金冲压、压铸工艺流程 —— 模具参数调整,以满足所需的规格和质量要求
压铸操作工艺流程作步骤: 模具安装 → 调试 →清理预热模具 → 喷刷涂料 → 合模 → 涂料准备 → 涂料配制 → 压铸 → 冷却与凝固 → 开模 → 顶出铸件 → 质量检验 → 成品 → 废品 → ...
- 人形机器人(humanoid)(双足机器人、四足机器人) —— 硬件测试的方法
硬件测试的方法: 硬件的稳定性.鲁棒性.为机器人设定好固有的执行策略,然后长时间的让机器人重复执行这些既定好的动作.该种测试方法主要测试硬件的设计是否合理,硬件在长时间的运行中是否可以稳定运行而不是出 ...
- 如何使用H100打游戏——这是史上最快GPU!我们测了四张H100!价值120万元!
资料: 这是史上最快GPU!我们测了四张H100!价值120万元! 对显卡H100的测评视频.
- vue之v-model表单绑定
1.背景 2.简单使用 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&qu ...
- 判断数据是否是数组 返回true或false
/** * 判断数据是否是数组 返回true或false * @param {obj,array} data //obj or array */ export function isType ...
- 从论文到图谱,或许只差一个html
书接上回,在文章<论文图谱当如是:Awesome-Graphs用200篇图系统论文打个样>中,我向大家讲述了如何用图的方式思考图计算系统的演进历史,并在后续的系列文中结合Awesome-G ...
- flex数据绑定
1 .方法绑定 [Bindable(event="myFlagChanged")] private function isEnabled():String { if (myF ...
- programmers model
Handler模式一直使用MSP,所以在handler模式下处理器会忽略SPSEL位:异常进入及返回机制会更新CONTROL寄存器. 在操作系统的环境中,推荐线程在Thread模式下运行使用PSP,内 ...
- mysql 5.7密码修改
官网下载安装包:https://dev.mysql.com/downloads/mysql/ 一.停止mysqld服务 二.编辑配置文件 有的Linux版本是/etc/my.cnf 有的Linux版本 ...