Documentation
¶
Overview ¶
Package workload builds dataplane workloads. The Unbounded operator deploys them; the controller only observes and authenticates them.
Index ¶
Constants ¶
const ( DataplaneDaemonSetName = "racer-dataplane" PodNetworkDaemonSetName = "racer-dataplane-podnet" )
Variables ¶
This section is empty.
Functions ¶
func DataplaneAffinity ¶ added in v0.17.0
DataplaneAffinity is the default node affinity of dataplane Pods. Workloads that must share nodes with the dataplane reuse it.
func DesiredDaemonSets ¶
DesiredDaemonSets builds steady-state placement, not a safe migration plan. The operator must additionally exclude occupied destination nodes until every source Pod, including terminating Pods, has disappeared.
func ManagedNames ¶
ManagedNames contains only the explicitly configured workload.
Types ¶
type Config ¶
type Config struct {
Cluster wire.ClusterID
Namespace string
ControlURL string
BootstrapTrustConfigMap string
DataplaneImage string
PeerPort uint16
HostNetwork bool
PodNetworkNodes []string
// Zero selects the automatic diagnostics port (9090, or 9091 when the peer
// port is 9090).
DiagnosticsPort uint16
DataplaneServiceAccount string
DaemonSetName string
}
Config contains only the inputs needed to build the dataplane DaemonSet. Controller limits, rotation policy, serving TLS, and durable state are independent.
func ConfigFromLookup ¶
ConfigFromLookup reads operator deployment wiring without loading or validating controller runtime configuration. Shared settings retain the same defaults.
type NodePlacement ¶ added in v0.17.0
type NodePlacement struct {
// Affinity carries only node affinity. Pod affinity and anti-affinity
// are relative to dataplane Pods, so a rule such as hostname
// anti-affinity against racer-dataplane would otherwise exclude the
// copying workload from every dataplane node.
Affinity *corev1.Affinity
NodeSelector map[string]string
Tolerations []corev1.Toleration
}
NodePlacement holds the node-level scheduling constraints of a dataplane Pod. Workloads that must run on every node that serves a cache, such as cache origins, copy it so they follow the dataplane, including user overrides applied to the live DaemonSet.
func PlacementOf ¶ added in v0.17.0
func PlacementOf(pod *corev1.PodSpec) NodePlacement
PlacementOf returns a deep copy of the node-level scheduling constraints of a Pod spec.