Documentation ¶
Index ¶
- Constants
- func CreateApiServerAndController(token string) error
- func CreateExtApiServerRoleBinding() error
- func PreloadMasterScript(version string, dockerImages []string) (string, error)
- func PreloadNodeScript(version string, dockerImages []string) (string, error)
- type TerraformClient
- func (tf *TerraformClient) Create(cluster *clusterv1.Cluster, machine *clusterv1.Machine) error
- func (tf *TerraformClient) CreateMachineController(cluster *clusterv1.Cluster, initialMachines []*clusterv1.Machine, ...) error
- func (tf *TerraformClient) Delete(_ *clusterv1.Cluster, machine *clusterv1.Machine) error
- func (tf *TerraformClient) Exists(cluster *clusterv1.Cluster, machine *clusterv1.Machine) (bool, error)
- func (tf *TerraformClient) GetIP(machine *clusterv1.Machine) (string, error)
- func (tf *TerraformClient) GetKubeConfig(master *clusterv1.Machine) (string, error)
- func (tf *TerraformClient) PostDelete(cluster *clusterv1.Cluster, machines []*clusterv1.Machine) error
- func (tf *TerraformClient) SetupRemoteMaster(master *clusterv1.Machine) error
- func (tf *TerraformClient) Update(cluster *clusterv1.Cluster, goalMachine *clusterv1.Machine) error
Constants ¶
View Source
const ( MasterIpAnnotationKey = "master-ip" TerraformConfigAnnotationKey = "tf-config" ControlPlaneVersionAnnotationKey = "control-plane-version" KubeletVersionAnnotationKey = "kubelet-version" // Filename in which named machines are saved using a ConfigMap (in master). NamedMachinesFilename = "vsphere_named_machines.yaml" )
View Source
const InstanceStatusAnnotationKey = "instance-status"
Variables ¶
This section is empty.
Functions ¶
func CreateExtApiServerRoleBinding ¶
func CreateExtApiServerRoleBinding() error
TODO: We need to change this when we create dedicated service account for apiserver/controller pod.
func PreloadMasterScript ¶
PreloadMasterScript returns a script that can be used to preload a master.
Types ¶
type TerraformClient ¶
type TerraformClient struct {
// contains filtered or unexported fields
}
func NewMachineActuator ¶
func NewMachineActuator(kubeadmToken string, machineClient client.MachineInterface, namedMachinePath string) (*TerraformClient, error)
func (*TerraformClient) CreateMachineController ¶
func (tf *TerraformClient) CreateMachineController(cluster *clusterv1.Cluster, initialMachines []*clusterv1.Machine, clientSet kubernetes.Clientset) error
func (*TerraformClient) GetIP ¶
func (tf *TerraformClient) GetIP(machine *clusterv1.Machine) (string, error)
func (*TerraformClient) GetKubeConfig ¶
func (tf *TerraformClient) GetKubeConfig(master *clusterv1.Machine) (string, error)
func (*TerraformClient) PostDelete ¶
func (*TerraformClient) SetupRemoteMaster ¶
func (tf *TerraformClient) SetupRemoteMaster(master *clusterv1.Machine) error
After master created, move the plugins folder from local to master's .terraform.d/plugins. Currently each init will download the plugin, so for a large number of machines, this will eat up a lot of space.
Click to show internal directories.
Click to hide internal directories.