System GKE Autopilot Template - Rafay Product Documentation

What is it?

The GKE Autopilot Template is a pre built system template designed for managing Google Kubernetes Engine (GKE) Autopilot cluster lifecycle management, covering both day-0 and day-2 operations. This template is part of the Template Catalog under the Kubernetes Lifecycle Management section and enables organizations to create self-service workflows for end users without requiring extensive configuration knowledge.

This template provides comprehensive GKE Autopilot management capabilities and is fully supported with regular updates and new features added over time. With these templates, administrators can follow two simple steps to provide a self-service experience for their end users:

  1. Configure and customize the system template (provide credentials, specify defaults, and determine what values end users can/cannot override) in a project owned by the Platform team
  2. Publish by sharing the template with end user projects

Prerequisites

Before consuming the GKE Autopilot Template, ensure you have the following prerequisites in place:

1. Healthy GitOps Agent

2. Valid Rafay API Key

3. Google Cloud Service Account Credentials

Configuration

The GKE Autopilot System Template includes the following configuration sections:

1. Agent Configuration

2. Backend Store Type Configuration

3. Rafay-Specific Configuration

4. Google Cloud GKE Autopilot Configuration

5. Credentials

Workflow Overview

The GKE Autopilot Template follows a centralized configuration model where platform administrators first configure and customize the template in a central project, then share it with end-user projects for consumption.


Step-by-Step Guide

WARNING

This guide provides general guidance and example configurations only. It may not meet your specific environment requirements or cover all possible configurations. Tailor this configuration steps to your needs.

Step 1: Locate and Initialize the GKE Autopilot Template

  1. Navigate to the Template Catalog from the home page
  2. Under Kubernetes Lifecycle Management, locate the GKE Autopilot card
  3. Click the Get Started button
  4. Provide the following details:
  5. Template name for your organization
  6. Version identifier
  7. Central project where you'll configure the template before sharing

Step 2: Configure the Template

Once the GKE Autopilot template is shared to your central project, configure the essential components:

2.1 Add GitOps Agent

2.2 Configure Backend Store Type

Configure the backend store type for state management. This setting is empty by default and supports the following state store configurations:

Supported State Store Types:

  1. System (Recommended for quick deployment)
    • State is managed and stored in Rafay's state store
    • No need to bring your own state store
    • Ideal for getting started quickly without external infrastructure
  2. S3
    • Use Amazon S3 as the state store
    • Provide access credentials (Access ID and Secret) to interact with the S3 endpoint
    • Alternatively, use role-based ARN assuming the agent driving the workflow has a role that grants access to the S3 service
  3. TFC (Terraform Cloud)
    • Use Terraform Cloud (TFC) as the state store
    • Provide TFC-related configuration including organization, workspace, and authentication details

Quick Start

If you're deploying for the first time or testing, select system backend store type. This uses Rafay's managed state store and requires no additional configuration, allowing you to start deploying immediately.

2.3 Set Up Configuration Context

2.4 Lock Down Credentials

This screenshot shows one variable locking, but you can apply the same approach to other credential variables. Set them as non-overrideable so users cannot see or modify them so that credentials are handled implicitly for end users.

Step 3: Customize Input Variables

Platform administrators can customize which variables to expose to end users:

3.1 Set Default Values

Step 4: Configure Schedules (Optional)

Set up automated schedules for cluster lifecycle management:

Step 5: Share with End User Projects

Once configuration is complete, save it as an active version and share the template with end-user projects:

  1. Navigate to the template sharing settings
  2. Select target end-user projects
  3. Publish the template for consumption

Step 6: Enable Approval Hooks (Optional)

When you share the template with a central project, approval hooks are disabled by default. If you want to review the plan before applying infrastructure changes, you can enable approval hooks.

There are two types of approval hooks available:

Configuration Flexibility

This workflow provides flexibility for different organizational needs:

The recommended approach is the fully managed configuration, which reduces the burden on end users while maintaining security and compliance standards.

End User Flow

Once the platform administrator shares the GKE Autopilot template to end-user projects, end users can easily deploy GKE Autopilot clusters with minimal configuration effort.

Step 1: Access the Shared Template

  1. Navigate to your project where the GKE Autopilot template has been shared
  2. Locate the GKE Autopilot Template in your available templates
  3. Click Launch to begin the deployment process

Step 2: Configure Template Inputs

Based on the configuration exposed by the platform administrator, provide the necessary inputs:

2.1 Required Configuration

2.2 Optional Configuration

2.3 State Store Configuration (if exposed by platform admin)

Configure the state store for managing deployment state:

Step 3: Deploy or Save Configuration

After providing all required inputs, you have two options:

Option 1: Save and Continue Later

Option 2: Save and Deploy

Step 4: Monitor Deployment Progress

Track the deployment progress through the status indicators.

Step 5: Access Cluster Resources

Once the deployment status shows Success, you will receive the following output configuration:

5.1 Cluster Access Information

5.2 Resource Information

Step 6: Verify Cluster Access

After successful deployment, download the ZTKA KUBECONFIG from Infrastructure > Clusters to interact with the cluster. You can now deploy workloads on this successfully provisioned cluster.

Benefits for End Users