- Deploying the Multicloud GitOps Pattern
- How to deploy
- Deploying the managed cluster applications
- Next Steps
- An OpenShift cluster (Go to the OpenShift console). Cluster must have a dynamic StorageClass to provision PersistentVolumes. See also sizing your cluster.
- (Optional) A second OpenShift cluster for multicloud demonstration or testing
- A GitHub account (and, optionally, a token for it with repositories permissions, to read from and write to your forks)
- The helm binary, see here
The use of this blueprint depends on having at least one running Red Hat OpenShift cluster. It is desirable to have a cluster for deploying the GitOps management hub assets and a separate cluster(s) for the managed cluster(s).
If you do not have a running Red Hat OpenShift cluster, you can start one on a public or private cloud by using Red Hat’s cloud service.
- Install the installation tooling dependencies. You will need:
make- the well-known software build tool
sh- a POSIX-compatible shell
sed- the “stream editor”, commonly used in shell scripting
oc- the OpenShift client
git- The well known version control utility
helm- The Helm binary, see here
ansible- The well-known automation tool
kubernetes.corecollection for ansible
Fork the multicloud-gitops repo on GitHub. It is necessary to fork because your fork will be updated as part of the GitOps and DevOps processes.
Clone the forked copy of this repository.
git clone firstname.lastname@example.org:your-username/multicloud-gitops.git
Create a local copy of the Helm values file that can safely include credentials
DO NOT COMMIT THIS FILE
You do not want to push personal credentials to GitHub.
cp values-secret.yaml.template ~/values-secret.yaml vi ~/values-secret.yaml
Customize the deployment for your cluster
git checkout -b my-branch vi values-global.yaml git add values-global.yaml git commit values-global.yaml git push origin my-branch
You can deploy the pattern using the validated pattern operator. If you do use the operator then skip to Validating the Environment below.
Preview the changes
Login to your cluster using oc login or exporting the KUBECONFIG
or set KUBECONFIG to the path to your
kubeconfigfile. For example:
Apply the changes to your cluster
Check the operators have been installed
OpenShift Console Web UI -> Installed Operators
Check all applications are synchronised Under the project
multicloud-gitops-hubclick on the URL for the
server. The Vault application is not synched.
Once the management hub has been set up correctly and confirmed to be working, it is time to attach one or more managed clusters to the architecture (see diagrams below).
For instructions on deploying the edge, please read the following document.
As part of this pattern HashiCorp Vault has been installed. Refer to the section on Vault.