-
Initialize the configuration by specifying the cluster name and platform, where appcenter is the cluster name and vsphere is the platform:
$ kubekit init appcenter --platform vsphere
A text editor opens to allow you to edit the default cluster configuration.
The cluster config file is in YAML format. You must maintain existing indentation. -
Edit the configuration variables for your environment:
$ kubekit edit appcenter
For help identifying the values to use, contact your vSphere administrator.
Configuration Variables Variable Variable Description and Command Example Considerations config: host_timezone controlplane_timezone
Time zone used when AppCenter runs scheduled jobs. Example: host_timezone: "Asia/Tokyo" controlplane_timezone: "Asia/Tokyo"
If you do not provide a time zone, AppCenter defaults to UTC. config: master_schedulable_enabled
Enable master scheduling. Example: master_schedulable_enabled :true
Required for AppCenter installation. Schedules pods on the master node.
config: rook_enabled
Example: rook_enabled: "false" Set the variable to false to disable Rook. You must set the variable to false for vSphere installations. cpus
Number of CPUs to be allocated to each node. For more information, see Software Requirements. datacenter
Name of the VMware data center in which the cluster will be created. Example: vagrant
Virtual data center is a container for all inventory objects required for operating virtual machines (VMs). datastore
Name of the datastore associated with the datacenter. Example: vgrnt_dsc/vgrnt03
Reserve 3 TB of space in a single datastore that is connected to all VMware hosts to ensure 500 GB can be dedicated to each AppCenter VM.
default_node_pool: linked_clone:
Used to specify if the nodes are to be linked clones. For production, set linked_clone to false. For example: default_node_pool: linked_clone: false
dns_servers
Local DNS server to resolve domain queries on local network or customer network. folder
Name of the folder in which the VMs need to be deployed. Example: Discovered virtual machine/folder_name
If not provided, the VMs will be created in the root location. memory
Amount of memory to be allocated to each node. For more information, see Software Requirements. node_pools: master: count: worker: count:
Number of master and worker nodes you want to deploy in this environment. Minimum recommended configuration is 3 masters and 3 workers. private_key_file
Location of a private key. Private key will be used to set up the SSH access for the cluster. If you do not have a private key, generate one using ssh-keygen.
public_key_file
Location of a public key. The public key will be needed for AppCenter installation. If you don’t have a public key, generate one using ssh-keygen.
resource_pool
Name of the resource pool present in the datacenter. Example: vgrnt_01/Resources/vagrant01
If you do not have a resource pool, use <datacenter_name>/Resources as the value.
You can use resource pools to hierarchically partition available CPU and memory resources of a standalone host or a cluster. root_vol_size
Size of root volume for each node. Minimum recommended configuration is 500 GB. template
KubeOS template name. Example: <use the latest>
If the template_name is under a particular folder, specify the full path. For example: <folder_name>/KubeOS template name time_servers
Local network time server to synchronizing time over NTP. vsphere_net
Network with which the VMs need to be associated. Example: dvpg_vm_550
Networks provide a method of communication among virtual machines. Machines will be connected logically using this network so data can be sent and received among them. - Save and close the cluster configuration.