kong+kongau

注意kong1.0与之前版本API发生了很大的改动,所以是不兼容的,kongav0.14.0是匹配kong1.0+的,不兼容1.0之前的。可以根据自己的需求进行选择。

konga是kong的一个ui,可以操作kong API。
部署版本kongv1.1.1,kongav0.14.1

部署postgres参考我的[微服务之kong+consul(二) - 诗码者 - 博客园](https://www.cnblogs.com/cuishuai/p/9219195.html)。
部署新版本的kong:[Install - CentOS | Kong - Open-Source API Management and Microservice Management](https://docs.konghq.com/install/centos/?_ga=2.75002770.1697313124.1532572204-1249667919.1526638850)

修改配置文件:
1)日志路径
2)dns_resolver = 10.42.3.6
将kong的dns_resolver地址填上consul的地址,需要在启动consul的时候把dns端口指定为53

由于kong-dashboard不支持新的kong的特性,所以决定使用konga。

konga的github地址:[GitHub - pantsel/konga: More than just another GUI to Kong Admin API](https://github.com/pantsel/konga)

安装方式采用npm安装:

数据库使用mongodb

docker部署mongodb:
docker  volume create mongo-data

docker run -d -it -p 27017:27017 -v mongo-data:/data/db --name mongodb docker.io/mongo

如果mongodb的端口不是27107,并且需要用户验证,需要修改konga/config目录下面的connect.js

mongo: {
adapter: 'sails-mongo',
url: process.env.DB_URI || null,
host: process.env.DB_HOST || 'localhost',
port: process.env.DB_PORT || 27020,
user: process.env.DB_USER || null,
password: process.env.DB_PASSWORD || null,
database: process.env.DB_DATABASE || 'konga_database',
},

准备:

安装node、npm使用nvm安装https://github.com/creationix/nvm

安装bower、gulp

npm install -g bower
npm install --save gulp-install

install:

cd /data/konga
npm i

此时会有一个WARN:

npm WARN lifecycle kongadmin@0.14.3~postinstall: cannot run in wd %s %s (wd=%s) kongadmin@0.14.3 bower --allow-root install /data/konga

需要手动安装一下:

bower --allow-root install /data/konga

配置:

cd  /data/konga
cp .env_example .env

# cat  .env

PORT=1337
NODE_ENV=production
DB_ADAPTER=mongo
KONGA_LOG_LEVEL=warn

这里adapter选择使用mongo。

启动:

nohup npm run production &

为了方便使用,写了一个启动脚本:

# cat /usr/local/bin/konga

#!/bin/bash
# start konga
le=`lsof -i: | wc -l`
pid=`lsof -i: | grep LISTEN | awk '{print $2}'` case $ in
start)
if [ $le -eq ];then
cd /data/konga
nohup npm run production >>/data/konga/nohup.out >& &
echo "kongs start successful!"
else echo "konga already startd!"
fi
;;
stop)
kill - $pid
esac

#1337是服务的监听端口,这个需要修改为自己的服务端口。

使用konga添加服务:

左侧编辑栏找到"SERVICES"-->+ADD NEW SERVICE,此时会弹出CREATE SERVICE,填写相应的service信息就好了。

这里创建一个demo,NAME就是service name,这里是demo,Description就是对此服务的一个简单的描述,这里是it's a  demo;Tags 是服务标签。Uri不用写,我们直接指定协议,使用的是http。Host指的是后端的server地址,我这里采用的是consul注册的,所以只提供一个服务域名,具体consul使用可参考我的博客。当然这里可以写自己的服务ip地址,下面的port如果用consul,那就填写80,如果使用服务ip就直接填写服务端口。ptah就是后面的匹配跳转,这个写/,或默认就好了,我们去Routes里面定义。

提交了以后,demo这个service就创建完成了。可以去SERVICES里面去查看:

接下来,为demo创建Routes:选择上面页面的Routes选项,选择+ ADD ROUTE,会弹出ADD ROUTE TO DEMO的对话框,然后填写信息,(!!!每个选项填写完成都必须按回车键确认,否则填写不生效):

如图,path填写访问的路径,/demo。其他的照着填即可,点击SUBMIT ROUTE,即完成添加。

这样就可以通过kong的域名进行访问:比如kong绑定的域名是kong.www.com.访问kong.www.com/demo就可以访问自己的服务。

consul中的注册文件:

{
"service": {
"name": "demo",
"address": "10.42.3.6",
"tags": [
"demo"
],
"port": ,
"check": {
"id": "demo",
"name": "demo status",
"http": "http://10.42.3.6:4072/health",
"interval": "5s",
"timeout": "2s"
}
}
}

重新加载文件即可。

consul-reload

consul的使用参考我的另外一篇博客http://www.cnblogs.com/cuishuai/p/8194345.html。

访问:

kong+konga的更多相关文章

  1. Kong/Konga - Docker容器化安装

    1.0 安装kong + postgresDB docker network create kong-net docker pull postgres:latest docker run -d --n ...

  2. 整合一套高性能网关Kong

    前言 相信大家对Api网关都比较的熟悉,我们之前的文章也介绍过ASP.NET Core的网关Ocelot,也介绍过Spring Cloud Gateway.说到网关的主要功能,其实总结起来就两个字&q ...

  3. kong api可视化管理工具konga安装

    说明:官网推荐: kong-dashboard,但对比界面高端程度和友好度,更推荐konga.[一个坑]kong版本问题:我在安装时目前kong最新版本已经到1.0.0, 对于konga和kong-d ...

  4. [Kong 与 Konga与postgres数据库] 之 Kuberneres 部署

    1.Kong的概述 Kong是一个clould-native.快速的.可扩展的.分布式的微服务抽象层(也称为API网关.API中间件或在某些情况下称为服务网格)框架.Kong作为开源项目在2015年推 ...

  5. [Kong 与 Konga 与 Postgres数据库] 之 Kuberneres 部署

    1.Kong的概述 Kong是一个clould-native.快速的.可扩展的.分布式的微服务抽象层(也称为API网关.API中间件或在某些情况下称为服务网格)框架.Kong作为开源项目在2015年推 ...

  6. kong的管理UI选择-konga

    目录 npm方式安装 1. 准备依赖环境 2. 安装konga 3. 配置 4. 环境变量(more) 5. 数据库 配置 初始化/迁移 6. 运行 Docker方式安装 关于Kong-Dashboa ...

  7. 网关服务Kong和konga介绍安装使用教程

    介绍 Kong是一款基于OpenResty(Nginx + Lua模块)编写的高可用.易扩展的,由Mashape公司开源的API Gateway项目.Kong是基于NGINX和Apache Cassa ...

  8. kubernetes 安装kong、kong-ingress-controlor

    一.关于kong的详细内容这里不再赘述,可以查看官网. kong升级到1.0以后功能越来越完善,并切新版本的kong可以作为service-mesh使用,并可以将其作为kubernetes的ingre ...

  9. Kong管理UI -kong-dashboard

    本文仍然是在ubuntu18的环境下进行 https://github.com/PGBI/kong-dashboard kong dashboart如果要正常使用管理UI,前提为kong已经正常run ...

随机推荐

  1. spring mvc controller中的参数验证机制(二)

    这里我们介绍以下自定义的校验器的简单的使用示例 一.包结构和主要文件 二.代码 1.自定义注解文件MyConstraint package com.knyel.validator; import ja ...

  2. javaweb开发1.环境配置(javaweb插件下载及tomact在eclips中配置)

    一.下载javaweb插件 1.安装好jdk,下载eclips(Juno版本) 2.打开eclips,安装Web插件和JavaEE插件 3 在Eclipse中菜单help选项中选择install ne ...

  3. Legend 图例

    1.添加图例 >>> import matplotlib.pyplot as plt >>> import numpy as np >>> x = ...

  4. RNA-seq数据综合分析教程 AKAP95

    https://blog.csdn.net/l_yivs?t=1 RNA-seq数据综合分析教程 2 4,055 A+ 所属分类:Transcriptomics   收  藏 2     RNA-se ...

  5. php数组函数有哪些操作?php数组函数的应用

    PHP 的数组是一种很强大的数据类型,与此同时 PHP 内置了一系列与数组相关的函数可以很轻易的实现日常开发的功能.但是我发现好像很多小伙伴都忽略了内置函数的作用(比如我自己就编写过一些有关数组操作的 ...

  6. 20170805_Elasticsearch_简介和安装

    官网地址: https://www.elastic.co/guide/en/elasticsearch/reference/current/getting-started.html Elk 是一个可高 ...

  7. qhfl-7 结算中心

    结算中心,即从购物车前往支付前的确认页面,这里要开始选择优惠券了 """ 前端传过来数据 course_list 课程列表 redis 中将要存放的结算数据 { sett ...

  8. POI 导出

    package com.baoqilai.scp.service; import java.io.File; import java.io.FileOutputStream; import java. ...

  9. virtual关键字

    出于多态的考虑,为了覆盖, 子类同名覆盖函数(函数名.参数.返回值都相同) virtual void print(): 这也许会使人联想到函数的重载,但稍加对比就会发现两者是完全不同的:(1)重载的几 ...

  10. 发布本地项目和源码到maven私服中

    有时候我们会使用第三方包到我们的项目中,但是想看源码的时候,需要下载源码查看,十分麻烦. 不如把源码上传到maven私服中,这样查看源码的时候就可以直接从mvaen nexus下载直接查看了. 方法如 ...