参考官方文档 安装APISIX
安装
mkdir apisix-2.7
wget https://downloads.apache.org/apisix/2.7/apache-apisix-2.7-src.tgz
tar zxvf apache-apisix-2.7-src.tgz -C apisix-2.7
# 记得下载好运行时需要的lua库
cd apisix-2.7
make deps
启动
# 先写好配置文件nginx.conf并启动etcd
$ make init
# start APISIX server
$ make run
# stop APISIX server gracefully
$ make quit
# stop APISIX server immediately
$ make stop
# more actions find by `help`
$ make help
使用apisix-ingress-controller
cd /path/to/apisix-ingress-controller
./apisix-ingress-controller ingress \
--kubeconfig ~/.kube/config \ #注意修改为自己的kubeconfig路径,我因为使用minikube所以是这个路径
--http-listen :8080 \
--log-output stderr \
--apisix-base-url "http://127.0.0.1:9080/apisix/admin" \ #注意这里需要修改为自己的apisix地址
--apisix-admin-key edd1c9f034335f136f87ad84b625c8f1 #注意这里可能需要修改key
此时遇到了问题:
error retrieving resource lock default/ingress-apisix-leader: Get "https://127.0.0.1:49663/apis/coordination.k8s.io/v1/namespaces/default/leases/ingress-apisix-leader": dial tcp 127.0.0.1:49663: connect: connection refused
原因是k8s集群没启动。使用minikube启动:minikube start
报错:failed to list upstreams in APISIX: unexpected non-empty object