Documentation

Overview

    Package edsbalancer contains EDS balancer implementation.

    Index

    Constants

    This section is empty.

    Variables

    This section is empty.

    Functions

    This section is empty.

    Types

    type EDSConfig

    type EDSConfig struct {
    	serviceconfig.LoadBalancingConfig
    	// BalancerName represents the load balancer to use.
    	BalancerName string
    	// ChildPolicy represents the load balancing config for the child
    	// policy.
    	ChildPolicy *loadBalancingConfig
    	// FallBackPolicy represents the load balancing config for the
    	// fallback.
    	FallBackPolicy *loadBalancingConfig
    	// Name to use in EDS query.  If not present, defaults to the server
    	// name from the target URI.
    	EDSServiceName string
    	// LRS server to send load reports to.  If not present, load reporting
    	// will be disabled.  If set to the empty string, load reporting will
    	// be sent to the same server that we obtained CDS data from.
    	LrsLoadReportingServerName *string
    }

      EDSConfig represents the loadBalancingConfig section of the service config for EDS balancers.

      func (*EDSConfig) MarshalJSON

      func (l *EDSConfig) MarshalJSON() ([]byte, error)

        MarshalJSON returns a JSON encoding of l.

        func (*EDSConfig) UnmarshalJSON

        func (l *EDSConfig) UnmarshalJSON(data []byte) error

          UnmarshalJSON parses the JSON-encoded byte slice in data and stores it in l. When unmarshalling, we iterate through the childPolicy/fallbackPolicy lists and select the first LB policy which has been registered.