Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Cluster ¶
type Cluster struct {
// The cluster driver to provision cluster
Driver ClusterDriver `json:"-"`
// The name of the cluster driver
DriverName string `json:"driverName,omitempty" yaml:"driver_name,omitempty"`
// The name of the cluster
Name string `json:"name,omitempty" yaml:"name,omitempty"`
// specific info about kubernetes cluster
// Kubernetes cluster version
Version string `json:"version,omitempty" yaml:"version,omitempty"`
// Service account token to access kubernetes API
ServiceAccountToken string `json:"serviceAccountToken,omitempty" yaml:"service_account_token,omitempty"`
// Kubernetes API master endpoint
Endpoint string `json:"endpoint,omitempty" yaml:"endpoint,omitempty"`
// Username for http basic authentication
Username string `json:"username,omitempty" yaml:"username,omitempty"`
// Password for http basic authentication
Password string `json:"password,omitempty" yaml:"password,omitempty"`
// Root CaCertificate for API server(base64 encoded)
RootCACert string `json:"rootCACert,omitempty" yaml:"root_ca_cert,omitempty"`
// Client Certificate(base64 encoded)
ClientCertificate string `json:"clientCertificate,omitempty" yaml:"client_certificate,omitempty"`
// Client private key(base64 encoded)
ClientKey string `json:"clientKey,omitempty" yaml:"client_key,omitempty"`
// Node count in the cluster
NodeCount int64 `json:"nodeCount,omitempty" yaml:"node_count,omitempty"`
// Metadata store specific driver options per cloud provider
Metadata map[string]string
Ctx *cli.Context `json:"-"`
}
Cluster represents a kubernetes cluster
func NewCluster ¶
newCluster create a cluster interface to do operations
type ClusterDriver ¶
type ClusterDriver interface {
// Create creates a cluster
Create() error
// Update updates a cluster
Update() error
// Get a cluster info
Get(name string) (generic.ClusterInfo, error)
// Remove removes a cluster
Remove() error
// DriverName returns the driver name
DriverName() string
// Get driver create options flags for creating clusters
GetDriverCreateOptions() (generic.DriverFlags, error)
// Get driver update options flags for updating cluster
GetDriverUpdateOptions() (generic.DriverFlags, error)
// Set driver options for cluster driver
SetDriverOptions(options generic.DriverOptions) error
}
ClusterDriver defines how a cluster should be created and managed. Different drivers represents different providers.
Click to show internal directories.
Click to hide internal directories.