Red Hat (RHEL / CentOS)
Requirements
- Ansible is required to run the following commands. Instructions on how install Tyk CE with shell is in the Shell tab.
- Ensure port
8080
is open: this is used in this guide for Gateway traffic (the API traffic to be proxied).
Getting Started
- clone the tyk-ansible repository
$ git clone https://github.com/TykTechnologies/tyk-ansible
cd
into the directory
$ cd tyk-ansible
- Run the initalization script to initialise your environment
$ sh scripts/init.sh
-
Modify the
hosts.yml
file to update ssh variables to your server(s). You can learn more about the hosts file here -
Run ansible-playbook to install
tyk-ce
$ ansible-playbook playbook.yml -t tyk-ce -t redis
You can choose to not install Redis by using -t redis
. However Redis is a requirement and needs to be installed for the Tyk Gateway to run.
Supported Distributions
Distribution | Version | Supported |
---|---|---|
Amazon Linux | 2 | ✅ |
CentOS | 8 | ⚠️ |
CentOS | 7 | ✅ |
CentOS | 6 | ❌ |
RHEL | 8 | ⚠️ |
RHEL | 7 | ✅ |
RHEL | 6 | ❌ |
Symbol | Description |
---|---|
✅ | Tested / Supported |
⚠️ | Tested / Not officially supported by Tyk |
❌️ | Untested / Not supported by tool |
Requirements
- Ensure port
8080
is open: this is used in this guide for Gateway traffic (the API traffic to be proxied). - EPEL (Extra Packages for Enterprise Linux) is a free, community based repository project from Fedora which provides high quality add-on software packages for Linux distribution including RHEL, CentOS, and Scientific Linux. EPEL isn’t a part of RHEL/CentOS but it is designed for major Linux distributions. In our case we need it for Redis. Install EPEL using the instructions here.
Install Redis using EPEL
sudo yum install -y redis
Note
You may be asked to accept the GPG key for our repos and when the package installs, click yes to continue.
- Tyk requires Python 3.4. Install via the following command:
sudo yum install python34
Start Redis
In many cases Redis might not be running, so let’s start that:
sudo service redis start
Run Installation Scripts via our PackageCloud Repositories
From https://packagecloud.io/tyk/tyk-gateway you have the following options:
-
Via the correct package for your RHEL version. We have packages for the following:
-
RHEL 7
-
RHEL 6
-
Via Quick Installation Instructions. You can use:
Configuring The Gateway
You can set up the core settings for the Tyk Gateway with a single setup script, however for more involved deployments you will want to provide your own configuration file.
Note
You need to replace <hostname>
for --redishost=<hostname>
with your own value to run this script.
sudo /opt/tyk-gateway/install/setup.sh --listenport=8080 --redishost=<hostname> --redisport=6379 --domain=""
What you’ve done here is told the setup script that:
--listenport=8080
: Listen on port8080
for API traffic.--redishost=<hostname>
: The hostname for Redis.--redisport=6379
: Use port6379
for Redis.--domain=""
: Do not filter domains for the Gateway, see the note on domains below for more about this.
In this example, you don’t want Tyk to listen on a single domain. It is recommended to leave the Tyk Gateway domain unbounded for flexibility and ease of deployment.
Starting Tyk
The Tyk Gateway can be started now that it is configured. Use this command to start the Tyk Gateway:
sudo service tyk-gateway start
Next Steps Tutorials
Follow the Tutorials on the Community Edition tabs for the following: