CentOS7安装tyk(内部部署)
参考
环境准备
#确保端口3000处于打开状态:Dashboard使用该端口来提供GUI和Developer Portal
#Tyk需要Python 3.4、允许我们使用签名软件包的软件
sudo yum -y install epel-release
sudo yum -y install python34
sudo yum -y install pygpgme yum-utils wget
MongoDB安装
mongodb地址不能访问就自行下载,官方文档用的不是最新版本。
3.0.15版本的五个文件*下载。
地址
mongodb-org-3.0.15-1.el7.x86_64.rpm
mongodb-org-mongos-3.0.15-1.el7.x86_64.rpm
mongodb-org-server-3.0.15-1.el7.x86_64.rpm
mongodb-org-shell-3.0.15-1.el7.x86_64.rpm
mongodb-org-tools-3.0.15-1.el7.x86_64.rpm
#将文件上传到/usr/local/src使用rpm安装
rpm -ivh mongodb-org*
#启动
sudo service mongod start
Redis安装
tyk-dashboard
#地址无法访问,下载后安装
https://packagecloud.io/tyk/tyk-dashboard/packages/el/7/tyk-dashboard-1.6.1-1.x86_64.rpm
#上传到/usr/local/src
yum -y install tyk-dashboard-1.6.1-1.x86_64.rpm
#仪表盘配置
sudo /opt/tyk-dashboard/install/setup.sh --listenport=3000 --redishost=localhost --redisport=6379 --mongo=mongodb://127.0.0.1/tyk_analytics --tyk_api_hostname=$HOSTNAME --tyk_node_hostname=http://localhost --tyk_node_port=8080 --portal_root=/portal --domain="192.168.1.10"
#--listenport=3000:告诉Tyk仪表板(和门户)在端口3000上收听。
#--redishost=localhost:Tyk仪表板应该使用本地的Redis实例。
#--redisport=6379:Tyk仪表板应使用默认端口。
#--domain="XXX.XXX.XXX.XXX":将仪表板绑定到此实例的IP或DNS主机名(必需)。
#--mongo=mongodb://127.0.0.1/tyk_analytics:使用本地MongoDB(应始终与Gateway相同)。
#--tyk_api_hostname=$HOSTNAME:Tyk仪表板不知道Tyk提供了什么主机名,所以我们需要告诉它,在这种情况下,我们只是使用本地HOSTNAME env变量,但是可以将它设置为实例的public-hostname / IP 。
#--tyk_node_hostname=http://localhost:Tyk仪表板需要查看Tyk节点才能创建新的令牌,所以我们需要告诉它在哪里可以找到它,在这种情况下,请使用本地安装的。
#--tyk_node_port=8080:告诉仪表板它应该与之通信的Tyk节点在端口8080上。
#--portal_root=/portal:我们希望将门户网站显示在我们为门户网站设置的任何域名/门户网站上。
#tyk-dashboard启动
sudo service tyk-dashboard start
#查看日志验证是否运行
sudo journalctl -u tyk-dashboard
#关闭防火墙,通过http://192.168.1.10:3000 访问
#获取免费许可(1个节点、1年有效期)https://tyk.io/product/tyk-on-premises-free-edition/
#完成后会收到邮件,里面有jwt格式的License
#配置license_key
vi /opt/tyk-dashboard/tyk_analytics.conf
#"license_key": "License"
#重启tyk-dashboard
sudo service tyk-dashboard restart
#tyk-dashboard帐号初始化
[root@localhost tyk-dashboard]# /opt/tyk-dashboard/install/bootstrap.sh 192.168.1.10
Creating Organisation
ORG DATA: {"Status":"OK","Message":"Org created","Meta":"xxx"}
ORG ID: xxx
Adding new user
USER AUTHENTICATION CODE: yyy
NEW ID: yyy
Setting password
{"Status":"OK","Message":"User password updated","Meta":null}
DONE
====
Login at http://192.168.1.10:3000/
User: zzz@default.com
Pass: zzz
登陆后界面,多语言有中文。
tyk-pump
#下载rpm,上传到/usr/local/src
https://packagecloud.io/tyk/tyk-pump/packages/el/7/tyk-pump-0.5.2-1.x86_64.rpm/download.rpm
#Install Packages
yum -y install tyk-pump-0.5.2-1.x86_64.rpm
#Configure Tyk Pump
sudo /opt/tyk-pump/install/setup.sh --redishost=localhost --redisport=6379 --mongo=mongodb://127.0.0.1/tyk_analytics
#Start Tyk Pump
sudo service tyk-pump start
#查看日志验证是否运行
sudo journalctl -u tyk-pump
tyk-gateway
#下载rpm,上传到/usr/local/src
https://packagecloud.io/tyk/tyk-gateway/packages/el/7/tyk-gateway-2.6.1-1.x86_64.rpm/download.rpm
#Install Packages
yum -y install tyk-gateway-2.6.1-1.x86_64.rpm/download.rpm
#配置tyk-gateway CE
sudo /opt/tyk-gateway/install/setup.sh --listenport=8080 --redishost=localhost --redisport=6379 --domain=""
#启动tyk-gateway
sudo service tyk-gateway start
#查看日志
journalctl -u tyk-gateway
#使用仪表板配置Tyk网关
sudo /opt/tyk-gateway/install/setup.sh --dashboard=1 --listenport=8080 --redishost=localhost --redisport=6379
重启相关服务后tyk-dashboard会与tyk-gateway关联,活跃节点