之前看过kong的ingresss controller的实现:API网关Kong学习笔记(八):Kong Ingress Controller的实现。这里记录一下它的用法。
2019-05-06 16:28:56:kong 1.1.x有了一个重大变换,实现了db-less模式,可以不使用数据库了,见笔记二十六:查看全部笔记。
如果是刚开始学习kong,直接从1.x开始,0.x已经不再维护,0.15是0.x的最后一个版本。
前19篇笔记是刚开始接触kong时记录的,使用的版本是0.14.1,当时对kong一知半解,笔记比较杂乱。第二十篇开始是再次折腾时的笔记,使用的版本是1.0.3,笔记相对条理一些。
从0.x到1.x需要关注的变化有:
编译方法和代码结构见:API网关Kong学习笔记(八):Kong Ingress Controller的实现,这里不赘述。
make deps
make build
这里使用的kong-ingress-controller的版本是0.2.0
主要参数有:
--kubeconfig # 访问kubernetes的凭证
--default-backend-service # 指定默认backend,namespace/service: kong/kong-proxy
--publish-service # ingress-controller,在kubernetes中对应的服务,namespace/service:kong/kong-ingress-controller
--kong-url # kong admin地址
--update-status # 更新ingress状态,设置为true时,ingress-controller需要是kubernetes集群中的一个pod。
可以用下面的命令运行:
$ ./kong-ingress-controller \
--kubeconfig ./kubeconfig-single.yml \
--default-backend-service kong/kong-proxy \
--publish-service kong/kong-ingress-controller \
--kong-url 192.168.33.12:8001 \
--update-status=false