Documentation ¶
Index ¶
- Constants
- type Address
- type Cluster
- type ClusterLinkMode
- type Network
- type NetworkShape
- type Node
- func (n *Node) AddLabels(m map[string]string)
- func (n *Node) Hostname() string
- func (n *Node) IsAgent() bool
- func (n *Node) IsServer() bool
- func (n *Node) LocalAddress() string
- func (n *Node) PodName() string
- func (n *Node) PublicAddress() string
- func (n *Node) RunsWorkloads() bool
- func (n *Node) TokenName() string
- type NodeKind
- type NodeMode
- type Service
- type Topology
- func (t *Topology) AddAdditionalPrimaryGateway(addr string)
- func (t *Topology) AddNetwork(n *Network)
- func (t *Topology) AddNode(node *Node)
- func (t *Topology) Cluster(name string) *Cluster
- func (t *Topology) ClusterNodes(cluster string) []*Node
- func (t *Topology) Clusters() []Cluster
- func (t *Topology) FederateWithGateways() bool
- func (t *Topology) GatewayAddrs(cluster string) []string
- func (t *Topology) LeaderIP(cluster string, wan bool) string
- func (t *Topology) LinkWithFederation() bool
- func (t *Topology) LinkWithPeering() bool
- func (t *Topology) Networks() []*Network
- func (t *Topology) Node(name string) *Node
- func (t *Topology) Nodes() []*Node
- func (t *Topology) ServerIPs(cluster string) []string
- func (t *Topology) Walk(f func(n *Node) error) error
- func (t *Topology) WalkSilent(f func(n *Node))
Constants ¶
View Source
const ( // NetworkShapeIslands describes an isolated island topology where only the // mesh gateways are on the WAN. NetworkShapeIslands = NetworkShape("islands") // NetworkShapeDual describes a private/public lan/wan split where the // servers/meshGateways can route to all other servers/meshGateways and the // clients are isolated. NetworkShapeDual = NetworkShape("dual") // NetworkShapeFlat describes a flat network where every agent has a single // ip address and they all are routable. NetworkShapeFlat = NetworkShape("flat") )
View Source
const ( ClusterLinkModePeer = ClusterLinkMode("peer") ClusterLinkModeFederate = ClusterLinkMode("federate") )
View Source
const ( NodeModeAgent = NodeMode("agent") NodeModeDataplane = NodeMode("dataplane") )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ClusterLinkMode ¶
type ClusterLinkMode string
type Network ¶
func (*Network) DockerName ¶
type NetworkShape ¶
type NetworkShape string
func (NetworkShape) GetNetworkName ¶
func (s NetworkShape) GetNetworkName(dc string) string
type Node ¶
type Node struct { Kind NodeKind Cluster string Name string Segment string // may be empty Partition string // will be not empty Addresses []Address Service *Service MeshGateway bool UseBuiltinProxy bool Index int Canary bool // mesh-gateway only MeshGatewayUseDNSWANAddress bool }
func (*Node) LocalAddress ¶
func (*Node) PublicAddress ¶
func (*Node) RunsWorkloads ¶
type Topology ¶
type Topology struct { NetworkShape NetworkShape LinkMode ClusterLinkMode NodeMode NodeMode // contains filtered or unexported fields }
func CompileTopology ¶
CompileTopology creates a Topology based on the provided configuration.
func (*Topology) AddAdditionalPrimaryGateway ¶
func (*Topology) AddNetwork ¶
func (*Topology) ClusterNodes ¶
func (*Topology) FederateWithGateways ¶
func (*Topology) GatewayAddrs ¶
func (*Topology) LinkWithFederation ¶
func (*Topology) LinkWithPeering ¶
func (*Topology) WalkSilent ¶
Click to show internal directories.
Click to hide internal directories.