本文主要为kong安装小记,系统环境为centos 6.7

                                                                                                                      本文转载请注明出处 —— xiaoEight

  • 介绍

Kong 是在客户端和(微)服务间转发API通信的API网关,通过插件扩展功能。Kong 有两个主要组件:

  Kong Server :基于 nginx 的服务器,用来接收 API 请求。
  Apache Cassandra :用来存储操作数据。

  总体而言是在api与客户端直接引入一层gate way,在这层上面做的各种文章,例如授权、限流、监控和日志;如果对此有需求或者兴趣的看官可以继续往下↓↓↓↓↓↓↓↓↓↓

  Kong 官网

  对于核心功能的考量,可以转发包括webservice、get、post等RESTful请求(仅列举了已经测试过的,大家可以继续对自己的需求进测试后告知);

  对于插件功能的考量,提供了丰富的插件包括HTTP 基本认证、密钥认证、CORS( Cross-origin Resource Sharing,跨域资源共享)、TCP、UDP、文件日志、API 请求限流、请求转发以及 nginx 监控;

  对于负载的考量,可以通过增加更多 Kong Server 机器对 Kong 服务进行水平扩展,通过前置的负载均衡器向这些机器分发请求。根据文档描述,两个Cassandra节点就足以支撑绝大多数情况,但如果网络非常拥挤,可以考虑适当增加更多节点。

  • 安装

后续为安装过程,与安装过程中需要注意的地方. 首先要提醒注意的为介绍中已经提及了kong实际为两部分一部分kong server也就是大家在git上获取的code,而另一部分是db部分如cassandra

Installation:

  1. Install the Package:

    After downloading the package, execute:

    $ sudo yum install epel-release
    $ sudo yum install kong-0.8.1.*.noarch.rpm --nogpgcheck
  2. Configure your database

    Configure Kong so it can connect to your database. Kong supports both PostgreSQL 9.4+ andCassandra 2.2.x as its datastore.

  3. Start Kong:

    $ kong start
    
    # Kong is running$ curl 127.0.0.1:8001
以上为官方安装指导
 
以下为实际安装过程,由于一开始没留意官方安装提示所以在安装过程中出现了两个问题.(1.rpm未下载  2.cassandra为安装运行)
 
1.实际使用过程中在"官方-1"中

sudo yum install kong-0.8.1.*.noarch.rpm --nogpgcheck

如果提示报错无法install,那么说明可能跟小Eight一样不认真, 采用下述方式可解决(问题是由于压根就还没有下载对应的rpm文件,那么不出错就... )

 

  a.在https://getkong.org/install/centos/中获取到kong-0.8.1.el6.noarch.rpm的下载地址

 
  b.在centos中通过wget和1中获取的地址下载kong-0.8.1.el6.noarch.rpm文件到centos中(新建的文件夹中,kong)
 
  c. rpm -ivh kong-0.8.1.el6.noarch.rpm 但过程中报了依赖问题
 
  d. 但后重新执行 sudo yum install kong-0.8.1.*.noarch.rpm --nogpgcheck 安装正常
 
2.实际使用过程中,如果跳过2进入3直接会报错如下图,根据提示内容可看出是db的问题,该处安装db-->cassandra时为默认配置(如果修改端口配置或其他需要留意kong中对应配置需要修改),即未完成"官方-2"导致
 
  
  

  a.下载所需要使用的db即 http://cassandra.apache.org/download/下载apache-cassandra-2.2.6-bin.tar.gz (apache-cassandra-3.5-bin.tar.gz 需要jdk1.8支持)
 
  b.启动cassandra  cd到解压后的bin文件夹  执行 ./cassandra -f
 
3.启动kong
下图为cassandra启动后,启动kong时情况
下图为启动kong成功
 
这里需要说明一下,kong有两个主要的端口一个为管理端口8001;另一个是提供网关访问的8000端口
具体测试可参考 官网快速指南
测试 http://你的机器或绑定的域名:8000 X-Host-Override: test.com 
到此已经完成了kong的全部部署安装过程,如果简单使用已经完全可以了...........................但是像小Eight这样比较懒的人怎么能忍受一堆curl命令?
 
To be continue!
预告Kong管理UI哪家强? 答: kong-dashboard   (为啥会是这个颜色???)

Kong网关介绍与安装小记的更多相关文章

  1. Tyk API网关介绍及安装说明

    Tyk API网关介绍及安装说明 Tyk是一个开源的轻量级API网关程序. 什么是API网关 API网关是一个各类不同API的前置服务器.API网关封装了系统内部架构,对外提供统一服务.此外还可以实现 ...

  2. API网关系列之Kong的介绍以及安装

    一.API网关产生背景 在微服务的架构中,一个大的应用会被拆分成多个小的单一的服务提供出来,这些小的服务有自己的处理,有自己的数据库(也可以共用),也许语言也是不一样的,他们可以部署在一个或多个服务器 ...

  3. MacOs下安装Kong网关

    写在前面: 持续记录一下自己在解决api网关kong上的各种问题. 1.关于Kong网关 这是官网地址:https://konghq.com/ 2.通过brew安装postgres 因为kong的数据 ...

  4. Kong网关安装之Docker版(2)

    1.安装kong管理工具:konga或者kong-dashboard,这里选择konga 拉取konga镜像: sudo docker pull pantsel/konga:0.14.4 初始化kon ...

  5. Kong网关安装之Docker版(1)

    前言: Kong 是天生的微服务网关.她的官方简介是:Kong 是一个云原生,高效,可扩展的分布式 API 网关. 自 2015 年在 github 开源后,广泛受到关注,目前已收获 1.9w+ 的 ...

  6. kong网关: service+route+upstream

    对于刚开始学习kong网关,总是一脑子浆糊迷迷糊糊.虽然已经安装好,但却不知道接下来如何下手, 因为包含项太多:service.routes.upstream.consumer.plugins等等.一 ...

  7. 在K3s上使用Kong网关插件,开启K3s的无限可能!

    我的工作中很重要的一部分是参加各种各样的技术会议.最近参加的是去年11月的北美KubeCon,在会议的最后一天,所有人都焦头烂额,我也一直机械地向不同的人重复我的自我介绍.后来,我已经十分烦躁,决定逃 ...

  8. API网关之Kong网关简介

    1. Kong简介 那么,Kong是一个什么东东呢?它是一个开源的API网关,或者你可以认为它是一个针对API的一个管理工具.你可以在那些上游service之上,额外去实现一些功能.Kong是开源的, ...

  9. openresty开发系列10--openresty的简单介绍及安装

    openresty开发系列10--openresty的简单介绍及安装 一.Nginx优点 十几年前,互联网没有这么火,软件外包开发,信息化建设,帮助企业做无纸化办公,收银系统,工厂erp,c/s架构偏 ...

随机推荐

  1. springMvc前后台传值各种情况

    本文转载至:https://blog.csdn.net/pangliang_csdn/article/details/52486787 以后自述...

  2. powerdesigner基本使用

    parent sonPK主键 FK外键 n ------> 1 alter table muniubox.cpa_accounting_book add constraint FK_Refere ...

  3. LeetCode - Find K Closest Elements

    Given a sorted array, two integers k and x, find the k closest elements to x in the array. The resul ...

  4. shell 修改工作路径

    import os os.getcwd() #查看现路径 os.chdir('新路径') #修改路径

  5. 【shell编程】之基础知识-常用命令

    一.Shell echo命令 Shell 的 echo 指令与 PHP 的 echo 指令类似,都是用于字符串的输出.命令格式: echo string 您可以使用echo实现更复杂的输出格式控制. ...

  6. Mongo 3.6.1版本Sharding集群配置

    Mongo低版本和高版本的sharding集群配置,细节不太一样.目前网上的配置文档大都是针对低版本的.本人在配置3.6.1版本的mongosharding集群的过程中,碰到不少问题,官方文档没有直观 ...

  7. tomcat部署项目(war文件)

    首先配置jdk环境 下载jdk 例如,我将jdk安装在d盘jdk目录下 配置系统环境 新建系统变量JAVA_HOME值为D:\jdk 新建系统变量CLASS_HOME值为 .%JAVA_HOME%\l ...

  8. keil5配置ST Link v2 for STM32F10x

    请务必先安装MDKCM525.EXE,否则会找不到闪存编程算法

  9. JDK8新增时间类型用在JPA中的问题

    之前数据库存储日期时间类型时一般POJO实体对应属性为java.util.Date,然后通过JPA注解指定它是日期格式或是日期时间格式,JDK8中新增了更好的时间API,如表示本地日期的LocalDa ...

  10. ElasticSearch story(二)

    调优一个问题,碰到了一个坎:大家看一下下面两个字符串: 2018-10-16 18:01:34.000 abcdewfrwfe 2018-10-16 18:01:50.123 testAmily012 ...