Skip to main content

Create and Manage GCP GKE Cluster

Palette supports creating and managing Kubernetes clusters using Google Kubernetes Engine (GKE). This section guides you to create a Kubernetes cluster that is deployed to GKE and that Palette manages.

Limitations

  • Autoscaling is not supported for GKE clusters.

  • GPU machine types cannot be used to configure node pools.

Prerequisites

Ensure the following requirements are met before you attempt to deploy a cluster to GCP.

  • Access to a GCP cloud account.

  • You have added a GCP account in Palette. Review Register and Manage GCP Accounts for guidance.

  • An infrastructure cluster profile for GKE. Review Create an Infrastructure Profile for guidance.

  • Palette creates compute, network, and storage resources while provisioning Kubernetes clusters. Ensure there is sufficient capacity in the preferred GCP region to create the following resources:

    • Virtual Private Cloud (VPC) Network
    • Static External IP Address
    • Network Interfaces
    • Cloud NAT
    • Cloud Load Balancing
    • Persistent Disks
    • Cloud Router
    warning

    For static network deployments, you must have port 6443 open between Palette and the workload cluster. Refer to the Network Ports documentation for detailed network architecture diagrams and to learn more about the ports used for communication.

Deploy a GKE Cluster

  1. Log in to Palette.

  2. Ensure you are in the correct project scope.

  3. From the left Main Menu select Clusters, and click Add New Cluster.

  4. In Public Clouds, under Managed Kubernetes, select GCP GKE.

  5. In the bottom-right corner, click Start GCP GKE Configuration.

  6. Fill out the following basic information and click Next.

    FieldDescription
    Cluster NameA custom name for the cluster.
    DescriptionUse the description to provide context about the cluster.
    TagsAssign any desired cluster tags. Tags on a cluster are propagated to the Virtual Machines (VMs) deployed to the computing environments. Example: region:us-central1 or zone:us-central1-a.
    Cloud AccountIf you already added your GCP account in Palette, select it from the drop-down Menu. Otherwise, click Add New Account and add your GCP account information.
  7. Choose between deploying your cluster using individual cluster profiles or a single cluster template.

    1. On the Cluster setup type window, choose Cluster Profiles > Add Cluster Profile.

    2. Select the appropriate full or infrastructure cluster profile and Confirm your selection.

    3. Review the layers of your cluster profile. Use the drop-down menus to select the appropriate cluster profile version, add necessary add-on profiles, and make changes to YAML configuration files as needed. When finished, select Next.

      info
      • Cluster profile versions linked to cluster templates cannot be used in the cluster profile workflow.
      • For ease of reuse and to persist changes across clusters using the same cluster profile, we recommend creating a new version of your cluster profile rather than making inline changes.
  8. The Profile variables configuration window opens if your cluster profile is configured to use cluster profile variables. Fill in the appropriate values, and select Next.

  9. Fill out the following parameters, and click Next when you are done.

    ParameterDescription
    ProjectThe project to which the cluster belongs.
    RegionChoose the desired GCP region in which to deploy the cluster.
  10. The Node configuration page is where you can specify the availability zones (AZ), instance types, disk size, and the number of nodes. Configure the worker node pool. The minimum number of CPUs and amount of memory depend on your cluster profile, but in general you need at least 4 CPUs and 4 GB of memory both in the control plane pool and across all worker pools.

    info

    You can add new worker pools to customize specific worker nodes to run specialized workloads. For example, the default worker pool may be configured with the c2.standard-4 instance types for general-purpose workloads. You can configure another worker pool with instance type g2-standard-4 to run supported machine types.

  11. An optional taint label can be applied to a node pool during the cluster creation. You can edit the taint label on existing clusters. Review the Node Pool management page to learn more. Toggle the Taint button to create a label.

  12. Enable or disable node pool taints. If tainting is enabled, then you need to provide values for the following parameters.

    ParameterDescription
    KeyCustom key for the taint.
    ValueCustom value for the taint key.
    EffectChoose the preferred pod scheduling effect from the drop-down Menu. Review the Effect Table below for more details.

    Effect Table

    ParameterDescription
    NoScheduleA pod that cannot tolerate the node taint and should not be scheduled to the node.
    PreferNoScheduleThe system will avoid placing a non-tolerant pod to the tainted node but is not guaranteed.
    NoExecuteNew pods that do not tolerate the taint will not be scheduled on the node, and existing pods on the node, if any, will be evicted if they do not tolerate the taint.
  13. Click Next after configuring the node pool.

  14. On the Cluster Settings page, configure additional options as needed. If you are deploying your cluster using cluster templates, a Cluster Timezone is required.

    Left Menu ItemAdditional Information
    Cluster TimezoneSpecify the time zone where your cluster is being deployed. The time zone is used in maintenance policies to determine when updates are rolled out to clusters deployed with cluster templates.
    Manage machinesSet an OS patching schedule and specify node behavior when creating your cluster, including upgrading your nodes to use the latest OS patch version and allowing reboots.
    Schedule scansEnable any scan options you want Palette to perform and select a scan schedule. Palette supports Kubernetes configuration security, penetration testing, and conformance testing. Refer to Compliance Scan for details on each scan type.
    Schedule backupsSchedule backups for your entire cluster or etcd. Refer to Backup and Restore for more information.
    RBACMap a set of users or groups to a Kubernetes RBAC role. This is required when custom OIDC is configured. Refer to the following guides for more information:
    - Create Role Bindings
    - Palette eXtended Kubernetes (PXK)
  15. Select Validate to review your cluster configurations and settings.

  16. If no changes are needed, select Finish Configuration to deploy your cluster.

To monitor the status of your cluster deployment, from the left main menu, select Clusters and choose your cluster. The cluster Overview tab displays the status and health of your cluster, as well as deployment details. Use the Events tab to monitor the deployment in real time. Provisioning may take several minutes.

Validate

You can validate that your cluster is up and available by reviewing the cluster details page.

  1. Log in to Palette.

  2. Navigate to the left Main Menu and click Clusters.

  3. The Clusters page lists the available clusters that Palette manages. Select your cluster to view its details page.

  4. From the cluster details page, verify the Cluster Status field displays Running.