下面演示如何在Kong for Kubernetes加载自定义插件。
先准备自定义插件的Lua代码。
mkdir myheader
cd myheader
vi handler.lua
local MyHeader = {}
MyHeader.PRIORITY = 1000
function MyHeader:header_filter(conf)
-- do custom logic here
kong.response.set_header("myheader", conf.header_value)
end
return MyHeader
vi schema.lua
return {
name = "myheader",
fields = {
{ config = {
type = "record",
fields = {
{ header_value = { type = "string", default = "twingao", }, },
},
}, },
}
}
tree myheader/
myheader/
├── handler.lua
└── schema.lua
创建Configmap或者Secret,将自定义插件myheader加载入Kubernetes。
kubectl create configmap kong-plugin-myheader --from-file=myheader -n kong
或者
kubectl create secret generic kong-plugin-myheader --from-file=myheader
kubectl get cm
NAME DATA AGE
kong-plugin-