blob: 21769e0b08d22c57e4bd300fe800a8f44a50f41d [file] [view]
#Sample Plugin - Eureka
##Overview
This plugin integrates with [NetFlix's Eureka](https://github.com/Netflix/eureka). Eureka is a REST (Representational State Transfer) based service that is primarily used in the AWS cloud for locating services for the purpose of load balancing and failover of middle-tier servers.
##Enable the plugin
Include the plugin the in plugin sequence of {org}-{env}-config.yaml file:
```
plugins:
sequence:
- oauth
- eurekaclient
```
##Configure the plugin
The plugin configuration has three parts:
* (instance) Defining the microgateway instance. This registers microgateway with Eureka
* (eureka) Provide the endpoint details to where Eureka is hosted
* (lookup) See below for details
```
eurekaclient:
instance:
app: microgateway
vipAddress: microgateway
dataCenterInfo:
name: MyOwn
eureka:
host: localhost
port: 8761
servicePath: /eureka/apps/
lookup:
-
uri: /book
app: BOOK
secure: false
-
uri: /httpbin
app: BOOK
secure: false
```
###Lookup Configuration
Eureka registers apps (BOOK in the example above). There needs to be a mapping to map the API Proxy basePath to an app registered on Eureka. In the example above, the basePath /httpbin and /book maps to the BOOK app.
NOTE: If a mapping is not found, then the plugins forwards the API traffic as configured in the proxy.