v0.0.10 Latest Latest

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

Go to latest
Published: May 6, 2019 License: Apache-2.0 Imports: 20 Imported by: 0




View Source
const (
	UserAgentName = "Cluster-Controller"

	// Following labels come from k8s.io/kubernetes/pkg/kubelet/apis
	LabelZoneFailureDomain = "failure-domain.beta.kubernetes.io/zone"
	LabelZoneRegion        = "failure-domain.beta.kubernetes.io/region"


This section is empty.


func StartClusterController

func StartClusterController(config *util.ControllerConfig, clusterHealthCheckConfig util.ClusterHealthCheckConfig, stopChan <-chan struct{}) error

StartClusterController starts a new cluster controller.


type ClusterClient

type ClusterClient struct {
	// contains filtered or unexported fields

ClusterClient provides methods for determining the status and zones of a particular FederatedCluster.

func NewClusterClientSet

func NewClusterClientSet(c *fedv1a1.FederatedCluster, client generic.Client, fedNamespace, clusterNamespace string) (*ClusterClient, error)

NewClusterClientSet returns a ClusterClient for the given FederatedCluster. The kubeClient and crClient are used to configure the ClusterClient's internal client with information from a kubeconfig stored in a kubernetes secret and an API endpoint from the cluster-registry.

func (*ClusterClient) GetClusterHealthStatus

func (self *ClusterClient) GetClusterHealthStatus() *fedv1a1.FederatedClusterStatus

GetClusterHealthStatus gets the kubernetes cluster health status by requesting "/healthz"

func (*ClusterClient) GetClusterZones

func (self *ClusterClient) GetClusterZones() ([]string, string, error)

GetClusterZones gets the kubernetes cluster zones and region by inspecting labels on nodes in the cluster.

type ClusterController

type ClusterController struct {
	// contains filtered or unexported fields

ClusterController is responsible for maintaining the health status of each FederatedCluster in a particular namespace.

func (*ClusterController) Run

func (cc *ClusterController) Run(stopChan <-chan struct{})

Run begins watching and syncing.

type ClusterData added in v0.0.9

type ClusterData struct {
	// contains filtered or unexported fields

ClusterData stores cluster client and previous health check probe results of individual cluster.

Jump to

Keyboard shortcuts

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