Deploying the Multicloud GitOps Pattern
Table of contents
- Deploying the Multicloud GitOps Pattern
- Prerequisites
- How to deploy
- Deploying the managed cluster applications
- Next Steps
Prerequisites
- An OpenShift cluster ( Go to the OpenShift console). 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.
How to deploy
-
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 git@github.com: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
make show
-
Login to your cluster using oc login or exporting the KUBECONFIG
oc login
or set KUBECONFIG to the path to your
kubeconfig
file. For example:export KUBECONFIG=~/my-ocp-env/hub/auth/kubconfig
-
Apply the changes to your cluster
make install
-
Check the operators have been installed
OpenShift Console Web UI -> Installed Operators
-
Check all applications are synchronised Under the project
multicloud-gitops-hub
click on the URL for thehub
gitopsserver
. The Vault application is not synched.
Deploying the managed cluster applications
Once the management hub has been setup 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.
Multicloud GitOps application demos
As part of this pattern HashiCorp Vault has been installed. Refer to the section on Vault.