离线安装 OpenResty Edge
1. 架构说明
OpenResty Edge 主要包含三个角色(OpenResty Edge Admin,OpenResty Edge Log Server, OpenResty Edge Node),三者的关系如下图:
OpenResty Edge Admin:简称 Edge Admin,用于控制管理 OpenResty Edge Node。
OpenResty Edge Log Server:简称 Log Server,用于指标,日志的存储和查看。
OpenResty Edge Node:简称 Edge Node,是具体的网关服务器,承载用户流量。
此外还包含两个数据存储角色:
OpenResty Edge Admin Database:简称 Edge Admin Database,是 Edge Admin 所使用的数据库,用于持久化 Edge Node 的配置。
OpenResty Edge Log Server Database:简称 Log Server Database,是 Log Server 所使用的数据库,用于持久化 Edge Node 的指标和日志数据。
2. 配置推荐
正式环境安装 OpenResty Edge 至少需要三台机器,分别安装 Edge Admin,Log Server 和 Edge Node 组件。
如果是测试环境,Edge Admin 和 Log Server 也可以安装在同一台机器上,以节省机器资源。
对于规模在 10 个节点以内的 OpenResty Edge 集群,我们推荐:
Edge Admin:至少使用 4 核处理器,16G 内存以及 200G SSD 硬盘的机器。
Log Server:至少使用 4 核处理器,16G 内存以及 200G SSD 硬盘的机器。
Edge Node:相对灵活,取决于业务量,大致是 1 个处理器核心搭配 2G 内存,越大越好。比如 8 核 16 GB 内存,200G 硬盘。
如果是超过 10 个节点的集群,需要根据实际场景升级配置,如果是更大规模的集群,还可以将 Edge Admin Database 和 Log Server Database 部署到单独的机器,如下图所示:
3. 安装流程
我们会访问如下公网地址,如果贵司有网络出口防火墙的话,需要开启如下白名单:
openresty.com 443
openresty.org 443
pkg.openresty.com 443
api.openresty.com 443
3.1 获取离线包
请使用邮箱在 OpenResty 下载中心 登录并下载:
- OpenResty-Edge-Offline-VERSION.tar.gz:统一提供的 OpenResty Edge 软件包。
- openresty-edge-VERSION.tar.gz:用户独立的配置包。
tar xf OpenResty-Edge-Offline-VERSION.tar.gz
tar xf openresty-edge-VERSION.tar.gz
OpenResty-Edge-Offline-VERSION.tar.gz 会包含以下内容:
openresty-postgresql12.tar.gz
openresty-postgresql.tar.gz
,仅升级时使用openresty-edge-admin.tar.gz
openresty-edge-node.tar.gz
openresty-edge-log-server.tar.gz
update-admin-db.sh
,仅升级时使用update-log-server-db.sh
,仅升级时使用init-admin-db.sh
,仅安装时使用init-log-server-db.sh
,仅安装时使用
openresty-edge-VERSION.tar.gz 会包含以下内容:
openresty-edge-config-VERSION.deb
:ubuntu/debian 等系统使用的配置包。openresty-edge-config-VERSION.rpm
:rhel/fedora 等系统使用的配置包。
3.2 数据库安装与初始化
内网端口需要开放 5432
。
安装并初始化 Edge Admin DB:
# 把 openresty-postgresql12.tar.gz 传输到目标机器 tar xf openresty-postgresql12.tar.gz cd openresty-postgresql12 # 复制 openresty-edge-config 到当前目录 # cp /PATH/openresty-edge-config-* ./ # 安装 sudo bash install.sh # 初始化 # 把 init-log-server-db.sh 传输到目标机器 /bin/bash init-admin-db.sh
安装并初始化 Log Server DB: 如果你正在构建的是生产环境,我们建议在不同的机器上安装 Edge Admin DB 和 Log Server DB。
# 把 openresty-postgresql12.tar.gz 传输到目标机器 tar xf openresty-postgresql12.tar.gz cd openresty-postgresql12 # 复制 openresty-edge-config 到当前目录 # cp /PATH/openresty-edge-config-* ./ # 安装 sudo bash install.sh # 初始化 # 把 init-log-server-db.sh 传输到目标机器 /bin/bash init-log-server-db.sh
3.3 Edge Admin Web 安装
需要开放 443
和 12345
两个端口(443
提供管理后台,12345
用于与 Edge Node 端通讯)
安装:
# 把 openresty-edge-admin.tar.gz 传输到目标机器 tar xf openresty-edge-admin.tar.gz cd openresty-edge-admin # 复制 openresty-edge-config 到当前目录 # cp /PATH/openresty-edge-config-* ./ # 安装 sudo bash install.sh
配置证书和私钥(没有也可以先跳过):
/usr/local/oredge-admin/conf/ssl/ssl.crt /usr/local/oredge-admin/conf/ssl/ssl.key
修改配置:(如果 PostgreSQL, Edge Admin, Log-Server 复用同一个机器,可以直接使用默认配置)
# 这个文件后续的升级也不会自动覆盖,请注意行首不要留空格 sudo vim /usr/local/oredge-admin/conf/config.ini
需要修改的配置:
1.对应的 PostgreSQL 地址
2.Log-Server 地址
重启服务
sudo systemctl reload oredge-admin
此时 Edge Admin 应该可以正常使用了(我们只开了 HTTPS) https://your-admin.com/
登录账号:
admin
获取登录密码:(请在登录成功后,修改密码)
grep -rs "password :" init-admin-db.sh
3.4 配置两份 admin-web 服务(可选)
如果希望提高 admin-web 的可用性,可以考虑部署两份 admin-web 服务,配置为双主。 步骤是:
按照上面的步骤
3.3 Edge Admin Web 安装
再安装一套 admin-web 软件修改配置
# 这个文件后续的升级也不会自动覆盖,请注意行首不要留空格 sudo vim /usr/local/oredge-admin/conf/config.ini
需要修改 clone_admin 下的 host 字段,每个 admin-web 配置另外一个 admin-web 服务的地址。
修改后重启 admin-web 服务,此时两个 admin-web 服务是双主模式,访问任意一个 admin-web 都是一样的效果。
3.5 Log-Server 安装
需要开放 12346
和 8089
两个端口(12346
用于与 Edge Node 端通讯,8089
用于与 Edge Admin 通讯)
安装:
# 把 openresty-edge-log-server.tar.gz 传输到目标机器 tar xf openresty-edge-log-server.tar.gz cd openresty-edge-log-server # 复制 openresty-edge-config 到当前目录 # cp /PATH/openresty-edge-config-* ./ # 安装 sudo bash install.sh
修改配置:(如果 PostgreSQL, Edge Admin, Log-Server 复用同一个机器,可以直接使用默认配置)
# 这个文件后续的升级也不会自动覆盖,请注意行首不要留空格 sudo vim /usr/local/oredge-log-server/conf/config.ini
需要修改的配置:
1.对应的 PostgreSQL 地址
2.Edge Admin 地址
重启服务
sudo systemctl reload oredge-log-server
此时在 Edge Admin 的【控制面板】-【-日志】下应该能获取到日志。
3.6 Edge Node 安装
安装:
# 把 openresty-edge-node.tar.gz 传输到目标机器 tar xf openresty-edge-node.tar.gz cd openresty-edge-node # 复制 openresty-edge-config 到当前目录 # cp /PATH/openresty-edge-config-* ./ # 安装 sudo bash install.sh
修改配置:
# 这个文件后续的升级也不会自动覆盖,请注意行首不要留空格 sudo vim /usr/local/oredge-node/conf/config.ini
需要修改的配置:
1.Edge Admin 地址
2.Log-Server 地址
如果配置了双主 admin-web 服务,可以配置
admin
段下的host2
字段。 node 会随机使用host
和host2
(与配置顺序无关),并且当某一个 admin-web 宕机的时候,会自动切换到另外一个 admin-web 服务。重启服务
sudo systemctl reload oredge-node
至此全套的 OpenResty Edge 已经搭建完毕。
4. 数据库备份以及高可用
我们提供了两种方式(数据库备份,数据库高可用)来保证数据安全,在数据库损坏之后可以利用备份文件或者从库恢复数据。我们强烈建议两种方式都采用,最大限度保障数据安全。
5. 开始使用
有问题请与我们随时沟通!