Documentation
¶
Index ¶
- Constants
- func NewKubeClient(config runtime.RawExtension) (*kubernetes.Clientset, error)
- func NewKubeadm(operator clustermanage.Operator, provider v1.CloudProvider) (clustermanage.CloudProvider, error)
- type APIServer
- type ClusterConfiguration
- type Config
- type KubeEtcd
- type KubeNode
- type Kubeadm
- func (r *Kubeadm) Cleanup(ctx context.Context) error
- func (r *Kubeadm) ClusterType() string
- func (r *Kubeadm) GetCertification(ctx context.Context, clusterName string) ([]v1.Certification, error)
- func (r *Kubeadm) GetKubeConfig(ctx context.Context, clusterName string) (string, error)
- func (r *Kubeadm) InitCloudProvider(operator clustermanage.Operator, provider v1.CloudProvider) (clustermanage.CloudProvider, error)
- func (r *Kubeadm) NodeDiff(clu *v1.Cluster) (addNodes []*v1.WorkerNode, delNodes []*v1.Node, err error)
- func (r *Kubeadm) PreCheck(ctx context.Context) (bool, error)
- func (r *Kubeadm) Sync(ctx context.Context) error
- func (r *Kubeadm) ToWrapper() (Wrapper, error)
- type LocalEtcd
- type Network
- type Wrapper
Constants ¶
View Source
const ProviderKubeadm = "kubeadm"
Variables ¶
This section is empty.
Functions ¶
func NewKubeClient ¶
func NewKubeClient(config runtime.RawExtension) (*kubernetes.Clientset, error)
func NewKubeadm ¶
func NewKubeadm(operator clustermanage.Operator, provider v1.CloudProvider) (clustermanage.CloudProvider, error)
Types ¶
type APIServer ¶
type APIServer struct { // CertSANs sets extra Subject Alternative Names for the API Server signing cert. CertSANs []string `yaml:"certSANs,omitempty"` }
type ClusterConfiguration ¶
type ClusterConfiguration struct { Kind string `yaml:"kind,omitempty"` // Etcd holds configuration for etcd. Etcd KubeEtcd `yaml:"etcd,omitempty"` // Networking holds configuration for the networking topology of the cluster. Networking Network `yaml:"networking,omitempty"` // KubernetesVersion is the target version of the control plane. KubernetesVersion string `yaml:"kubernetesVersion,omitempty"` // APIServer contains extra settings for the API server control plane component APIServer APIServer `yaml:"apiServer,omitempty"` // ImageRepository sets the container registry to pull images from. ImageRepository string `yaml:"imageRepository,omitempty"` // The cluster name ClusterName string `yaml:"clusterName,omitempty"` }
type Config ¶
type KubeEtcd ¶
type KubeEtcd struct { // Local provides configuration knobs for configuring the local etcd instance // Local and External are mutually exclusive Local *LocalEtcd `yaml:"local,omitempty"` }
type Kubeadm ¶
type Kubeadm struct { Operator clustermanage.Operator Provider v1.CloudProvider Config Config Clientset kubernetes.Clientset }
func (*Kubeadm) Cleanup ¶
Cleanup clean provider's all cluster & node in kc.
1.list kc clusters 2.drain cluster's node 3.delete cluster
func (*Kubeadm) GetCertification ¶
func (r *Kubeadm) GetCertification(ctx context.Context, clusterName string) ([]v1.Certification, error)
GetCertification get it by kc's own kubeadm method, without any processing here
func (*Kubeadm) GetKubeConfig ¶
GetKubeConfig get it by kc's own kubeadm method, without any processing here
func (*Kubeadm) InitCloudProvider ¶
func (r *Kubeadm) InitCloudProvider(operator clustermanage.Operator, provider v1.CloudProvider) (clustermanage.CloudProvider, error)
InitCloudProvider init cloud provider
func (*Kubeadm) NodeDiff ¶
func (r *Kubeadm) NodeDiff(clu *v1.Cluster) (addNodes []*v1.WorkerNode, delNodes []*v1.Node, err error)
NodeDiff Comparison of prior and subsequent cluster nodes
type LocalEtcd ¶
type LocalEtcd struct { // DataDir is the directory etcd will place its data. // Defaults to "/var/lib/etcd". DataDir string `yaml:"dataDir"` }
type Network ¶
type Network struct { // ServiceSubnet is the subnet used by k8s services. Defaults to "10.96.0.0/12". ServiceSubnet string `yaml:"serviceSubnet,omitempty"` // PodSubnet is the subnet used by pods. PodSubnet string `yaml:"podSubnet,omitempty"` // DNSDomain is the dns domain used by k8s services. Defaults to "cluster.local". DNSDomain string `yaml:"dnsDomain,omitempty"` }
Click to show internal directories.
Click to hide internal directories.