Kong网关介绍与安装小记

本文主要为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   (为啥会是这个颜色???)

时间: 2024-10-12 08:48:53

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

centOS 7 单机安装 kong网关

kong 网关 单机部署 环境:centOS 7:依赖:jdk1.8 安装内容:postgresql数据库, kong 网关,nodeJs和npm,kong Dashboard (可视化管理界面) 版本:postgresql10,kong1.4.0,npm v8.1.0 本次重点主要为后续学习掌握kong配置使用,所以本次安装主要使用yum在线安装. 一.依赖包安装(若存在则不需再次安装) 1,gcc 编译环境 $ yum install -y gcc gcc-c++ 2,pcre 用于ngin

KONG GATEWAY 基本介绍及安装

1 Kong基本介绍Kong 基于Nginx和lua实现的API GateWay,用于管控Restful接口: 使用修改过的Nginx作为代理服务器,即Openrestry,该服务器负责处理Api请求. Cassandra或者postgresql用作数据存储(Datastore)服务器,存储来自kong操作的数据.数据持久化建议采用Cassandra,原因如下:1)易于构建分布式 2)易于扩展. 基于Apache license认证.Kong 随着openrestry分发,已经包含lua-ngi

Web服务介绍 & httpd安装

Web简介 什么是Web WWW:World Wide Web,万维网 英国人TimBerners-Lee在1989年欧洲共同体的一个大型科研机构工作时发明的 Web是一种超文本信息系统,其主要实现方式是超文本连接 Web特点 1.Web页面的图形化和易于链接 2.Web与操作系统.浏览器平台无关 3.分布式 4.动态习惯 5.交互性 Web工作原理 HTTP(Hyper Text Transfer Protocol,超文本传输协议):提供了访问超文本信息的功能,是Web浏览器和Web服务器之间

VMware Horizon View Config Tool 用户使用手册之一 -- VCT介绍和安装之前的准备

安装Horizon View Configuration Tool VMware Horizon View Configuration Tool (以下简称为vCT), 现在版本为1.0, 本产品的用途为帮助用户自动安装部署 Horizon View 5.3的基础环境,其中包括域服务器,VMware vCenter 服务器,View Connection 服务器和View Composer服务器.本工具替代了复杂的手动安装部署步骤,能够自动部署基础的Horizon View环境. vCT发布为一

kong网关命令总结(一)

上次在虚拟机里安装kong网关后,因为版本(1.4)太高,目前Kong Dashboard无法支持, 后续发现Git上有个开源工具Kong admin ui,下载源码并部署到NGINX. 但是发现使用过程中能够正常添加service服务,但是在添加路由route时始终提示校验不通过的错误. 最后决定使用最原始的官方提供的命令操作(参考地址:https://docs.konghq.com/1.4.x/admin-api/) 结合postman工具使用,发现操作起来并不复杂.其实就是kong本身提供

Tokyo Tyrant(TTServer)系列(一)-介绍和安装

Tokyo Cabinet 是日本人Mikio Hirabayashi 开发的一款DBM 数据库,该数据库读写非常快,哈希模式写入100 万条数据只需0.643 秒,读取100 万条数据只需0.773 秒,是Berkeley DB 等DBM 的几倍.Tokyo Tyrant 是由同一作者开发的Tokyo Cabinet 数据库网络接口.它拥有Memcached兼容协议,也可以通过HTTP 协议进行数据交换. Tokyo Tyrant 加上Tokyo Cabinet,构成了一款支持高并发的分布式持

Laravel介绍及安装

Laravel是目前最流行的php框架,此前已有耳闻,还没有好好的研究下,目前由于项目的需求要用到这个框架,所以只能硬着头皮学习了.今天算是Laravel学习的第一天,先讲讲laravel框架的安装流程. 下载最新版本Laravel框架,可以到Laravel官网下载,也可以到国内社区下载,下载后解压到服务器网根目录. LaraveL框架使用Composer(PHP包管理工具)来管理代码依赖性. 首先,你需要下载Composer的PHAR打包文件( composer.phar ),下载完成后把它放

System center 2012 R2 实战五、SCVMM2012R2介绍及安装

大家好,今天我来分享的是微软System center组件中第一个组件,SCVMM2012R2的安装,说起SCVMM2012R2,我还想与大家聊一聊,SCVMM2012R2在微软私有云中的作用. 我们知道,微软的私有云一共分为三个层,最底层,是基础架构层,基础架构层上面是服务标准与自动化流程,最上面的是应用管理层,那么什么是基础架构层,基础架构层在微软私有云中是干什么的呢,我先来跟大家说一说我的理解. 微软私有云基础架构层,在我看来,主要作用是,通过微软的云计算,改善企业的IT环境,将企业传统的

Storm介绍及安装部署

本节内容: Apache Storm是什么 Apache Storm核心概念 Storm原理架构 Storm集群安装部署 启动storm ui.Nimbus和Supervisor 一.Apache Storm是什么 Apache Storm是自由开源的分布式实时计算系统,擅长处理海量数据,适用于数据实时处理而非批处理. 批处理使用的大多是鼎鼎大名的hadoop或者hive,作为一个批处理系统,hadoop以其吞吐量大.自动容错等优点,在海量数据处理上得到了广泛的使用.但是,hadoop不擅长实时