Documentation ¶
Index ¶
- Constants
- Variables
- func BuildDataCenterMetadata(dataCenters []string, upstreams []*v1.Upstream) map[string]string
- func BuildTagMetadata(tags []string, upstreams []*v1.Upstream) map[string]string
- func NewDnsResolverWithFallback(resolver DnsResolver) *dnsResolverWithFallback
- func NewPlugin(client consul.ConsulWatcher, resolver DnsResolver, ...) *plugin
- type DnsResolver
Constants ¶
View Source
const ( ExtensionName = "consul" DefaultDnsAddress = "127.0.0.1:8600" DefaultDnsPollingInterval = 5 * time.Second DefaultTlsTagName = "glooUseTls" )
Variables ¶
View Source
var ( UnformattedErrorMsg = "Consul settings specify automatic detection of TLS services, " + "but the rootCA resource's name/namespace are not properly specified: {%s}" ConsulTlsInputError = func(nsString string) error { return eris.Errorf(UnformattedErrorMsg, nsString) } )
Functions ¶
func BuildDataCenterMetadata ¶ added in v0.17.4
Similarly to what we do with tags, create a label for each data center and set it to "1" if the service instance is running in that data center.
func BuildTagMetadata ¶ added in v0.17.4
The ServiceTags on the Consul Upstream(s) represent all tags for Consul services with the given ServiceName across data centers. We create an endpoint label for each tag from the gloo upstreams, where the label key is the name of the tag and the label value is "1" if the current service contains the same tag, and "0" otherwise.
func NewDnsResolverWithFallback ¶ added in v1.9.13
func NewDnsResolverWithFallback(resolver DnsResolver) *dnsResolverWithFallback
func NewPlugin ¶
func NewPlugin(client consul.ConsulWatcher, resolver DnsResolver, dnsPollingInterval *time.Duration) *plugin
Types ¶
type DnsResolver ¶ added in v1.3.7
func NewConsulDnsResolver ¶ added in v1.9.13
func NewConsulDnsResolver(address string) DnsResolver
Click to show internal directories.
Click to hide internal directories.