您的位置:首页 > 其它

kong网关集群部署

2020-04-08 07:56 316 查看

kong网关集群部署

  • 节点B部署
  • 测试集群效果
  • 机器准备

    节点A 192.168.0.1
    节点B 192.168.0.2

    节点A部署

    1.安装依赖组件

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

    2.安装postgresql

    下载安装

    因为kong的界面系统konga 0.14不支持v12版,只能安装v11版

    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
    
    将
    #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

    至此数据库已经安装好了

    3.创建kong数据库

    进入postgres

    #sudo -u postgres psql

    创建用户kong

    postgres=# create user kong with password '123456';

    如果要修改密码用下面指令

    postgres=# ALTER USER user_name WITH PASSWORD 'new_password';

    创建数据库kong

    postgres=# create database kong owner kong;

    把新建的数据库kong权限赋予用户kong

    postgres=# grant all privileges on database kong to kong;

    退出数据库:

    ctrl+d

    防火墙打开5432端口

    firewall-cmd --permanent --add-port=5432/tcp
    firewall-cmd --reload

    4.安装kong

    下载安装包

    wget https://kong.bintray.com/kong-rpm/centos/7/kong-2.0.1.el7.amd64.rpm

    安装

    yum install epel-release
    yum install kong-2.0.1.*amd64.rpm --nogpgcheck

    配置数据库连接

    cp /etc/kong/kong.conf.default /etc/kong/kong.conf
    vi /etc/kong/kong.conf
    修改为
    pg_password = 123456
    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 startkong stop/restart/reload		//停止/重启/重载

    测试kong

    curl -i  http://localhost:8001

    设置开机自启动

    systemctl enable kong

    防火墙打开8000端口

    firewall-cmd --permanent --add-port=8000/tcp    # 开放8000端口
    firewall-cmd --reload

    5.安装可视化界面konga

    安装nodejs

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

    安装git

    yum install -y git

    安装Konga

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

    防火墙打开1337端口

    firewall-cmd --permanent --add-port=1337/tcp
    firewall-cmd --reload

    开发模式测试一下

    npm start

    然后在浏览器里http://节点B的IP:1337,可以打开页面

    6.konga部署在生产环境

    在postgres上创建konga数据库

    sudo -u postgres psql
    postgres=# create user kong 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.0.1:5432/konga

    安装pm2运行组件

    npm install -g pm2

    用pm2启动konga

    cd konga
    pm2 start app.js --name konga

    pm2设置开机启动

    pm2 save
    pm2 startup

    节点B部署

    1.安装kong

    下载安装包

    wget https://kong.bintray.com/kong-rpm/centos/7/kong-2.0.1.el7.amd64.rpm

    安装

    yum install epel-release
    yum install kong-2.0.1.*amd64.rpm --nogpgcheck

    配置数据库连接

    #cp /etc/kong/kong.conf.default /etc/kong/kong.conf
    #vi /etc/kong/kong.conf
    pg_host=192.168.0.1			//节点A的IP
    pg_password = 123456

    启动kong

    kong start

    设置开机自启动

    systemctl enable kong

    测试集群效果

    在节点A添加
    curl -i -X POST --url http://localhost:8001/services/ --data ‘name=example-service’ --data ‘url=http://baidu.com’

    在节点B查询
    curl http://localhost:8001/services/

    • 点赞
    • 收藏
    • 分享
    • 文章举报
    huabing_c 发布了3 篇原创文章 · 获赞 0 · 访问量 164 私信 关注
    内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
    标签: