【Gravitee学习一】ZIP方式部署安装

该文详细介绍了在JDK11环境下,如何下载并部署Gravitee.IO的API网关、管理平台和门户。涉及MongoDB、ElasticSearch和Nginx的配置,以及通过Nginx代理管理页面和门户的访问。文章提供了配置文件修改、服务启动和接口测试的步骤。

一、环境

  • JDK 11
 wget https://download.java.net/java/GA/jdk11/9/GPL/openjdk-11.0.2_linux-x64_bin.tar.gz --no-check-certificate
  • graviteeio 安装包(官网下载地址:https://download.gravitee.io/#graviteeio-apim/distributions/)—我下的最新版本3.20.9
 wget https://download.gravitee.io/graviteeio-apim/distributions/graviteeio-full-3.20.9.zip --no-check-certificate
  • MongoDB 4.2.11
  • ElasticSearch 7.9.2
  • Nginx 1.10.3
  • 服务器信息
IP配置部署信息
192.168.10.112c4Gnginx/api网关、控制台、门户前后端服务
192.168.10.122c4Gmongo
192.168.10.13/14/152c4GElasticSearch集群

二、安装

基础环境(Nginx、ES、Mongo)的安装不再重复,直接开始Gravitee的安装部署

  • 本文Gravitee安装根目录设置为:/data/gravitee
# 创建部署目录
mkdir -p /data/gravitee
# 进入部署目录
cd /data/gravitee
# 下载安装包,并解压
wget https://download.gravitee.io/graviteeio-apim/distributions/graviteeio-full-3.20.9.zip --no-check-certificate\
unzip graviteeio-full-3.20.9.zip
  • 解压有四个目录

2.1、网关部署(graviteeio-apim-gateway)

  1. 配置文件修改(graviteeio-apim-gateway项目目录下的config/gravitee.yml)
# 进入部署目录
cd /data/gravitee/graviteeio-full-3.20.9/graviteeio-apim-gateway-3.20.9
vim config/gravitee.yml 
  1. Mongo地址修改:单节点无密码只要修改ds.mongodb…
    在这里插入图片描述
  2. ES配置(由于我是多节点,则将ds.elatic.host和ds.elatic.port注释,直接配置reporters.elasticsearch.XXX下的配置)如下:
    在这里插入图片描述
  3. 其他配置暂不修改,使用默认的即可
  4. 启动服务
# 用nohup方式启动
nohup bin/gravitee > logs/nohup.log 2>&1 &
# 或者官方命令启动: bin/gravitee -d -p=/data/gravitee/graviteeio-full-3.20.9/graviteeio-apim-gateway-3.20.9/logs/gio.pid
  1. 查看控制台日志
tail -100f logs/nohup.log 
# 如下日志,没有报错,则启动成功
……
15:28:19.617 [vert.x-eventloop-thread-2] [] INFO  i.g.g.d.vertx.DebugReactorVerticle - Debug HTTP listener ready to accept requests on port 8482
15:28:19.633 [graviteeio-node] [] INFO  i.g.g.standalone.node.GatewayNode - Gravitee.io - API Gateway id[b32bd1b2-de44-4bec-abd1-b2de442bec06] version[3.20.9] pid[4271] build[317635#5db0e3b7bf] jvm[Oracle Corporation/OpenJDK 64-Bit Server VM/11.0.2+9] started in 6816 ms.
……
  1. 启动后mongo会生成对应库,ES也会生成对应索引
    在这里插入图片描述
    在这里插入图片描述

  2. API接口测试

curl -X GET http://localhost:8082/
# 返回值:No context-path matches the request URI.root

2.2 graviteeio-apim-rest-api安装

  1. cd到部署目录:cd /data/gravitee/graviteeio-full-3.20.9/graviteeio-apim-rest-api-3.20.9
  2. 修改配置文件:vim config/gravitee.yml (ES我使用的集群,将原有的单节点注释掉,配置集群)
    在这里插入图片描述
    在这里插入图片描述
  3. 启动服务
 nohup ./bin/gravitee > logs/nohup.out 2>&1 &
 # 或者官方命令:bin/gravitee -d -p=/data/gravitee/graviteeio-full-3.20.9/graviteeio-apim-rest-api-3.20.9/logs/gio.pid
  1. 查看日志
……
19:54:06.423 [graviteeio-node] INFO  i.g.r.a.s.node.GraviteeApisNode - Gravitee.io - Rest APIs id[7df52b09-6cfe-414d-b52b-096cfe414d0a] version[3.20.9] pid[9992] build[317635#5db0e3b7bf] jvm[Oracle Corporation/OpenJDK 64-Bit Server VM/11.0.2+9] started in 10093 ms.
……
  1. 检查接口
# 管理平台api —— 改接口无返回值
curl -X GET http://localhost:8083/management/organizations/DEFAULT/environments/DEFAULT/apis

# 门户API接口 
 curl -X GET http://localhost:8083/portal/environments/DEFAULT/apis
 # 门户API接口返回值:
 {
  "data" : [ ],
  "metadata" : {
    "data" : {
      "total" : 0
    }
  }
}

2.3 管理平台和门户前端部署 — Nginx

  1. 修改管理平台配置文件:vim constants.json
# 内容修改为:
{
  "baseURL": "http://192.168.10.11/management/organizations/DEFAULT/environments/DEFAULT"
}
  1. 这里使用nginx部署
# 控制台前端
server {
        listen       81;
        server_name  localhost;

        location / {
           root /data/gravitee/graviteeio-full-3.20.9/graviteeio-apim-console-ui-3.20.9;
           index index.html;
        }
}

# 门户前端
server {
        listen       82;
        server_name  localhost;

        location / {
           root /data/gravitee/graviteeio-full-3.20.9/graviteeio-apim-portal-ui-3.20.9;
           index index.html;
        }
}
  1. reload Nginx
nginx -s reload

Nginx代理配置

upstream apim-gateway {
   server 192.168.10.11:8082;
}

upstream apim-management-api {
    server 192.168.10.11:8083;
}

upstream apim-management-ui {
    server 192.168.10.11:81;
}

upstream apim-portal-dev {
    server 192.168.10.11:82;
}

proxy_set_header   Host $host;
proxy_set_header   X-Real-IP $remote_addr;
proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header   X-Forwarded-Host $server_name;
proxy_set_header   X-Forwarded-Proto $scheme;

server {
    listen 80;

    location /gateway/ {
        proxy_pass http://apim-gateway/;
    }

    location /management/ {
        proxy_pass http://apim-management-api/management/;
    }

    location /console/ {
        proxy_pass http://apim-management-ui/;
        sub_filter_once  on;
        sub_filter  '<base href="/' '<base href="/console/';
    }

    location /portal/ {
        proxy_pass http://apim-management-api/portal/;
        sub_filter_once  on;
        sub_filter  '<base href="/' '<base href="/portal/';
    }

    location / {
        proxy_pass http://apim-portal-dev/;
    }

}

管理页面

  • 访问:http://192.168.10.11/console/ (使用默认密码admin/admin登录即可)
    在这里插入图片描述

门户页面

  • 访问:http://192.168.10.11

在这里插入图片描述

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值