我是靠谱客的博主 如意朋友,最近开发中收集的这篇文章主要介绍kong高可用集群部署1、原理1、实验准备准备2、节点node1部署3、其他节点部署4、检验集群是否相通5、集群负载均衡6、安装可视化界面konga,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

目录

1、原理

1、实验准备准备

2、节点node1部署

2.1 安装依赖组件

2.2 安装postgresql

2.3 创建kong数据库

2.4 安装kong

3、其他节点部署

4、检验集群是否相通

5、集群负载均衡

5.1 部署nginx

5.2 负载均衡

6、安装可视化界面konga


1、原理

1、实验准备准备

hostname

IP

系统

应用

node1

192.168.56.210

centos7

kong,nginx,postgresql

node2

192.168.56.223

centos7

kong

node3

192.168.56.245

centos7

kong

node4

192.168.56.251

centos7

kong

2、节点node1部署

2.1 安装依赖组件

yum -y install gcc-c++  pcre pcre-devel  zlib zlib-devel  openssl openssl-devel wget
 

2.2 安装postgresql

下载安装

yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
yum install -y postgresql11 postgresql11-server

初始化

/usr/pgsql-11/bin/postgresql-11-setup initdb

允许远程访问

vi /var/lib/pgsql/11/data/postgresql.conf

将第59行改成
#listen_addresses = 'localhost'  
修改为:
listen_addresses = '*'  

修改访问验证策略

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

修改为
host all all 127.0.0.1/32 trust		//本地访问完全信任
host all all 0.0.0.0/0 md5				//远程访问需要密码

启动服务

systemctl start postgresql-11

设置开机自启动

systemctl enable postgresql-11

至此数据库已经安装好了

2.3 创建kong数据库

进入postgres

sudo -u postgres psql

创建用户kong

postgres=# create user kong with password '123456'; 
postgres=# create database kong owner kong; 
postgres=# grant all privileges on database kong to kong; 

退出数据库:ctrl+d

2.4 安装kong

下载安装包

wget https://download.konghq.com/gateway-2.x-centos-7/Packages/k/kong-enterprise-edition-2.4.1.3.el7.noarch.rpm  --no-check-certificate

安装kong

yum install epel-release
yum install kong-enterprise-edition-2.4.1.3.el7.noarch.rpm  --nogpgcheck

配置数据库连接

cp /etc/kong/kong.conf.default /etc/kong/kong.conf
vi /etc/kong/kong.conf

修改为
pg_password = 123456 
#第471行修改为
admin_listen = 0.0.0.0:8001 reuseport backlog=16384, 0.0.0.0:8444 http2 ssl reuseport backlog=16384

初始化kong数据库

kong migrations bootstrap

启动kong

kong start
kong stop/restart/reload		//停止/重启/重载

测试kong

curl -i  http://192.168.56.210:8001

设置开机自启

systemctl enable kong

3、其他节点部署

在node2,node3,node4上部署

下载安装包

wget https://download.konghq.com/gateway-2.x-centos-7/Packages/k/kong-enterprise-edition-2.4.1.3.el7.noarch.rpm  --no-check-certificate

安装kong

yum install epel-release  kong-enterprise-edition-2.4.1.3.el7.noarch.rpm  --nogpgcheck

配置数据库连接

cp /etc/kong/kong.conf.default /etc/kong/kong.conf
vi /etc/kong/kong.conf

修改为
pg_host=192.168.56.210	//节点A的IP
pg_password = 123456
#第471行修改为
admin_listen = 0.0.0.0:8001 reuseport backlog=16384, 0.0.0.0:8444 http2 ssl reuseport backlog=16384

启动kong

kong restart

设置开机自启动

systemctl enable kong-enterprise-edition.service

4、检验集群是否相通

在node1节点上执行下面命令

curl -i -X POST 
  --url  http://192.168.56.210:8001/services/ 
  --data 'name=service-stock' 
  --data 'url=http://hq.sinajs.cn'

在node2,node3,node4节点上执行下面命令

curl http://localhost:8001/services/

5、集群负载均衡

5.1 部署nginx

vim /etc/yum.repos.d/nginx.repo

[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

安装nginx

yum install nginx
systemctl enable nginx
systemctl restart nginx

5.2 负载均衡

vi /etc/nginx/conf.d/kong.conf

upstream kong {
  server 192.168.56.210:8080 weight=1;
  server 192.168.56.223:8080 weight=1;
  server 192.168.56.245:8080 weight=1;
  server 192.168.56.251:8080 weight=1;
}

server {
  listen       80;
  server_name  kong.***.com;

  location / {
  proxy_pass   http://kong;
  index  index.html index.htm;
  }
}
nginx -t
nginx -s reload

6、安装可视化界面konga

安装nodejs

curl -sL https://rpm.nodesource.com/setup_12.x | bash -
yum install -y nodejs
npm install -g bower
npm install -g gulp

安装Konga

yum install -y git
git clone https://github.com/pantsel/konga.git
cd konga
npm install --save node-sass
npm install --unsafe-perm

在postgres上创建konga数据库

sudo -u postgres psql
postgres=# create user konga with password '123456'; 
postgres=# create database konga owner konga ;
postgres=# grant all privileges on database konga to konga;

修改konga配置文件

cp .env_example .env
vi .env
PORT=1337
NODE_ENV=production
KONGA_HOOK_TIMEOUT=120000
DB_ADAPTER=postgres
DB_URI=postgresql://konga:123456@localhost:5432/konga

初始化konga数据库

node ./bin/konga.js prepare –adapter postgres –uri postgresql://konga:konga-db-pass@192.168.56.210:5432/konga

启动konga

npm install -g pm2
cd konga
pm2 start app.js --name konga

设置开机自启

pm2 save
pm2 startup

最后

以上就是如意朋友为你收集整理的kong高可用集群部署1、原理1、实验准备准备2、节点node1部署3、其他节点部署4、检验集群是否相通5、集群负载均衡6、安装可视化界面konga的全部内容,希望文章能够帮你解决kong高可用集群部署1、原理1、实验准备准备2、节点node1部署3、其他节点部署4、检验集群是否相通5、集群负载均衡6、安装可视化界面konga所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(49)

评论列表共有 0 条评论

立即
投稿
返回
顶部