On-Prem Deployment Instructions (GCP)
This guide will help you and your team install Prequel on GCP infrastructure you control. Prequel deployments rely on a few tools:
- Terraform v1.0.x for provisioning services required by Prequel
- Helm 3.9.4 for installing and upgrading Prequel
- Kubernetes CLI for managing and inspecting the Kubernetes cluster.
Before we get started
- Validate that you have access to the Terraform directory and Helm chart we sent over. If not, please email or Slack
[email protected]
to request access. - Create the dedicated cloud project where you’d like Prequel to run. We typically recommend creating a new cloud project for this, which allows all resources to be fully sandboxed from any other existing infrastructure.
Setting up the infrastructure.
- Take a look through
variables.tf
and fill in the required values. - Perform a Terraform dry-run and double check that everything looks good.
terraform plan
- Terraform the
main.tf
file. This will create all the necessary infrastructure for Prequel to run. Save the output variables, you'll need them later.
terraform apply
- Update your DNS records to point to the
prequel-ingress-ip
returned by the Terraform script. You'll need to create three DNS records.
prequel.your-domain.com # the domain you'll use when hitting the API.
prequel-admin.your-domain.com # the UI that admins on your team will use to manage Prequel.
data-connect.your-domain.com # the domain your customers will use to connect their data warehouse.
Deploying Prequel
- Authenticate to the Kubernetes cluster created in step 5.
- Get a hold of the GitHub App Private Key for your deployment. Ask your Prequel contact to send it over.
- Download and rename the file to
privatekey
. It is important that the file name is correct here. Otherwise, the cluster won't come up properly.
mv {download_path} ~/Downloads/privatekey
- Create a kubernetes secret from it.
kubectl create secret generic github-app-private-key --from-file=~/Downloads/privatekey
- Install the
cert-manager
Helm chart.
helm repo add jetstack https://charts.jetstack.io
helm repo update
helm install cert-manager jetstack/cert-manager \
--namespace cert-manager \
--create-namespace \
--version v1.8.0 \
--set installCRDs=true \
--set ingressShim.defaultIssuerName=letsencrypt-prod \
--set ingressShim.defaultIssuerKind=ClusterIssuer \
--set ingressShim.defaultIssuerGroup=cert-manager.io
- Fill in the required missing values for the Prequel Helm chart (in the
values.yaml
file). - Install the Prequel Helm chart.
helm install prequel datafeed-1.1.24.tgz -f prequel/values.yaml
You're all set!
Notify your Prequel counterpart that the deployment is ready to roll. They'll guide you through next steps: configuring your first source.
Updating Prequel
We'll notify you when a new release is available, and provide you with the release tag. You can then run the following command to update your deployment to the new release.
helm upgrade prequel datafeed-1.1.24.tgz --reuse-values --set image.tag={provided_release_tag}
Updated 4 months ago