服务器配置
centos7 linux x86 64
前置
需要将离线安装包上传到服务器上 {上传目录 /root/apisix-soft/ }
【建议:优先上传etcd-*.jar \ apisix-*.rpm \ cyrus-*.rpm \ openldap-*.rpm 等安装好apisix后再上传apisix-dashboard-*.rpm】
可以自行网上寻找,或找一台可联网的服务器进行下载,也可以直接使用我的资源apisix离线安装包及依赖
必做
# 大部分需要更改 ulimit
# 查看为1024则需要更改
ulimit -n
# 编辑并添加
vi /etc/profile
ulimit -SHn 65536
source /etc/profile
ulimit -n
# 65536
# 首先需要安装etcd
# 解压
tar -xvf etcd-v3.5.8-linux-amd64.tar.gz && ll
# 移动到安装目录下 【我这里的app】
mv etcd-v3.5.8-linux-amd64 /app/etcd && cd /app/etcd
# 复制 etcd、etcdtl 到 bin下
cp -a etcd etcdctl /usr/bin/
# 创建目录
mkdir /etc/etcd/data
# 创建etcd配置文件
touch etcd.conf
# 加入
ETCD_NAME=etcd
ETCD_DATA_DIR=/etc/etcd/data
ETCD_LISTEN_CLIENT_URLS=http://0.0.0.0:2379
ETCD_LISTEN_PEER_URLS=http://0.0.0.0:2380
ETCD_ADVERTISE_CLIENT_URLS=http://0.0.0.0:2379
ETCD_INITIAL_ADVERTISE_PEER_URLS=http://0.0.0.0:2380
ETCD_INITIAL_CLUSTER_STATE=new
ETCD_INITIAL_CLUSTER_TOKEN=etcd-cluster
# 编写服务文件
cd /usr/lib/systemd/system
touch etcd.service
# 加入
[Unit]
Description=etcd key-value store
Documentation=https://github.com/etcd-io/etcd
After=network.target
[Service]
EnvironmentFile=/etc/etcd/etcd.conf
ExecStart=/usr/bin/etcd
Restart=always
[Install]
WantedBy=multi-user.target
# 启动etcd
systemctl start etcd
# 加入开机自启
systemctl enable etcd
安装apisix
# 执行命令等待安装完成 安装完成apisix会安装到 /usr/local/apisix/
rpm -Uvh /root/apisix-soft/*.rpm --nodeps --force
# 执行初始化 如果这里报错etcd 需要检查网络端口是否开放以及防火墙相关设置保证apisix可以连接到etcd
apisix init
# 处理完毕后修改配置文件 截图中的红框是需要增加或修改的地方 端口自行指定
apisix:
node_listen: 8000
deployment:
role: traditional
role_traditional:
config_provider: etcd
etcd:
host:
- http://127.0.0.1:2379
admin:
admin_key:
- name: admin
key: edd1c9f034335f136f87ad84b625c8f1 # using fixed API token has security risk, please update it when you deploy to production environment
role: admin
# 执行启动
apisix start
# 到这里apisix就安装完毕了也可以用系统服务来启动
systemctl start apisix
systemctl enable apisix # 开机自启
systemctl status apisix # 如图
安装apisix-dashboard
# 安装
yum install /root/apisix-soft/apisix-dashboard-2.9.0-0.el7.x86_64.rpm
# 安装成功完毕后 会在apisix安装目录下生成dashboard目录
# 同样也需要更改配置文件
cd dashboard/conf/ && ll
vi conf.yaml
# 如图标红框的都是需要修改的地方
# 启动
nohup manager-api >/usr/local/apisix/dashboard/logs/manager.log 2>&1 &
# 我这里没将该加到软件服务中去 大家可以自行去官网查阅进行添加 当然不加也行
我这里提供官网的加入到软件服务操作,翻到底即可查阅apisix加入软件服务
坑
启动apisix查看日志发现pid相关报错
报这个错有俩个情况,一是关闭apisix不是通过apisix stop 或者 systemctl stop apisix来关闭导致存在一些存活的相关进程影响导致;二是本机有启动着的nginx导致;这俩者都是需要将相关的进程全部关闭
启动manager-api报错pid相关错误
这个貌似是一个bug,在apisix的Github也有相关的回复,暂时没有什么好的解决办法,只能删除/tmp/manager-api.pid,然后再启动
APISIX Dashboard面板访问报错Network Err
先确定apisix与etcd是否都启动着,如果都启动着,建议把etcd的数据备份,然后清空etcd,接着清空浏览器缓存,再访问,这个在apisix的Github上也有记录,偶现错误