kong雖然很強大,但是在管理方式上比較單一隻能通過API請求來管理,那麼有沒有一個UI界面的管理工具呢?這裏就要說到kong管理UI新起之秀Konga
附上:
喵了個咪的博客:w-blog.cn
kong官網:https://konghq.com/
konga官網:https://github.com/pantsel/konga
PS:Kong版本必須 >= 1.0.0才能正常使用konga
一,konga介紹
konga帶來的一個最大的便利就是可以很好地通過UI觀察到現在kong的所有的配置,並且可以對於管理kong節點情況進行查看、監控和預警,konga主要特性如下:
- 多用戶管理
- 管理多個Kong節點
- 電子郵件異常信息通知
- 管理所有Kong Admin API
- 使用快照備份,還原和遷移Kong節點
- 使用運行狀況檢查監控節點和API狀態
- 輕鬆的數據庫集成(MySQL,postgresSQL,MongoDB)
二,docker安裝konga
安裝當然使用最方便的docker
docker run -p 1337:1337 \
--network kong-net \
--name konga \
-e "NODE_ENV=production" \
pantsel/konga:0.14.1
安裝完成之後直接訪問1337端口即可訪問konga首頁,並且註冊自己的賬號
三,使用外部數據庫部署konga
使用docker雖然很快,但是如果一旦重新部署數據就不復存在,konga和kong一樣可以使用外部數據庫來做到數據持久保存
我們先需要準備一個postgres的數據庫,可以用kong的使用同一個
{DB-host}:{DB-port}
{DB-user}
{DB-pass}
創建konga數據庫
CREATE DATABASE "konga" WITH ENCODING='UTF8';
初始化konga數據庫
docker run --rm pantsel/konga:0.14.1 -c prepare -a postgres -u postgresql://{DB-user}:{DB-pass}@{DB-host}:{DB-port}/konga
通過docker-composer創建konga容器
version: '2.1'
services:
kong:
image: "pantsel/konga:0.14.1"
environment:
DB_ADAPTER: postgres
DB_HOST: {DB-host}
DB_PORT: {DB-port}
DB_USER: {DB-user}
DB_PASSWORD: {DB-pass}
DB_DATABASE: konga
NODE_ENV: production
ports:
- "1337:1337/tcp"
restart: on-failure
四,konga基本使用
先註冊賬號
添加kong的信息
可以看到首頁的數據圖
我們建立出一個服務讓我們訪問kong的根目錄可以路由到kong-admin-api
以及各類超時時間的配置
本地改一下host就可以正常訪問了
不只是配置路由,插件證書等都可以通過直接配置