Skip to content

gorouter job from cf/215

The Router maintains a list of live routes for the applications running on each DEA. The Router load balances requests (based on their Host header) between each application instance registered for a specific route. It requires to be behind a load balancer that can terminate SSL connections.

Github source: 2a4897df or master branch

Properties

dropsonde

enabled

Enable the dropsonde emitter library

Default
false

metron_endpoint

dropsonde_port

The port used to emit dropsonde messages to the Metron agent.

Default
3457

host

The host used to emit messages to the Metron agent.

Default
127.0.0.1

port

The port used to emit legacy messages to the Metron agent.

Default
3456

shared_secret

The key used to sign log messages.

nats

machines

IP of each NATS cluster member.

password

port

user

networks

apps

GoRouter network information.

request_timeout_in_seconds

Timeout in seconds for Router -> Endpoint roundtrip.

Default
900

router

cipher_suites

Valid ssl cipher suites, golang tls constants separated by commas

Default
TLS_RSA_WITH_RC4_128_SHA:TLS_RSA_WITH_AES_128_CBC_SHA:TLS_RSA_WITH_AES_256_CBC_SHA:TLS_ECDHE_ECDSA_WITH_RC4_128_SHA:TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256:TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA:TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA:TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256:TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA:TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA:TLS_ECDHE_RSA_WITH_RC4_128_SHA

debug_addr

Address at which to serve debug info

Default
0.0.0.0:17001

enable_routing_api

Enable the GoRouter to receive routes from the Routing API

Default
true

enable_ssl

Enable ssl termination on the router

Default
false

number_of_cpus

Number of CPUs to utilize, the default (-1) will equal the number of available CPUs

Default
-1

offset

Default
0

port

Listening Port for Router.

Default
80

requested_route_registration_interval_in_seconds

Interval at which the router requests routes to be registered.

Default
20

route_service_secret

A base64 encoded key, the key length should be 16 bytes for AES-128, 24 for AES-192, or 32 for AES-256

Default
""

route_service_secret_prev

A base64 encoded key, the key length should be 16 bytes for AES-128, 24 for AES-192, or 32 for AES-256. This should be used to rotate the route_service_secret without downtime.

Default
""

route_service_timeout

Expiry time of a route service signature in seconds

Default
60

secure_cookies

Set secure flag on http cookies

Default
false

ssl_cert

The public ssl cert for ssl termination

Default
""

ssl_key

The private ssl key for ssl termination

Default
""

ssl_skip_validation

Skip SSL client cert validation

Default
false

status

password

Password for HTTP basic auth to the varz/status endpoint.

port

Port for the Router varz/status endpoint.

Default
8080
user

Username for HTTP basic auth to the varz/status endpoint.

trace_key

If the X-Vcap-Trace request header is set and has this value, trace headers are added to the response.

Default
22

routing-api

port

Port on which routing-api is running.

Default
3000

uaa

clients

gorouter
secret

Password for UAA client for the gorouter.

port

Port on which UAA is running.

Default
8080

Templates

Templates are rendered and placed onto corresponding instances during the deployment process. This job's templates will be placed into /var/vcap/jobs/gorouter/ directory (learn more).

  • bin/dns_health_check (from dns_health_check.erb)
  • bin/drain (from drain)
  • bin/gorouter_ctl (from gorouter_ctl.erb)
  • config/cert.pem (from cert.pem.erb)
  • config/gorouter.yml (from gorouter.yml.erb)
  • config/gorouter_logrotate.cron (from gorouter_logrotate.cron.erb)
  • config/key.pem (from key.pem.erb)
  • config/logrotate.conf (from logrotate.conf.erb)

Packages

Packages are compiled and placed onto corresponding instances during the deployment process. Packages will be placed into /var/vcap/packages/ directory.