Skip to content

route_registrar job from cf/229

Used for registering routes

Github source: 7f7b9690 or master branch

Properties

nats

machines

IPs of each NATS cluster member

Example
|+
  - 192.168.50.123
  - 192.168.52.123

password

Password for NATS authentication

Example
natSpa55w0rd

port

TCP port of NATS servers

Example
4222

user

User name for NATS authentication

Example
nats

route_registrar

routes

  • Array of hashes determining which routes will be registered.
  • Each hash should have ‘port’, ‘uris’, and ‘name’ keys.
  • Additionally, the ‘tags’ and ‘healthcheck’ keys are optional.
  • ‘uris’ is an array of URIs to register for the ‘port’.
  • ‘tags’ are included in metrics that gorouter emits to support filtering.
  • ‘healthcheck’ is a hash which should have ‘name’ and ‘script_path’.
  • ‘healthcheck.timeout’ is optional, and is measured in seconds.
Example
|+
  - name: my-service
    port: 12345
    tags:
      component: my-service
      env: production
    uris:
      - my-service.system-domain.com
      - *.my-service.system-domain.com
    healthcheck:
      name: my-service-healthcheck
      script_path: /path/to/script
      timeout: 5
  - name: my-debug-endpoint
    port: 12346
    uris:
      - my-service.system-domain.com/debug

update_frequency_in_seconds

The delay in seconds between routing updates

Default
20

Templates

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

  • bin/route_registrar_ctl (from route_registrar_ctl.erb)
  • config/registrar_settings.yml (from registrar_settings.yml.erb)

Packages

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