kong安装与部署

kong安装与部署Centos7单机部署kong文档步骤 前置步骤:已安装jdk1.8和tomcat部署环境:centos7目标任务:kong:v0.14.x,postgresql:v10.5(注意:psql版本必须与kong版本对应)耗时任务:nodejs的安装(40+分钟) 安装依赖包安装gcc编译环境$yuminstall-ygccgcc-c++pcr…

大家好,又见面了,我是你们的朋友全栈君。

Centos7单机部署kong文档步骤

 

前置步骤:已安装jdk1.8tomcat

部署环境:centos7

目标任务:kong: v0.14.x postgresql: v10.5(注意:psql版本必须与kong版本对应)

耗时任务:nodejs的安装(40+分钟)

 

kong安装与部署装依赖包

安装gcc编译环境

$ yum install -y gcc gcc-c++

pcre安装

nginx http 库使用 pcre 解析正则表达式。

$ yum install -y pcre pcre-devel

zlib安装

zlib 库提供多种压缩和加压缩的方式。

$ yum install -y zlib zlib-devel

openssl安装

openssl 是一个请打的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及 SSL 协议

$ yum install -y openssl openssl-devel

postgresql 部署

kong安装与部署poposgresql 部署stgresql 部署  

PostgreSQL是完全由社区驱动的开源项目,由全世界超过1000名贡献者所维护。它提供了单个完整功能的版本。可靠性是PostgreSQL的最高优先级。Kong 默认使用 postgresql 作为数据库。

  这里安装kong的版本是0.14对应的psql版本需要在v10+,否则启动kong会报错

安装psql-10

$ yum install -y https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-latest-x86_64/pgdg-centos10-10-2.noarch.rpm
$ yum install -y postgresql10-server postgresql10-contrib

初始化数据库

$ /usr/pgsql-10/bin/postgresql-10-setup initdb

设置成centos7开机自启动

systemctl enable postgresql-10.service

启动postgresql服务

# 启动服务
$ systemctl start postgresql-10.service
# 查看psql运行状态
$ systemctl status postgresql-10.service

kong安装与部署

Postgresql配置

执行完初始化任务之后,postgresql 会自动创建和生成两个用户和一个数据库:

  linux 系统用户 postgres:管理数据库的系统用户;

  postgresql 用户 postgres:数据库超级管理员;

  数据库 postgres:用户 postgres 的默认数据库;

  密码由于是默认生成的,需要在系统中修改一下。

修改初始密码

$ passwd postgres
输入: postgres

创建用户

为了安全以及满足 Kong 初始化的需求,需要在建立一个 postgre 用户 kong 和对应的 linux 用户 kong,并新建数据库 kong

# 新建 linux kong 用户
$ adduser kong
 
# 使用管理员账号登录 psql 创建用户和数据库
# 切换 postgres 用户
# 切换 postgres 用户后,提示符变成 `-bash-4.3$` 
$ su postgres
# 进入psql控制台,此时会进入到控制台(系统提示符变为'postgres=#'
bash-4.2$ psql
 
#建立新的数据库用户(和之前建立的系统用户要一样)
postgres=# create user kong with password 'kong';
#为新用户建立数据库
postgres=# create database kong owner kong;
#把新建的数据库权限赋予 kong
postgres=# grant all privileges on database kong to kong;
#退出控制台
postgres=# \q
bash-4.2$ exit;

注意:在 psql 控制台下执行命令,一定记得在命令后添加分号。

配置修改:

1postgres的对外访问策略

认证权限配置文件为 /var/lib/pgsql/10/data/pg_hba.conf, 6项配置修改为如下:

(

集群内所有节点都需要增加加入配置:

10.200.10.0~10.200.10.154IP段能访问PostgreSQL 数据库,需要增加下面一行

host   all             all           10.86.12.0/24                  trust

)

2pgsql开启远程访问

修改配置文件  /var/lib/pgsql/10/data/postgresql.conf

 listen_address去掉注释并设置值为 ‘*’

$ vim var/lib/pgsql/10/data/postgresql.conf
listen_addresses = '*'            # what IP address(es) to listen on;

 

3、修改以上两个配置文件后,重启postgresql服务:

$ systemctl restart postgresql-10.service
(若起不来,删除它的/root/data/postmaster.pid文件重试)
 
$ psql -U kong -d kong -h 127.0.0.1 -p 5432
 
kong=> \q     然后\q退出

kkong安装与部署ong部署

kong这块按照官网的方法不成功,最终下载了rpm安装成功的。

下载kong

地址:https://docs.konghq.com/install/centos/?_ga=2.170317352.921280320.1539743753-1583657631.1536313213

根据环境选择对应版本下载,因为测试环境是centos7.5,所以点击Centos7下载

 

安装kong

$ yum install kong-community-edition-0.14.1.el7.noarch.rpm
安装过程选择y继续

新建并修改 kong 的配置文件

默认配置文件位于 /etc/kong/kong.conf.default

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

将之前安装配置好的 postgresql 信息填入 kong 配置文件中:

$ vi /etc/kong/kong.conf

去掉注释并根据当前环境修改(集群中非本节点服务器时,要将pg_host改成服务器ip)

初始化数据库表

$ kong migrations up -c  /etc/kong/kong.conf

启动kong服务

$ kong start 

测试kong是否正确启动

$ curl 127.0.0.1:8001

kong安装与部署准备kong

nodejs

wget http://nodejs.org/dist/v7.4.0/node-v7.4.0.tar.gz

yum install gcc openssl-devel gcc-c++ compat-gcc-34 compat-gcc-34-c++

tar -xf node-v7.4.0.tar.gz

cd node-v7.4.0

./configure –prefix=/usr/local/node

make && make install

ln -s /usr/local/node/bin/* /usr/sbin/

配置npm

npm set prefix /usr/local
echo -e '\nexport PATH=/usr/local/lib/node_modules:$PATH' >> ~/.bashrc
source ~/.bashrc

先决条件:已安装了nodejsnpm

# 安装 Kong Dashboard
npm install -g kong-dashboard
 
# 用一个没有被占用的端口启用 Kong Dashboard 
kong-dashboard start \
  --kong-url http://localhost:8001 \
如果8001被占用,可以用别的端口启用,比如: 
kong-dashboard start \
  --kong-url http://localhost:8001 \
  --port 9001

 

 

 

 

 

 

 

参考资料:

https://docs.konghq.com/install/centos/?_ga=2.170317352.921280320.1539743753-1583657631.1536313213

https://www.cnblogs.com/zhoujie/p/kong5.html

https://www.cnblogs.com/huangkb/p/6234520.html

https://hub.docker.com/r/pgbi/kong-dashboard/

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/153217.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 软件测试前景和发展方向

    软件测试前景和发展方向2019最热门的软件测试趋势毛哥(译)放眼全球,了解技术发展的边界和趋势,有助于组织和个人的发展及竞争力的提升,偶尔看到国外某网站的一篇文章,读来颇值得参考,简单翻译过来,分享一下。也许这篇文章会给你一份指南,让你快速成长与发展。如今,随着世界数字化,我们目睹了技术进步的巨大变化。2019年也将标志着技术和数字化转型的巨大变化,从而要求组织不断创新和重塑自我。#1)敏捷与D…

  • 关于Vue使用es6模板字符串没反应的问题「建议收藏」

    关于Vue使用es6模板字符串没反应的问题「建议收藏」错误示范VScode发get请求的地址及参数使用单引号”包裹时,发现${this.keyWord}没有变颜色,跟字符串一个颜色,也就是没有将this.keyWord识别成变量,当成了一般字符串,发请求时带的参数问题请求不到结果search(){ this.$axios.get(‘https://api.github.com/search/users?q=${this.keyWord}’).then( res=>{ console.log(res); }, err=&gt

  • QListWidget「建议收藏」

    QListWidget「建议收藏」QListWidget我们要介绍的第一个是QListWidget。先来看下面的代码示例:12345678910111213141516171819202122232425262728label=newQLabel(this);label->setFixedWidth(70)

  • Python 标识符详解[学习 Python 必备基础知识][看此一篇就够了]「建议收藏」

    Python 标识符详解[学习 Python 必备基础知识][看此一篇就够了]「建议收藏」标识符就是一个名字,它的主要作用就是作为变量、函数、类、模块以及其他对象的名称。就好像我们人一样,需要起个名字,便于称呼、指代。在给标识符命名的时候还要尽量做到“见名知其意”,例如`book_name`我们看到之后,就能大概猜出是“书的名字”相关的内容;`user_name`我们看到之后,能大概猜出是“用户名字”相关的内容等等。

  • 背包问题九讲笔记_完全背包[通俗易懂]

    背包问题九讲笔记_完全背包[通俗易懂]摘自TianyiCui童鞋的《背包问题九讲》,稍作修改,方便理解。本文包含的内容:———————————————完全背包问题描述已知:有一个容量为V的背包和N件物品,第i件物品的重量是weight[i],收益是cost[i]。条件:每种物品都有无限件,能放多少就放多少。问题:在不超

  • hibernate二级缓存策略

    hibernate二级缓存策略ibernate二级缓存策略2008-08-0111:00相关文章:关于HibernateCache数据库对象的缓存策略Spring+Hibernate缓存不起作用推荐圈子:JBPM@net更多相关推荐很多人对二级缓存都不太了解,或者是有错误的认识,我一直想写一篇文章介绍一下hibernate的二级缓存的,今天终于忍不住了。我的经验主要来自hi

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号