From 96617c281c337900ddcb165de7e20b3e3ff56138 Mon Sep 17 00:00:00 2001 From: Mark Bishop Date: Thu, 9 Aug 2018 12:03:06 -0700 Subject: [PATCH] made grammar/style edits --- .../rke-clusters/node-pools/vsphere/_index.md | 74 +++++++++++-------- 1 file changed, 44 insertions(+), 30 deletions(-) diff --git a/content/rancher/v2.x/en/cluster-provisioning/rke-clusters/node-pools/vsphere/_index.md b/content/rancher/v2.x/en/cluster-provisioning/rke-clusters/node-pools/vsphere/_index.md index cf49e0be18c..2bef973caf4 100644 --- a/content/rancher/v2.x/en/cluster-provisioning/rke-clusters/node-pools/vsphere/_index.md +++ b/content/rancher/v2.x/en/cluster-provisioning/rke-clusters/node-pools/vsphere/_index.md @@ -9,33 +9,33 @@ Use {{< product >}} to create a Kubernetes cluster in vSphere. ## Introduction -When creating a vSphere cluster Rancher first provisions the specified amount of virtual machines by communicating with the vCenter API. Then it installs Kubernetes on top of them. A vSphere cluster may consist of multiple groups of VMs with distinct properties, such as the amount of memory or the number of vCPUs. This allows for fine-grained controll over the sizing of nodes for the data, control and worker plane respectively. +When creating a vSphere cluster, Rancher first provisions the specified amount of virtual machines by communicating with the vCenter API. Then it installs Kubernetes on top of them. A vSphere cluster may consist of multiple groups of VMs with distinct properties, such as the amount of memory or the number of vCPUs. This grouping allows for fine-grained control over the sizing of nodes for the data, control, and worker plane respectively. -> *Note:* -> The vSphere node driver included in Rancher currently only supports the provisioning of VMs with [RancherOS]({{< baseurl >}}/os/v1.x/en/) as the guest operating system. +>**Note:** +>The vSphere node driver included in Rancher currently only supports the provisioning of VMs with [RancherOS]({{< baseurl >}}/os/v1.x/en/) as the guest operating system. ## Prerequisites -Before proceeding to create a cluster you must ensure that you have a vSphere user with sufficient permissions. If you are planning to make use of vSphere volumes for persistent storage in the cluster, there are [additional requirements]({{< baseurl >}}/rke/v0.1.x/en/config-options/cloud-providers/vsphere/) that must be met. -Let's walk through the steps of creating a role with the required privileges and assign it to a new user in the vSphere console: +Before proceeding to create a cluster, you must ensure that you have a vSphere user with sufficient permissions. If you are planning to make use of vSphere volumes for persistent storage in the cluster, there are [additional requirements]({{< baseurl >}}/rke/v0.1.x/en/config-options/cloud-providers/vsphere/) that must be met. +The following steps create a role with the required privileges and then assign it to a new user in the vSphere console: 1. From the **vSphere** console, go to the **Administration** page. 2. Go to the **Roles** tab. -3. Create a new *role*. Give it a name and select the *privileges* listed in the [permissions table](#annex-vsphere-permissions). +3. Create a new role. Give it a name and select the privileges listed in the [permissions table](#annex-vsphere-permissions). ![image]({{< baseurl >}}/img/rancher/rancherroles1.png) 4. Go to the **Users and Groups** tab. -5. Create a new *user*. Fill out the form and then click **OK**. Make sure to note the username and password as you will need it when configuring node templates in Rancher. +5. Create a new user. Fill out the form and then click **OK**. Make sure to note the username and password, as you will need it when configuring node templates in Rancher. ![image]({{< baseurl >}}/img/rancher/rancheruser.png) 6. Go to the **Global Permissions** tab. -7. Create a new *Global Permission*. Add the *user* you created earlier and assign it the Role you created earlier. Click **OK**. +7. Create a new Global Permission. Add the user you created earlier and assign it the role you created earlier. Click **OK**. ![image]({{< baseurl >}}/img/rancher/globalpermissionuser.png) @@ -45,41 +45,55 @@ Let's walk through the steps of creating a role with the required privileges and ### Create a vSphere Node Template -In order to create a cluster you will need to create at least one vSphere [node template]({{< baseurl >}}/rancher/v2.x/en/cluster-provisioning/rke-clusters/node-pools/#node-templates) first that specifies how VMs are created in vSphere. +To create a cluster, you need to create at least one vSphere [node template]({{< baseurl >}}/rancher/v2.x/en/cluster-provisioning/rke-clusters/node-pools/#node-templates) that specifies how VMs are created in vSphere. -> **Note:** -> -> Once you create a node template, it will be saved and you will be able to re-use it whenever you create additional vSphere clusters. +>**Note:** +>Once you create a node template, it is saved, and you can re-use it whenever you create additional vSphere clusters. 1. Log in with an admin account to the Rancher UI. -2. In the right-hand account menu, select **Node Templates**. + +2. From the user settings menu, select **Node Templates**. + 3. Click **Add Template** and then click on the **vSphere** icon. -4. Under **[Account Access](#account-access)** enter the vCenter FQDN or IP address and the credentials for the vSphere user account (see [Prerequisites](#prerequisites)). -5. Under **[Instance Options](#instance-options)**, configure the number of vCPUs, memory and disk size for the VMs created by this template. -6. Optionally, enter the URL pointing to a [RancherOS]({{< baseurl >}}/os/v1.x/en/) cloud-config file in the **[Cloud Init](#instance-options)** field. -7. Ensure that the **[OS ISO URL](#instance-options)** contains the URL of a VMware ISO release for RancherOS (`rancheros-vmware.iso`). + +4. Under [Account Access](#account-access) enter the vCenter FQDN or IP address and the credentials for the vSphere user account (see [Prerequisites](#prerequisites)). + +5. Under [Instance Options](#instance-options), configure the number of vCPUs, memory, and disk size for the VMs created by this template. + +6. **Optional:** Enter the URL pointing to a [RancherOS]({{< baseurl >}}/os/v1.x/en/) cloud-config file in the [Cloud Init](#instance-options) field. + +7. Ensure that the [OS ISO URL](#instance-options) contains the URL of a VMware ISO release for RancherOS (`rancheros-vmware.iso`). ![image]({{< baseurl >}}/img/rancher/vsphere-node-template-1.png) -8. Optionally, provide a set of **[Configuration Parameters](#instance-options)** for the VMs. -9. Under **Scheduling** enter the name/path of the **Data Center** to instantiate the VMs in, the name of the **VM Network** to attach to and the name/path of the **Datastore** in which to store the disks. +8. **Optional:** Provide a set of [Configuration Parameters](#instance-options) for the VMs. + +9. Under **Scheduling**, enter the name/path of the **Data Center** to create the VMs in, the name of the **VM Network** to attach to, and the name/path of the **Datastore** to store the disks in. ![image]({{< baseurl >}}/img/rancher/vsphere-node-template-2.png) -10. Optionally, assign labels to the VMs that can be used as a base for scheduling rules in the cluster. -11. Optionally, customize the configuration of the Docker daemon on the VMs that will be created. +10. **Optional:** Assign labels to the VMs that can be used as a base for scheduling rules in the cluster. + +11. **Optional:** Customize the configuration of the Docker daemon on the VMs that will be created. 10. Assign a descriptive **Name** for this template and click **Create**. ___ -### Create a cluster +### Create a vSphere Cluster + +After you've created a template, you can use it stand up the vSphere cluster itself. + +1. From the **Global** view, click **Add Cluster**. -1. From the **Clusters** page, click **Add Cluster**. 2. Choose **vSphere**. + 3. Enter a **Cluster Name**. + 4. {{< step_create-cluster_member-roles >}} + 5. {{< step_create-cluster_cluster-options >}} + 6. {{< step_create-cluster_node-pools >}} ![image]({{< baseurl >}}/img/rancher/vsphere-cluster-create-1.png) @@ -88,20 +102,20 @@ ___ > **Note:** > -> If you have a cluster with DRS enabled, it's recommended that you setup [VM-VM Affinity Rules](https://docs.vmware.com/en/VMware-vSphere/6.5/com.vmware.vsphere.resmgmt.doc/GUID-7297C302-378F-4AF2-9BD6-6EDB1E0A850A.html) to run VMs within the node pools assigned the etcd and control-plane roles on seperate ESXi hosts. This ensures that the failure of a single physical machine does not affect the availability of those planes. +> If you have a cluster with DRS enabled, setting up [VM-VM Affinity Rules](https://docs.vmware.com/en/VMware-vSphere/6.5/com.vmware.vsphere.resmgmt.doc/GUID-7297C302-378F-4AF2-9BD6-6EDB1E0A850A.html) is recommended. These rules allow VMs assigned the etcd and control-plane roles to operate on separate ESXi hosts when they are assigned to different node pools. This practice ensures that the failure of a single physical machine does not affect the availability of those planes. {{< result_create-cluster >}} ## Annex - Node Template Configuration Reference -Below tables describe the configuration options available in the vSphere node template. +The tables below describe the configuration options available in the vSphere node template. ### Account Access | Parameter | Required | Description | |:------------------------:|:--------:|:------------------------------------------------------------:| | vCenter or ESXi Server | * | IP or FQDN of the vCenter or ESXi server used for managing VMs. | -| Port | * | Port to use to connect to the server. Defaults to 443. | +| Port | * | Port to use when connecting to the server. Defaults to `443`. | | Username | * | vCenter/ESXi user to authenticate with the server. | | Password | * | User's password. | @@ -113,9 +127,9 @@ ___ |:------------------------:|:--------:|:------------------------------------------------------------:| | CPUs | * | Number of vCPUS to assign to VMs. | | Memory | * | Amount of memory to assign to VMs. | -| Disk. | * | Size of the disk (in MB) to attach to the VM | -| Cloud Init | | URL of a [RancherOS cloud-config]({{< baseurl >}}/os/v1.x/en/installation/configuration/) file to provision VMs with. This allows further customization of the RancherOS operating system, such as network configuration, DNS servers or system daemons.| -| OS ISO URL | * | URL of a RancherOS vSphere ISO file to boot the VMs from. You can find URLs for specfic versions [here](https://github.com/rancher/os). | +| Disk | * | Size of the disk (in MB) to attach to the VMs. | +| Cloud Init | | URL of a [RancherOS cloud-config]({{< baseurl >}}/os/v1.x/en/installation/configuration/) file to provision VMs with. This file allows further customization of the RancherOS operating system, such as network configuration, DNS servers, or system daemons.| +| OS ISO URL | * | URL of a RancherOS vSphere ISO file to boot the VMs from. You can find URLs for specific versions in the [Rancher OS GitHub Repo](https://github.com/rancher/os). | | Configuration Parameters | | Additional configuration parameters for the VMs. These correspond to the [Advanced Settings](https://kb.vmware.com/s/article/1016098) in the vSphere console. Example use cases include providing RancherOS [guestinfo]({{< baseurl >}}/os/v1.x/en/installation/running-rancheros/cloud/vmware-esxi/#vmware-guestinfo) parameters or enabling disk UUIDs for the VMs (`disk.EnableUUID=TRUE`). | ___ @@ -133,7 +147,7 @@ ___ ___ -## Annex - vSphere permissions +## Annex - vSphere Permissions The following table lists the permissions required for the vSphere user account configured in the node templates: