Understanding Satellite Config
With Satellite Config, you create a configuration to specify what Kubernetes resources you want to deploy to a group of Red Hat OpenShift on IBM Cloud clusters that run in your Satellite location or in IBM Cloud.
You can create either GitOps-based configurations or Direct Upload configurations.
Understanding GitOps-based configurations
Store your Kubernetes resource definitions in a Git repository. Clusters automatically pull changes directly from your repository and Git references. Your resources stay in your source repository and automatically deploy when the referenced
source changes. To use this method, select the GitOps template when you create your configuration. If you are using GitOps-based configuration for the first time and want to see how this flow works, you can select the GitOps - Sample application template, which guides you to set up and deploy a sample application from the IBM Git repository to your clusters.
A GitOps-based configuration involves the follow high-level steps.
- Create a Satellite configuration and specify the repository, Git reference type, Git reference name, and path.
- Create a subscription to associate the source repository of resource files with one or more cluster groups.
- The resource files in the source repository is automatically deployed to the clusters that belong to the selected cluster group.
Understanding Direct Upload configurations
Store your Kubernetes resource definitions in Satellite Config by either manually uploading your YAML files or pushing YAML files from your CI/CD process. Manage changes directly through Satellite Config GUI, CLI, or from your CI/CD process. To use this method, select the Direct upload template when you create your configuration.
A Direct Upload configuration involves the follow high-level steps.
- Create a Satellite configuration and create versions by uploading Kubernetes resource files. Each Kubernetes resource file that you upload represents a version within the configuration.
- Create a subscription to associate a version with one or more cluster groups.
- The version of the Kubernetes resource file that is specified in the subscription is automatically deployed to the clusters that belong to the selected cluster group.
Key concepts for Satellite Config
Review the following key concepts that are used when you create a Satellite configuration.
Term | Description |
---|---|
Configuration | With Satellite configuration, you can upload or create Kubernetes resource YAML file versions to deploy to a group of clusters. The version that you upload is not applied to your cluster until you add a subscription to your configuration. |
Subscription | A Satellite subscription specifies which Kubernetes resource is deployed to one or more cluster groups. After you create the subscription, Satellite Config automatically downloads the Kubernetes resource that you specified and starts applying
it across all clusters that belong to the cluster group. This process takes a few minutes to complete. The clusters in your cluster group can exist in your Satellite or in IBM Cloud. To include clusters that you run in IBM Cloud, you must register the cluster with the Satellite Config component and install the Satellite Config agent on this cluster. |
Version | A version represents a Kubernetes resource YAML file that you uploaded or manually created for a Satellite configuration. You can include any Kubernetes resource in your version and upload as many versions to a configuration as you like. (This concept applies to Direct Upload configurations only.) |
Cluster groups | A cluster group specifies a set of clusters that are registered with the Satellite Config component and that are included in a Satellite configuration. Clusters that run in your location are automatically registered and can be added to a cluster group. Clusters that run in IBM Cloud must be manually registered with the Satellite Config component before you can add them to a cluster group. |