概述
本文为自己安装中所遇到的一些常见问题,保持长期更新,欢迎c友们批评指正,或者将自己遇到的问题私信给我,我会即时总结更新出来。
目录
- 1.0 如果安装依赖访问github出现连接失败或者拒绝连接。
- 2.0 安装etcd3.4后,依旧无法开启apisix,提示etcd问题
- 3.0 unknown directive 问题
- 4.0 加解密不能使用
- 5.0 make 等命令错误
- (1)
- (2)、启动、关闭网关服务(启动服务前需要先启动etcd: service etcd start):
- (3)若make reload 时出现如下报错,直接把logs/ 目录下的nginx.pid 文件删除,重新 make run 即可。![在这里插入图片描述](https://file2.kaopuke.com:8081/files_image/2023060300/20201214112817659.png)
- (4)、注意点
- (5)、在修改/apisix/conf中的config.yaml 配置文件后,需要make init 重新初始化数据, 在make run 或make reload 。
- 6.0 访问控制台问题
- 403问题:
- 网关信息配置说明
- 7.0 apisix-dashboard make build错误
- 8.0 lua依赖安装问题
- 9.0克隆dashboard后无法正常运行
1.0 如果安装依赖访问github出现连接失败或者拒绝连接。
解决方法:
1 vim(vi) /etc/hosts
打开后会发现类似如下ip,现全部删除,
只需要新插入: 140.82.112.3 github.com 即可;这是github ip地址更换原因。
2.0 安装etcd3.4后,依旧无法开启apisix,提示etcd问题
这里需要检查自己的etcd版本,如果有其他项目需要etcd v2协议,那只能安装apisix1.5以下版本;(1.5和2.0版本为分水岭,一定需要统一etcd版本)
首先查看自己开启的版本是否为3.4(v3)
[root@localhost /]# etcd --version
etcd Version: 3.4.13
Git SHA: ae9734ed2
Go Version: go1.12.17
Go OS/Arch: linux/amd64
如果不是3.4那么需要卸载重新开启etcd
查看是否为rpm包安装
rpm -qa |grep etcd
如果是:
rpm -e --nodeps etcd-3.3xxx #卸载刚才的版本号
kill -9 端口 #同时杀死正在进行的etcd
确认全部杀死不同版本后后再重新启动即可。
3.0 unknown directive 问题
推荐使用centos7的方式进行安装依赖环境,如果不是上面的方式安装的依赖,启动网关时openresty可能会报unknown directive 问题,这是因为编译的openresty的时候,没有指定–with-http_realip_module 等模块,需将该模块加入重新编译安装openresty。
4.0 加解密不能使用
如果加解密不能使用,则需要使用 luarocks命令安装RSA加解密库,安装命令: luarocks install lua-resty-rsa ;
5.0 make 等命令错误
(1)
如果出现如上图的错误,是由于 luarocks 命令的版本过老导致,使用yum安装最新
版本即可:yum install -y luarocks 。
如果还是出现安装依赖失败(Failed installing dependency……),那么多重复运行 make deps命令就可以安装成功。
(2)、启动、关闭网关服务(启动服务前需要先启动etcd: service etcd start):
make init | 初始化etcd和nginx 配置文件 |
---|---|
make run | 启动api网关服务 |
make stop | 停止网关服务 |
make reload | 重启网关服务 |
make verify | 校验网关nginx.conf配置文件 |
make help | make 命令详细信息 |
以上的make命令只能在api-gateway目录下执行,否则无效:
在其他目录执行报错:
一个完整的启动过程:
#初始化配置
make init
#出现以下信息表示完成
#./bin/apisix init
#./bin/apisix init_etcd
#启动服务
make run
#出现以下信息代表示启动成功
#mkdir -p logs
#mkdir -p /tmp/apisix_cores/
#/usr/local/bin/openresty -p $PWD/ -c $PWD/conf/nginx.conf
(3)若make reload 时出现如下报错,直接把logs/ 目录下的nginx.pid 文件删除,重新 make run 即可。![在这里插入图片描述](https://file2.kaopuke.com:8081/files_image/2023060300/20201214112817659.png)
(4)、注意点
在部署api网关前,需要检查 “api-gateway/logs/”目录下是否有nginx.pid 文件,若有该文件需要把该文件删除。 否则在执行make run 命令是没有报错,但是网关服务不可用。
(5)、在修改/apisix/conf中的config.yaml 配置文件后,需要make init 重新初始化数据, 在make run 或make reload 。
如果 make 命令出现如下图问题:
是由于apisix/bin/ 目录下的apisix文件权限不够,给该文件增加执行权限即可,运行命令: chmod +x apisix 。
(apisix网关可以在同一服务器上部署多套,只需保证监听端口号不同即可。网关项目可以放任意目录下。)
6.0 访问控制台问题
403问题:
Api网关启动后,使用浏览器打开 http://IP:9080/dashboard/ 地址,例如:http://192.168.60.128:9080/dashboard/ (默认9080端口,可在apisix/conf/config.yaml 文件中进行自定义端口号),用户名:admin ,密码:123456。
如果访问控制台出现403问题,如下图:
是该终端没有权限访问,只需在apisix/conf/config.yaml 文件中的allow_admin处增加允许访问终端IP,执行make init 初始化数据, make reload 重启即可。(2.1版本信息在,config-default.yaml文件中,可以在config.yaml文件里面添加会默认优先读取覆盖掉config-default.yaml文件,也可以直接在config-default.yaml文件中更改)
网关信息配置说明
网关配置信息基本上是在conf/config.yaml进行配置,配置文件在修改后,需要make init 才能生效。下面大概说明几个关键地方:
allow_admin: 表示允许访问控制台dashboard的IP地址;
node_listen : 网关监听的端口默认9080,可根据需要进行更改端口;
allow_admin: 允许访问控制台的IP白名单,将其注释表示允许所有IP访问。
etcd host 配置etcd的地址,默认本机(etcd集群配置也是在这里);
7.0 apisix-dashboard make build错误
问题描述:go版本正常,可是make build出错没有manager-api文件夹;
问题原因:查看自己是否安装了vim全家桶,或者其他插件(这些插件默认下载go依赖,版本偏低,需要卸载)只能保留需要版本,重新构建后即可。
8.0 lua依赖安装问题
安装方法:
依次执行以下命令:
curl -R -O http://www.lua.org/ftp/lua-5.3.1.tar.gz
tar zxf lua-5.3.1.tar.gz
cd lua-5.3.1
make linux test
可能出现的问题:
gcc -std=gnu99 -O2 -Wall -Wextra -DLUA_COMPAT_5_2 -DLUA_USE_LINUX -c -o lua.o lua.c
lua.c:80:31: 致命错误:readline/readline.h:没有那个文件或目录
#include <readline/readline.h>
^
编译中断。
make[2]: *** [lua.o] 错误 1
make[2]: 离开目录“/home/jason/tools/lua-5.3.1/src”
make[1]: *** [linux] 错误 2
make[1]: 离开目录“/home/jason/tools/lua-5.3.1/src”
make: *** [linux] 错误 2
解决办法:
安装: libtermcap-devel ncurses-devel libevent-devel readline-devel
执行如下命令即可:
yum install libtermcap-devel ncurses-devel libevent-devel readline-devel
执行lua,查看是否安装成功:
[root@localhost lua-5.3.1]# lua
Lua 5.1.4 Copyright (C) 1994-2008 Lua.org, PUC-Rio
>
9.0克隆dashboard后无法正常运行
问题:克隆命令:
git clone -b v2.0 https://github.com/apache/apisix-dashboard.git
一定需要确认官方版本,github上确认apisix版本相对应的dashboard版本,不支持向上或向下兼容。版本必须一一对应。
最后
以上就是聪明百合为你收集整理的apisix安装常见问题归纳的全部内容,希望文章能够帮你解决apisix安装常见问题归纳所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复