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的原因就是因为其使用插件的功能,然而,有时候我们还是需要使用自定义代码来扩展这些 ...
随机推荐
- 【SpringBoot】04 初探YAML与配置
什么是YAML? https://www.cnblogs.com/mindzone/p/12849789.html 复合结构的语法 一个标配JavaBean public class Person { ...
- 【Java】爬资源案例
也不知道为什么喜欢叫爬虫 搞明白原理之后原来就是解析网页代码获取关键字符串 现在的网页有很多解析出来就是JS了,根本不暴露资源地址 依赖一个JSOUP,其他靠百度CV实现 <!-- https: ...
- Arm V8 - ADRP指令
ADRP指令 作用 将当前指令所在页的基地址加/减去字节差,并写入目标寄存器 字节差:与目标地址页基地址的间隔字节数,其为PAGE_SIZE的整数倍 此时的字节差就是指令所操作的立即数 该指令通常配合 ...
- 02-canvas注意点
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="U ...
- ZPL Viewer工具网站
新上线的ZPL Viewer工具网站 大家好! 在工作中,我们经常需要设计和预览ZPL(Zebra Programming Language)文件.以前,我一直使用ZPL Design这类工具,但后来 ...
- C# WinForm 解除资源文件的占用并删除
1.删除未解除占用的资源时 2.调用Windows API函数 解除文件占用 [DllImport("kernel32.dll", SetLastError = true)] [r ...
- Java并发之原子变量及CAS算法-上篇
Java并发之原子变量及CAS算法-上篇 概述 本文主要讲在Java并发编程的时候,如果保证变量的原子性,在JDK提供的类中式怎么保证变量原子性的呢?.对应Java中的包是:java.util.c ...
- 传染病模型 SI
参考了这篇写的很好的[1],讲了各种模型 因为是各种模型都是用微分方程写的,所以又去学习了一下微分方程 ,真的忘了有没有学过这个,反正一点印象也没有了. 好在[2] 这个文章又把我带回去了. SI 的 ...
- 小tips:使用vuecli2脚手架配置vant自定义主题
一:工程安装less.less-loader 配置版本如下: "devDependencies": { "less": "^3.0.4", ...
- BOM – Cookie 和 LocalStorage
前言 Cookie 和 LocalStorage 是非常基础的东西. 我是学编程后, 第 3 年才开始写博客的, 所以很多在第 1, 2 年学的知识完全都没有记入下来. (比如 C#, JS 语法等等 ...