Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

Programmatic load balancer backed by Etcd

License

NotificationsYou must be signed in to change notification settings

vulcand/vulcand

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Vulcand is a programmatic extendable proxy for microservices and API management.It is inspired byHystrix and powers Mailgun microservices infrastructure.

Focus and priorities

Vulcand is focused on microservices and API use-cases.

Features

  • Uses etcd as a configuration backend.
  • API and command line tool.
  • Pluggable middlewares.
  • Support for canary deployments, realtime metrics and resilience.

Vulcan diagram

Project info

documentationhttps://vulcand.github.io/
statusUsed in production@Mailgun on moderate workloads. Under active development.
discussionshttps://groups.google.com/d/forum/vulcan-proxy
roadmaproadmap.md
build statusBuild Status

Opentracing Support

Vulcand has support for open tracing via theJaeger clientlibraries. Users who wishto use tracing support should use the--enableJaegerTracing flag and musteither run the Jaeger client listening onlocalhost:6831/udp or set theenvironment variablesJAEGER_AGENT_HOST andJAEGER_AGENT_POST. (See theJaeger client librariesfor all available configuration environment variables.)

When enabled vulcand will create 2 spans: one span calledvulcand whichcovers the entire downstream request and another span calledmiddleware whichonly spans the processing of the middleware before the request is routeddownstream.

Aliased Expressions

When running vulcand in a kubernetes DaemonSet vulcand needs to know requestsfrom the local node can matchHost("localhost") rules. This--aliases flagallows an author of a vulcand DaemonSet to tell vulcand the name of the node it'scurrently running on, such that vulcand correctly routes requests forHost("localhost"). The--aliases flag allows the user to pass in multiplealiases separated by commas.

Example

$ vulcand --aliases 'Host("localhost")=Host("192.168.1.1")'

[8]ページ先頭

©2009-2025 Movatter.jp