Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
Functions ¶
This section is empty.
Types ¶
type Discovery ¶
type Discovery interface { Run(ctx context.Context, ch chan<- []*targetgroup.Group) // contains filtered or unexported methods }
Discovery periodically performs OpenStack-SD requests. It implements the Discoverer interface.
type HypervisorDiscovery ¶
type HypervisorDiscovery struct {
// contains filtered or unexported fields
}
HypervisorDiscovery discovers OpenStack hypervisors.
func NewHypervisorDiscovery ¶
func NewHypervisorDiscovery(provider *gophercloud.ProviderClient, opts *gophercloud.AuthOptions, interval time.Duration, port int, region string, l log.Logger) *HypervisorDiscovery
NewHypervisorDiscovery returns a new hypervisor discovery.
func (*HypervisorDiscovery) Run ¶
func (h *HypervisorDiscovery) Run(ctx context.Context, ch chan<- []*targetgroup.Group)
Run implements the Discoverer interface.
type InstanceDiscovery ¶
type InstanceDiscovery struct {
// contains filtered or unexported fields
}
InstanceDiscovery discovers OpenStack instances.
func NewInstanceDiscovery ¶
func NewInstanceDiscovery(provider *gophercloud.ProviderClient, opts *gophercloud.AuthOptions, interval time.Duration, port int, region string, allTenants bool, l log.Logger) *InstanceDiscovery
NewInstanceDiscovery returns a new instance discovery.
func (*InstanceDiscovery) Run ¶
func (i *InstanceDiscovery) Run(ctx context.Context, ch chan<- []*targetgroup.Group)
Run implements the Discoverer interface.
type Role ¶
type Role string
OpenStackRole is role of the target in OpenStack.
const ( // OpenStack document reference // https://docs.openstack.org/nova/pike/admin/arch.html#hypervisors OpenStackRoleHypervisor Role = "hypervisor" // OpenStack document reference // https://docs.openstack.org/horizon/pike/user/launch-instances.html OpenStackRoleInstance Role = "instance" )
The valid options for OpenStackRole.
func (*Role) UnmarshalYAML ¶
UnmarshalYAML implements the yaml.Unmarshaler interface.
type SDConfig ¶
type SDConfig struct { IdentityEndpoint string `yaml:"identity_endpoint"` Username string `yaml:"username"` UserID string `yaml:"userid"` Password config_util.Secret `yaml:"password"` ProjectName string `yaml:"project_name"` ProjectID string `yaml:"project_id"` DomainName string `yaml:"domain_name"` DomainID string `yaml:"domain_id"` Role Role `yaml:"role"` Region string `yaml:"region"` RefreshInterval model.Duration `yaml:"refresh_interval,omitempty"` Port int `yaml:"port"` AllTenants bool `yaml:"all_tenants,omitempty"` TLSConfig config_util.TLSConfig `yaml:"tls_config,omitempty"` }
SDConfig is the configuration for OpenStack based service discovery.
func (*SDConfig) UnmarshalYAML ¶
UnmarshalYAML implements the yaml.Unmarshaler interface.