linux安装和部署kong网关教程和遇到的所有问题的解决帖。konga的安装教程。konga问题。Kong-Dashboard安装教程百分百可用。

本文大部分并未直接给出下载连接或者命令,而是官网的教程链接

假如按照官网的教程出了问题,看本文的经验分享就行了,让你少走很多弯路,假如文章有用,欢迎点赞收藏!

 

我本机的环境:

windows物理机 + linux centos虚拟机。

 

本文介绍两种KONG UI的使用。一种是Kong-Dashboard。一种是konga。

Kong-Dashboard的版本控制:

Kong-Dashboard versionsKong versionsNode versions
1.x.x>= 0.6, < 0.10 
2.x.x0.10 
3.0.x>= 0.9, <0.12>= 6.0.0
3.1.x, 3.2.x>= 0.9, <0.13>= 6.0.0
3.3.x, 3.4.x>= 0.9, <0.14>= 6.0.0
3.5.x>= 0.9, <0.15>= 6.0.0
3.6.x>= 0.9, <2.0.0>= 6.0.0

konga的版本控制:

Compatibility

From 0.14.0 onwards, Konga is ONLY compatible with Kong 1.x

If you're on an older Kong version , use this branch or konga:legacy from docker hub instead.

Prerequisites

根据两种UI的版本控制,本教程选择kong的版本为1.0,postgresql的版本为9.6,nodejs版本为12。 

目录

一、首先安装postgresql数据库。

步骤一、官方的安装教程。

步骤二、配置postgresql

步骤三、配置远程控制

二、安装kong

步骤一、kong的卸载

步骤二、kong的安装

步骤三、kong的配置

步骤四、在数据库Kong中创建需要的表

步骤六、验证kong启动成功

三、安装Kong Dashboard (kong的UI管理)(可视化管理)

步骤一、安装之前需要先安装nodejs。因为可视化管理nodejs开发。

步骤二、Kong Dashboard 的安装。

 四、konga的安装

步骤一、安装nodejs,同上。

步骤二、安装konga

步骤三、验证

大功告成!


一、首先安装postgresql数据库。

步骤一、官方的安装教程。

https://www.postgresql.org/download/linux/redhat/

我遇到的问题:

1.系统CA证书的问题,以及yum使用不了https源。

2.yum下载安装rpm时候,直接报无法下载。

问题一的解决方案:

 参考我的这篇文章

问题二的解决方案

可以使用wget下载rpm,假如你是linux虚拟机,可以使用filezila在物理机下载之后,在上传给linux也行。

# 在下载的rpm包存放的目录执行以下语句
rpm -ivh rpm包的名字

步骤二、配置postgresql

初始化数据库之后,会自动为linux系统创建一个postgres用户,同时postgresql数据库还有一个默认的postgres用户。

首先,修改PostgreSQL数据库默认用户postgres的密码

#以postgres身份登录

sudo -u postgres psql

#修改密码

ALTER USER postgres WITH PASSWORD 'postgres';

#退出客户端

\q

其次,修改linux下postgres用户的密码

#删除用户postgres的密码
sudo passwd -d postgres

#设置用户postgres的密码

sudo -u postgres passwd

 

在kong的默认配置中用的是postgr的kong数据库和kong用户。

所以我们还可以给数据库配置其他的用户以及新建一个数据库

1.创建一个名叫kong的linux用户

#登录到root用户

su root

# 添加kong用户

sudo adduser kong

# 可选 为kong系统用户设置密码

#sudo passwd kong

2.为postgresql创建用户和数据库

#创建kong账户  -e并配置为超级管理

createuser -s -e kong

#创建编码为utf-8的kong数据库 并把所有者设置为kong

createdb -E UTF8 -O kong kong

3.为新创建的这个kong用户,设置密码

#切换到postgres linux用户

su postgres

#登录到postgresql数据库客户端

psql

#设置kong的密码

ALTER USER kong WITH PASSWORD 'kong';

#离开数据库

\q 

 

步骤三、配置远程控制

修改vi /var/lib/pgsql/9.6/data/postgresql.conf文件,配置可以远程访问(正式环境按照白名单正确配置)

将listen_addresses前的#去掉,并将 listen_addresses = 'localhost' 改成 listen_addresses = '*';

#------------------------------------------------------------------------------
# CONNECTIONS AND AUTHENTICATION
#------------------------------------------------------------------------------
# - Connection Settings -
# 放开IP的限制
listen_addresses = '*'          # what IP address(es) to listen on;

修改客户端认证配置文件 vi /var/lib/pgsql/9.6/data/pg_hba.conf

将IPv4区下的127.0.0.1/32修改为0.0.0.0/0; 将ident修改为md5

# "local" is for Unix domain socket connections only
local   all             all                                     md5
# IPv4 local connections:
host    all             all             0.0.0.0/0            md5
# IPv6 local connections:
host    all             all             ::1/128                 md5
# Allow replication connections from localhost, by a user with the
# replication privilege.
#local   replication     all                                     peer
#host    replication     all             127.0.0.1/32            ident
#host    replication     all             ::1/128                 ident

 

二、安装kong

假如需要用到kong的UI管理界面,也就是kong-dashboard,kong的版本不能过高。1版本以下。

下面我介绍三种kong的安装方法,以及kong的卸载方法。 

步骤一、kong的卸载

假如你之前有安装过kong,需要先卸载掉kong以及kong的目录,下边是三种不同的kong版本卸载方式,自己找自己的吧

yum remove kong

yum remove kong.comm(命令补全)

yum remove kong.noar(命令补全)

删除kong的目录(三个地方都要删除掉)

rm -rf /etc/kong

rm -rf /usr/local/kong

#这个lua的版本 可能跟你不一样 换成自己的版本

rm -rf /usr/local/share/lua/5.1/kong/

步骤二、kong的安装

方式一:官网的链接,此方法下载的是最新版本的kong。注意:此方法会安装最新版的空。kong-Dashboard高版本不兼容

按照  If you are using the repository, execute 教程进行安装!

https://docs.konghq.com/install/centos/ 

方式二:通过yum方式

yum install epel-release

#linux有命令提示语句的。输入到kong之后 按tab键 有时候也会自动补全kong.noarch
yum install kong.noarch

方式三:通过rpm方式

下载方式:

[1]inux系统直接通过wget下载:(可以换成自己想要的版本)

    wget https://bintray.com/kong/kong-rpm/download_file?file_path=centos/7/kong-1.1.2.el7.noarch.rpm

[2]使用物理机:

  •  下载之后 上传到linux系统。

安装方式:

#安装下载好的rpm,通过yum安装,可以帮助你解决包的依赖关系

yum localinstall 你的rpm包

步骤三、kong的配置

#进入kong配置文件目录

cd /etc/kong/

#拷贝默认的配置到新建的kong.conf

cp kong.conf.default kong.conf

#编辑配置
vim /etc/kong/kong.conf

#在这个文件里 你会发现kong的默认配置中有名为kong数据库和kong账号。
#我们之前配置过kong数据和账户了。所以这里用kong

# 修改数据库配置
database = postgres             # Determines which of PostgreSQL or Cassandra
 
pg_host = 127.0.0.1             # The PostgreSQL host to connect to.
pg_port = 5432                  # The port to connect to.
pg_user = kong                  # The username to authenticate if required.
pg_password = 你自己的kong的密码           # The password to authenticate if required.
pg_database = kong              # The database name to connect to.

步骤四、在数据库Kong中创建需要的表

kong migrations up [-c /path/to/kong.conf]

#高版本使用以下命令
#kong migrations bootstrap [-c /path/to/kong.conf]

步骤五、启动kong,假如你用的账号没有权限的话,需要自己配置权限

kong start [-c /path/to/kong.conf]
# 非root权限用户启动方式
#chmod -R 777 /usr/local/kong
#chmod -R 777 /usr/local/share/lua/5.1

步骤六、验证kong启动成功

curl -i http://localhost:8001/

三、安装Kong Dashboard (kong的UI管理)(可视化管理)

步骤一、安装之前需要先安装nodejs。因为可视化管理nodejs开发。

yum install nodejs 我安装出现了问题。所以我直接通过下载,并配置path路径的方式进行安装。

nodejs的官方下载地址,选择linux版本。https://nodejs.org/en/download/

# 下载完成之后,是个以xz结尾的压缩包,需要先通过命令生成tar文件
# 例如我的配置版本

xz -d node-v12.18.4-linux-x64.tar.xz

# 解压缩

tar xf node-v12.18.4-linux-x64.tar

下载安装完nodejs之后,配置path路径

# 打开path
vim /etc/profile

# 在里面配置上自己的nodejs目录就可。以下是我的配置

export NODE_PATH=/opt/node-v12.18.4-linux-x64/bin

export PATH=$PATH:$NODE_PATH

 简单介绍下 path路径的问题

export NODE_PATH 是自定义了一个目录 可以随便写。

假如你需要用到某个路径了。需要使用$符号。比如需要使用NODE_PATH路径,则$NODE_PATH

路径和路径之间的分割使用 ":" 使用冒号分割,例如上面例子中的$PATH:$NODE_PATH

步骤二、Kong Dashboard 的安装。

官网教程:选择使用NPM的方式就行了

https://github.com/PGBI/kong-dashboard/tree/e93365a92eb3e58273a245c1023cc3d28774b5a3

# Using npm
# Install Kong Dashboard
npm install -g kong-dashboard


#下边的启动方式 选择自己需要的进行启动
#启动成功之后 浏览器输入kong/8080 或者 localhost:8080 就可以访问到了
# Start Kong Dashboard
kong-dashboard start --kong-url http://kong:8001

# Start Kong Dashboard on a custom port
kong-dashboard start \
  --kong-url http://kong:8001 \
  --port [port]

# Start Kong Dashboard with basic auth
kong-dashboard start \
  --kong-url http://kong:8001 \
  --basic-auth user1=password1 user2=password2

# See full list of start options
kong-dashboard start --help

遇到的问题:

问题一:npm安装使用https时 报错 

npm ERR! code SELF_SIGNED_CERT_IN_CHAIN

问题二:npm安装太慢

问题三:

Connecting to Kong on http://kong:8001 ...
Could not reach Kong on http://kong:8001
Error details:
Error: getaddrinfo ENOTFOUND kong
    at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:66:26) {
  errno: 'ENOTFOUND',
  code: 'ENOTFOUND',
  syscall: 'getaddrinfo',
  hostname: 'kong'
}

解决办法:

问题一:先执行这个命令 npm config set strict-ssl false

问题二:设置国内镜像源  npm install -g cnpm --registry=http://registry.npm.taobao.org

问题三:这条报错里可以看到kong这个域名找不到,猜测是没有配置上。这里直接把kong换成localhost。

kong-dashboard start --kong-url http://localhost:8001

 四、konga的安装

步骤一、安装nodejs,同上。

步骤二、安装konga

# 以下为开发环境的配置
git clone https://github.com/pantsel/konga.git
cd konga

#按照官方教程,需要先创建一个.env文件进行环境的配置。我的配置文件内容如下
PORT=1337
NODE_ENV=development
KONGA_HOOK_TIMEOUT=120000
DB_ADAPTER=postgres
DB_URI=postgresql://kong:kong@localhost:5432/kong
KONGA_LOG_LEVEL=info
#TOKEN_SECRET=some_secret_token


#安装依赖
cnpm i

#启动konga
cnpm start

步骤三、验证

访问 http://localhost:1337

 

 

大功告成!

遇到的问题:

问题一:中间遇到了一个grunt 的提示错误。

解决办法:

问题一:执行

cnpm install -g grunt-cli

 

 

  • 3
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值