ubuntu下安装kong
一,准备项
- ubuntu server 18+,联网环境
- kong最新版本稳定版本
- postgresql安装
- 使用安装包安装。
二,安装步骤
1.安装postgresql数据库
2.初始化kong数据库配置
// 进入postgres操作模式
sudo -u postgres psql
// 提示符变成: postgres=#
// 创建kong相关的用户及数据库
postgres=# create user kong with password \'kong\';
CREATE ROLE
postgres=# CREATE DATABASE kong OWNER kong;
CREATE DATABASE
postgres=#
3.设置postgresql可以远程访问(生产环境可以考虑局域网环境访问,设置postgresql服务器没有对外公开IP)
// 1.修改监听地址 这里需要看下postgresql的安装版本,将适当填充{version},也可以使用ls /etc/postgresql 来查看具体的文件路径
sudo gedit /etc/postgresql/{version}/main/postgresql.conf
// 2.修改可访问用户的IP段
sudo gedit /etc/postgresql/{version}/main/pg_hba.conf
// 在文件末尾 添加 host all all 0.0.0.0 0.0.0.0 md5 ,表示运行任何IP连接
// 3.重启数据库
sudo /etc/init.d/postgresql restart
4.使用navicat在postgresql服务器的局域网环境访问,以验证数据库的局域网可访问性
5.下载kong安装包
// 1.选择文件夹,可以默认在ubutun桌面上,使用wget下载安装包
sudo wget https://bintray.com/kong/kong-deb/download_file?file_path=kong-2.0.4.xenial.amd64.deb -O kong-2.0.4.xenial.amd64.deb
6.安装kong
// 1.安装kong
sudo apt-get update
sudo apt-get install openssl libpcre3 procps perl
sudo dpkg -i kong-2.0.4.*.deb
// 2.查看kong版本看看是否安装成功
sudo kong version
// 3.查看kong的默认安装路径
sudo ls /etc/kong
7.配置kong
// 1.从default复制一份配置文件
sudo cp /etc/kong/kong.conf.default /etc/kong/kong.conf
// 2.编辑kong.conf
sudo vim /etc/kong/kong.conf
// 修改admin_listen,修改http监听地址为0.0.0.0:8001,https监听地址为:0.0.0.0:8444
admin_listen = 0.0.0.0:8001 reuseport backlog=16384, 0.0.0.0:8444 http2 ssl reuseport backlog=16384
// 3.修改数据库相关配置,账号,密码,库名称在装postgresql时候已经指定
pg_host = 127.0.0.1 # Host of the Postgres server.
pg_port = 5432 # Port of the Postgres server.
#pg_timeout = 5000 # Defines the timeout (in ms), for connecting,
# reading and writing.
pg_user = kong # Postgres user.
pg_password = kong # Postgres user\'s password.
pg_database = kong # The database name to connect to.
// 4.初始化数据库
kong migrations bootstrap -c /etc/kong/kong.conf
三,启动
kong start -c /etc/kong/kong.conf --vv
四,防火墙设置
1.安装firewall
// 1.下载安装
sudo apt-get install firewalld
// 2.启用防火墙
sudo systemctl enable firewalld
sudo systemctl start firewalld
sudo firewall-cmd --state
// 3.禁用ufw,本人用不习惯
sudo ufw disable
// 4.启用http https 协议
sudo firewall-cmd --permanent --add-service={http,https} --permanent
// 5.开放postgresql数据库端口
sudo firewall-cmd --add-port=5432/tcp --permanent
// 6.开放kong端口
sudo firewall-cmd --add-port=8000/tcp --permanent
sudo firewall-cmd --add-port=8001/tcp --permanent
sudo firewall-cmd --add-port=8443/tcp --permanent
sudo firewall-cmd --add-port=8444/tcp --permanent
sudo firewall-cmd --reload
五,检验kong是否正常和外部访问性
// 局域网环境内运行如下命令,替换适当的{serverip}
$ curl -i http://{serverip}:8001/
六,配置自启动脚本
// 1.添加服务脚本
sudo nano /etc/systemd/system/kong.service
// 2.编辑内容
[Unit]
Description=kong2.0.4
[Service]
Type=forking
ExecStart=/usr/local/bin/kong start -c /etc/kong/kong.conf
[Install]
WantedBy=multi-user.target
// 3.
sudo systemctl daemon-reload
sudo systemctl enable kong.service