美文网首页PHP经验分享程序猿的进阶屋PHP实战
【轻知识】不是很顺利的,安装Kong

【轻知识】不是很顺利的,安装Kong

作者: 言十年 | 来源:发表于2019-05-06 21:30 被阅读4次

安装 Kong

我机器是centos7故选centos 7 版本。

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

当我用rpm安装的时候报了如下错误:

错误:db5 错误(11) 来自 dbenv->open:资源暂时不可用

根据此文《使用yum时报错》解决。继续:

rpm -ivh kong-1.1.2.el7.noarch.rpm

kong的config文件,在/etc/kong/下面。

kong start [-c kong.conf](可指定配置文件)

报错

kong start
Error: [PostgreSQL error] failed to retrieve server_version_num: connection refused

  Run with --v (verbose) or --vv (debug) for more details

说明需要装个数据库。数据库可选用PostgreSQL或Cassandra。默认是PostgreSQL。一个集群中的机器连接一个PostgreSql(参见配置

在这个页面https://www.postgresql.org/download/linux/redhat/ 选择你的版本进行安装。一路执行起来。

当我通过命令行链接PostgreSQL时。报如下错误。

psql: 致命错误:  角色 "root" 不存在

登录到psql。

sudo su - postgres
psql

建立好数据库。

 CREATE USER kong; CREATE DATABASE kong OWNER kong;

执行迁移报如下错误。

[root@bogon kong]# kong migrations bootstrap --v
2019/05/06 11:13:06 [verbose] Kong: 1.1.2
2019/05/06 11:13:06 [verbose] no config file found at /etc/kong/kong.conf
2019/05/06 11:13:06 [verbose] no config file found at /etc/kong.conf
2019/05/06 11:13:06 [verbose] no config file, skip loading
2019/05/06 11:13:06 [verbose] prefix in use: /usr/local/kong
Error: 
/usr/local/share/lua/5.1/kong/cmd/migrations.lua:91: [PostgreSQL error] failed to retrieve server_version_num: 致命错误: 用户 "kong" Ident 认证失败
stack traceback:
    [C]: in function 'assert'
    /usr/local/share/lua/5.1/kong/cmd/migrations.lua:91: in function 'cmd_exec'
    /usr/local/share/lua/5.1/kong/cmd/init.lua:88: in function </usr/local/share/lua/5.1/kong/cmd/init.lua:88>
    [C]: in function 'xpcall'
    /usr/local/share/lua/5.1/kong/cmd/init.lua:88: in function </usr/local/share/lua/5.1/kong/cmd/init.lua:45>
    /usr/local/bin/kong:7: in function 'file_gen'
    init_worker_by_lua:48: in function <init_worker_by_lua:46>
    [C]: in function 'xpcall'
    init_worker_by_lua:55: in function <init_worker_by_lua:53>

先看没有配置文件那个。我cp /etc/kong/kong.conf.default /etc/kong/kong.conf

在看lua报错那块。解决参考《【kong】kong migrationsで失敗する》

本机开启了认证,把ident改成trust。就OK了。

vim /var/lib/pgsql/11/data/pg_hba.conf 

 #host    all             all             127.0.0.1/32            ident
host    all             all             127.0.0.1/32            trust

[root@bogon kong]# kong start
2019/05/06 11:28:39 [warn] ulimit is currently set to "1024". For better performance set it to at least "4096" using "ulimit -n"
Kong started

启动成功了。你可以把ulimit设置大点。ulimit -n 65535

curl -i http://localhost:8001/

安装 kong-dashboard

首先需要配置科学上网。然后才能npm。

当然你启动的时候,不要在你配置了export http_proxy跟export https_proxy的命令行启动。不然也会报其他错。

ok,排除上面的问题,遇到了下面的。

[root@bogon ~]# kong-dashboard start --kong-url http://kong:8001
Connecting to Kong on http://kong:8001 ...
Could not reach Kong on http://kong:8001
Error details:
{ Error: getaddrinfo ENOTFOUND kong kong:8001
    at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:56:26)
  errno: 'ENOTFOUND',
  code: 'ENOTFOUND',
  syscall: 'getaddrinfo',
  hostname: 'kong',
  host: 'kong',
  port: '8001' }

我从这条issue https://github.com/Kong/kong/issues/3200 里面找到了启动方法。

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

OK,然后就可以访问了。

image.png

但我觉得似乎KONGA更好点呢?https://pantsel.github.io/konga/

参考资料:

相关文章

网友评论

    本文标题:【轻知识】不是很顺利的,安装Kong

    本文链接:https://www.haomeiwen.com/subject/jkgloqtx.html