discovery

package module
v0.0.0-...-900132f Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 17, 2016 License: MIT Imports: 3 Imported by: 1

README

ecs-discovery

ecs-discovery pulls standard metadata about containers running on ECS using the ECS API.

Metadata used

The following is information used to create the metadata for discovering services:

  • Name : Task Name as in ECS
  • TaskARN
  • IPAddress
  • ContainerPort
  • HostPort
  • DockerLabel.hostname : In the ECS Task definition you can add DockerLabels, if you have a DockerLabel named hostname it will override the default domain and expose that instead of the default name.domain
Notes

Although rough around the edges, the ConsulKV implementation is being used internally by us to manage/discover several hundred production containers across multiple servers.

Todo

  • Tests
  • Better Documentation

Contributing

Contributions are welcome! Please submit a pull request and we'll discuss any changes and approve the request.

Providers are encouraged such as etcd. We will work (where we can) with you on assistance.

License

MIT

Documentation

Index

Constants

View Source
const (
	ERR_NO_CLIENT = "no discovery client set, please call NewClient()"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Discoverer

type Discoverer interface {
	Discover() error

	NewClient(cluster, region, defaultdomain string)
}

func ConsulKV

func ConsulKV(config *consul.Config) (Discoverer, error)

ConsulKV calls KV() which creates a new KV instances returns the Discoverer interface. It takes the consul Config struct.

Directories

Path Synopsis
examples

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL