kong安装与部署

缺乏、安全感 2022-05-15 16:10 298阅读 0赞

Centos7**单机部署kong文档步骤**

前置步骤:已安装jdk1.8和tomcat

部署环境:centos7

目标任务:kong: v0.14.x, postgresql: v10.5(注意:psql版本必须与kong版本对应)

耗时任务:nodejs的安装(40+分钟)

装依赖包" class="reference-link">20181030182704872.png装依赖包

安装gcc编译环境

  1. $ yum install -y gcc gcc-c++

pcre安装

nginx 的 http 库使用 pcre 解析正则表达式。

  1. $ yum install -y pcre pcre-devel

zlib安装

zlib 库提供多种压缩和加压缩的方式。

  1. $ yum install -y zlib zlib-devel

openssl安装

openssl 是一个请打的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及 SSL 协议

  1. $ yum install -y openssl openssl-devel

postgresql 部署

20181030182637988.pngpoposgresql 部署stgresql 部署  

PostgreSQL是完全由社区驱动的开源项目,由全世界超过1000名贡献者所维护。它提供了单个完整功能的版本。可靠性是PostgreSQL的最高优先级。Kong 默认使用 postgresql 作为数据库。

  这里安装kong的版本是0.14对应的psql版本需要在v10+,否则启动kong会报错

安装psql-10

  1. $ yum install -y https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-latest-x86_64/pgdg-centos10-10-2.noarch.rpm
  2. $ yum install -y postgresql10-server postgresql10-contrib

初始化数据库

  1. $ /usr/pgsql-10/bin/postgresql-10-setup initdb

设置成centos7开机自启动

  1. systemctl enable postgresql-10.service

启动postgresql服务

  1. # 启动服务
  2. $ systemctl start postgresql-10.service
  3. # 查看psql运行状态
  4. $ systemctl status postgresql-10.service

20181030182816922.png

Postgresql配置

执行完初始化任务之后,postgresql 会自动创建和生成两个用户和一个数据库:

  linux 系统用户 postgres:管理数据库的系统用户;

  postgresql 用户 postgres:数据库超级管理员;

  数据库 postgres:用户 postgres 的默认数据库;

  密码由于是默认生成的,需要在系统中修改一下。

修改初始密码

  1. $ passwd postgres
  2. 输入: postgres

创建用户

为了安全以及满足 Kong 初始化的需求,需要在建立一个 postgre 用户 kong 和对应的 linux 用户 kong,并新建数据库 kong。

  1. # 新建 linux kong 用户
  2. $ adduser kong
  3. # 使用管理员账号登录 psql 创建用户和数据库
  4. # 切换 postgres 用户
  5. # 切换 postgres 用户后,提示符变成 `-bash-4.3$`
  6. $ su postgres
  7. # 进入psql控制台,此时会进入到控制台(系统提示符变为'postgres=#')
  8. bash-4.2$ psql
  9. #建立新的数据库用户(和之前建立的系统用户要一样)
  10. postgres=# create user kong with password 'kong';
  11. #为新用户建立数据库
  12. postgres=# create database kong owner kong;
  13. #把新建的数据库权限赋予 kong
  14. postgres=# grant all privileges on database kong to kong;
  15. #退出控制台
  16. postgres=# \q
  17. bash-4.2$ exit;

注意:在 psql 控制台下执行命令,一定记得在命令后添加分号。

配置修改:

1**、**postgres的对外访问策略

认证权限配置文件为 /var/lib/pgsql/10/data/pg_hba.conf, 将**6项配置修改为如下:**

(

集群内所有节点都需要增加加入配置:

10.200.10.0~10.200.10.154的IP段能访问PostgreSQL 数据库,需要增加下面一行

host all all 10.86.12.0/24 trust

)

2**、**pgsql开启远程访问

修改配置文件 /var/lib/pgsql/10/data/postgresql.conf ,

将 listen_address去掉注释并设置值为 ‘*‘

  1. $ vim var/lib/pgsql/10/data/postgresql.conf
  2. listen_addresses = '*' # what IP address(es) to listen on;

3、修改以上两个配置文件后,重启postgresql服务:

  1. $ systemctl restart postgresql-10.service
  2. (若起不来,删除它的/root/data/postmaster.pid文件重试)
  3. $ psql -U kong -d kong -h 127.0.0.1 -p 5432
  4. kong=> \q 然后\q退出

ong部署" class="reference-link">k20181030182917364.pngong部署

kong这块按照官网的方法不成功,最终下载了rpm包安装成功的。

下载kong

地址:https://docs.konghq.com/install/centos/?\_ga=2.170317352.921280320.1539743753-1583657631.1536313213

根据环境选择对应版本下载,因为测试环境是centos7.5,所以点击Centos7下载

安装kong

  1. $ yum install kong-community-edition-0.14.1.el7.noarch.rpm
  2. 安装过程选择y继续

新建并修改 kong 的配置文件

默认配置文件位于 /etc/kong/kong.conf.default

$ cp /etc/kong/kong.conf.default /etc/kong/kong.conf

将之前安装配置好的 postgresql 信息填入 kong 配置文件中:

  1. $ vi /etc/kong/kong.conf

去掉注释并根据当前环境修改**(集群中非本节点服务器时,要将pg_host改成服务器ip)**

初始化数据库表

  1. $ kong migrations up -c /etc/kong/kong.conf

启动kong服务

  1. $ kong start

测试kong是否正确启动

  1. $ curl 127.0.0.1:8001

准备kong环" class="reference-link">20181030182941499.png准备kong环

下**装nodejs**

wget http://nodejs.org/dist/v7.4.0/node-v7.4.0.tar.gz

yum install gcc openssl-devel gcc-c++ compat-gcc-34 compat-gcc-34-c++

tar -xf node-v7.4.0.tar.gz

cd node-v7.4.0

./configure —prefix=/usr/local/node

make && make install

ln -s /usr/local/node/bin/* /usr/sbin/

配置npm

  1. npm set prefix /usr/local
  2. echo -e '\nexport PATH=/usr/local/lib/node_modules:$PATH' >> ~/.bashrc
  3. source ~/.bashrc

先决条件:已安装了nodejs和npm

  1. # 安装 Kong Dashboard
  2. npm install -g kong-dashboard
  3. # 用一个没有被占用的端口启用 Kong Dashboard
  4. kong-dashboard start \
  5. --kong-url http://localhost:8001 \
  6. 如果8001被占用,可以用别的端口启用,比如:
  7. kong-dashboard start \
  8. --kong-url http://localhost:8001 \
  9. --port 9001

参考资料:

https://docs.konghq.com/install/centos/?\_ga=2.170317352.921280320.1539743753-1583657631.1536313213

https://www.cnblogs.com/zhoujie/p/kong5.html

https://www.cnblogs.com/huangkb/p/6234520.html

https://hub.docker.com/r/pgbi/kong-dashboard/

发表评论

表情:
评论列表 (有 0 条评论,298人围观)

还没有评论,来说两句吧...

相关阅读

    相关 通过Kong实现蓝绿部署

    蓝绿部署的起源 蓝绿部署的灵感起源于 “海腾”(海豚),海豚是永远不睡觉的,这是因为海豚有两个脑子,左脑和右脑,平时的时候左脑和右脑都在工作,而在休息的时候右脑是运作...

    相关 KONG和KONGA部署及配置

    个人理解,仅供参考: 首先,kong+konga除去其他高级功能,个人觉得就是把nginx,变成可以页面配置的了。比如,配置的router,service就是反向代理,配置