$ git clone https://github.com/validatedpatterns-sandbox/telco-hub-pattern.git
$ cd telco-hub-patternDeploying the Telco hub pattern
Prerequisites
An OpenShift Container Platform 4.19 or later cluster with:
cluster administrator privileges.
compact 3-node cluster or standard cluster with at least 3 worker nodes.
more than 500 GB of available storage.
accessible container registry with all required images. It can be a disconnected registry or accessible by internet.
accessible web server with base ISO images or accessible via internet access.
A Git repository to host your configuration files.
Access to a terminal with
ocandgitcommand-line tools installed.
Preparing for deployment
Clone the
telco-hub-patternrepository from GitHub and navigate to the directory:Configure components by editing the file
kustomize/overlays/telco-hub/kustomization.yamlto enable optional components and customizations as needed:# ============================================================================= # Telco Hub pattern - Kustomization Configuration # ============================================================================= apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization resources: # Required: Local Registry # The Telco Hub Reference Design Specifications targets disconnected environments, hence this component is enabled by default. - https://github.com/openshift-kni/telco-reference//telco-hub/configuration/reference-crs/required/registry # Required: Advanced Cluster Management (ACM) # The ACM telco-hub component requires a storage backend to support its observability functionality. # You NEED to configure a storage backend for the hub cluster along with ACM. - https://github.com/openshift-kni/telco-reference//telco-hub/configuration/reference-crs/required/acm # Required: GitOps Operator # The telco-hub component creates the GitOps/ArgoCD instance used to manage spoke clusters. This instance # includes resource tuning for scalability and an ACM plugin for simplified creation of policies. The validated # pattern clustergroup chart does not make these tunings available, so a dedicated instance is created through # the `gitops` content. This dedicated instance has all the necessary tuning already included so the # `reference-crs/required/gitops` component does not need to be included. These `gitops` must be included # prior to the other components. # - https://github.com/openshift-kni/telco-reference//telco-hub/configuration/reference-crs/required/gitops - gitops/ # Required: Topology Aware Lifecycle Manager (TALM) - https://github.com/openshift-kni/telco-reference//telco-hub/configuration/reference-crs/required/talm # Workflow: GitOps ZTP Installation # Enable this telco-hub component if you deploy clusters via GitOps ZTP. # - https://github.com/openshift-kni/telco-reference//telco-hub/configuration/reference-crs/required/gitops/ztp-installation # Optional: Local Storage Operator (LSO) # Enable this telco-hub component if you use LSO to manage storage for ODF. - https://github.com/openshift-kni/telco-reference//telco-hub/configuration/reference-crs/optional/lso # Optional: Open Data Foundation (ODF) # Enable this telco-hub component if you use ODF as your storage backend. - https://github.com/openshift-kni/telco-reference//telco-hub/configuration/reference-crs/optional/odf-internal # Optional: Logging Operator # Enable this telco-hub component if you use the logging operator. # - https://github.com/openshift-kni/telco-reference//telco-hub/configuration/reference-crs/optional/logging # Environment-specific patches (example for disconnected environments) patches: - target: group: operators.coreos.com version: v1alpha1 kind: CatalogSource name: redhat-operators-disconnected patch: |- - op: replace path: /spec/image value: <registry.example.com:8443>/openshift-marketplace/redhat-operators-disconnected:v4.20Commit and push kustomize overlay:
$ git commit ./kustomize/overlays/telco-hub/kustomization.yaml $ git push
Deploying the pattern by using the pattern.sh script
Deploy the pattern (loads secrets if configured):
$ ./pattern.sh make installUpdate the pattern (does not load secrets):
$ ./pattern.sh make operator-upgrade
Verify the deployment by running the health check:
$ ./pattern.sh make argo-healthcheck
