文章目录
一、下载和安装kong
curl -Lo kong-2.6.0.rpm $(rpm --eval "https://download.konghq.com/gateway-2.x-centos-%{centos_ver}/Packages/k/kong-2.6.0.el%{centos_ver}.amd64.rpm")
yum install kong-2.6.0.rpm
也可以去我的网盘下载
链接: https://pan.baidu.com/s/1DpW-jl_PEQwnDyOMS75fCQ 提取码: ple3
查看版本
kong version
2.6.0
二、安装PostgreSQL
1. 安装
# 安装rpm
yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
# 安装服务端
yum install postgresql10-server
# 初始化
/usr/pgsql-10/bin/postgresql-10-setup initdb
#设置自动启动、启动服务
systemctl enable postgresql-10
systemctl start postgresql-10
2.创建用户和数据库
# 进入postgres命令行 注意分号不能掉
su - postgres psql
# 建立数据库以及用户
CREATE USER kong WITH PASSWORD 'kong'; CREATE DATABASE kong OWNER kong;
# 退出
\q
3.修改认证模式
旧版本的PostgreSQL默认使用身份验证,新版本(PSQL 10+)使用scramp -sha-256。如果要允许“kong”用户本地与数据库通信,需要修改PostgreSQL配置文件,将认证方式修改为md5
否则会报错 could not retrieve current migrations: [postgres error] 致命错误: 用户 “kong” Ident 认证失败
vim /var/lib/pgsql/10/data/pg_hba.conf
4. 修改kong数据库密码
1、将kong_defaults里面的 password = NONE 都修改为kong
vi /usr/local/share/lua/5.1/kong/templates/kong_defaults.lua
2、将kong.conf.default 里面 取消下图的注释
vi /etc/kong/kong.conf.default
如果没有改密码 或者密码不对会报错:Error: missing password, required for connect
5.初始化kong数据库
kong migrations bootstrap
6.启动kong
kong start
2022.1.12 更新
没有开启外网访问的模式,导致只能自己本机访问得到,用客户端电脑访问一直请求不到,刚开始以为是防火墙的问题,结果发现是IP的问题
kong的默认配置就是127.0.0.1 只能本机访问
在目录/etc/kong/kong.conf
目录下,如果没有这个文件,可以把kong.default.conf 改成kong.conf
将这里的注释解掉,然后吧127.0.0.1 改成 0.0.0.0
这样就可以了
二、测试
curl -i http://localhost:8001/
返回json表示启动成功
参考:
1、Kong安装教程(v1.0.2) https://www.cnblogs.com/duanxz/p/10364783.html
2、kong官方文档 https://docs.konghq.com/gateway/2.6.x/install-and-run/centos/
3、nginx kong missing password错误 https://jingyan.baidu.com/article/f54ae2fc1308f31e92b84990.html