Skip to content

Overview

In this multi-part exercise, you will use System Sync to test two-way synchronization between the system and a Git repository for AKS clusters. You will create an AKS cluster from the controller UI and see the corresponding manifest file syncornized to your Git repository. You will then update the cluster manifest from Git to see the changes applied on the cluster and synchronized in the controller.

System Sync enables two-way or bidirectional synchronization to maintain the configuration in the system (system database) and Git repository. Any configuration changes performed in the Git repository get reflected in the system, and vice-versa is supported. To achieve this bidirectional sync, external and internal triggers are required. External triggers (Pipeline Triggers) notify whenever resources are modified in a Git repository, and internal triggers notify whenever resources are modified in an internal artifact store.

flowchart LR
  subgraph Azure[Azure]
    direction TB
    Imported[Existing Cluster]
    ClickOps[New Cluster]
    end
Imported[Existing Cluster]-->|Import & Takeover|Rafay
ClickOps[New Cluster]-->|ClickOps|Rafay
Rafay<--GitOps-->GitHub

What Will You Do

Part What will you do?
1 In this part, you will Configure and Setup an Environment in order to test System Sync with AKS clusters
2 In this part, you will Create a New AKS Cluster and test bidirectional syncronization with a Git repository
3 In this part, you will Deprovision the cluster

Assumptions

This exercise assumes that you have access to the following:

  • An Org with Org Admin privileges
  • A provisioned or imported cluster to run the GitOps Agent
  • An Azure Cloud Credential
  • An account on GitHub for GitOps operations