zoukankan      html  css  js  c++  java
  • 微服务实践指南☞Kong网关的简介和安装

    Kong 是在客户端和(微)服务间转发API通信的API网关,通过插件扩展功能,这些插件在 API 请求响应循环的生命周期中被执行。插件使用 Lua 编写,而且Kong还有如下几个基础功能:HTTP 基本认证、密钥认证、CORS( Cross-origin Resource Sharing,跨域资源共享)、TCP、UDP、文件日志、API 请求限流、请求转发以及 nginx 监控.

    Kong可运行在某些 Linux 发行版、Mac OS X 和 Docker 中,无论是本地机还是云端服务器皆可运行。

    除了免费的开源版本,Mashape 还提供了付费的企业版,其中包括技术支持、使用培训服务以及 API 分析插件。

    KONG可以在多种操作环境下安装。包括以下环境:

     这节我们以centos7.6进行部署介绍:

    1.安装kong:

    如果要下载软件包的方式,请执行:

    sudo yum install epel-release
    sudo yum install kong-2.0.2.*.noarch.rpm --nogpgcheck

    也可以使用repository,请执行

    sudo yum update -y
    sudo yum install -y wget
    wget https://bintray.com/kong/kong-rpm/rpm -O bintray-kong-kong-rpm.repo
    export major_version=`grep -oE '[0-9]+.[0-9]+' /etc/redhat-release | cut -d "." -f1`
    sed -i -e 's/baseurl.*/&/centos/'major_version''/ bintray-kong-kong-rpm.repo
    sudo mv bintray-kong-kong-rpm.repo /etc/yum.repos.d/
    sudo yum update -y
    sudo yum install -y kong

    2.准备数据库:

    准备数据库或声明性配置文件

    Kong可以在有postgress或DB-less mode的情况下运行。

    DB-less mode:

    将使用kong.conf其配置属性和一个kong.yml 文件将实体指定为声明性配置。操作如下:

    1.kong的配置文件位于/etc/kong/kong.conf,入无该文件时,执行如下命令复制kong.conf.default为kong.conf,

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

    2.生成声明性配置文件。以下命令将kong.yml 在当前文件夹(/etc/kong)中生成一个文件。它包含有关如何填写的说明:

    kong config init

    修改kong.conf文件,以使kong在DB-less mode环境下运行

    database = off
    declarative_config = /path/to/kong.yml

    运行kong

    kong start [-c /path/to/kong.conf]

    测试kong网关是否运行,返回相关数据即表示运行成功;

    curl -i http://localhost:8001/

    Postgres数据库环境:

    一、安装postgres数据库,已安装的越过:

    1.Install the repository RPM

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

    2.Install the client packages

    yum install postgresql12

    3.Optionally install the server packages

    yum install postgresql12-server

    4.Optionally initialize the database and enable automatic start:

    /usr/pgsql-12/bin/postgresql-12-setup initdb
    systemctl enable postgresql-12
    systemctl start postgresql-12

    二、创建数据库

    cd /usr/pgsql-12/bin/
    sudo -s -u postgres
    psql

     执行创建数据库、用户

     CREATE USER kong; CREATE DATABASE kong OWNER kong;

    现在,运行数据库迁移:

    kong migrations bootstrap [-c /path/to/kong.conf]

     执行过程如遇到 failed to retrieve PostgreSQL server_version_num: FATAL: Ident authentication failed for user "kong",请给该用户设定密码,并修改postgres的授权方式为MD5,操作如下:

    alter user kong with password 'kong';

     修改/etc/kong/kong.conf配置文件,增加密码

    此时注意修改postgresql-12的配置文件pg_hba.conf 的认证方式为MD5,位于/var/lib/pgsql/12/data/

    host    all             all             127.0.0.1/32            md5

    按需添加如下,开启postgress远程访问:

    pg_hba.conf 

     postgresql.conf 修改listen_addresses = '*'  

    开启kong

    kong start [-c /path/to/kong.conf]

    可按需开启kong api等相关的远程访问:

    参考自:

    kong官网安装指南

    Kong的简介和安装 - 玩转Kong网关

  • 相关阅读:
    教程:在 Visual Studio 中开始使用 Flask Web 框架
    教程:Visual Studio 中的 Django Web 框架入门
    vs2017下发现解决python运行出现‘No module named "XXX""的解决办法
    《sqlite权威指南》读书笔记 (一)
    SQL Server手工插入标识列
    hdu 3729 I'm Telling the Truth 二分图匹配
    HDU 3065 AC自动机 裸题
    hdu 3720 Arranging Your Team 枚举
    virtualbox 虚拟3台虚拟机搭建hadoop集群
    sqlserver 数据行统计,秒查语句
  • 原文地址:https://www.cnblogs.com/shatanku/p/12559715.html
Copyright © 2011-2022 走看看