Skip to content

Latest commit

 

History

History
86 lines (60 loc) · 2.76 KB

README.md

File metadata and controls

86 lines (60 loc) · 2.76 KB

Full Cosmo Helm

This example demonstrates how to run the entire Cosmo platform on Kubernetes with our official Helm chart. For demonstration purposes, we will use Minikube.

Prerequisites

  • A running Kubernetes cluster, with PV provisioner support + ingress controller
    • Minikube
      • Requires enabling minikube addons enable ingress
  • Helm 3.2.0+ installed locally
  • Kubectl installed locally

Getting started

1. Install the helm chart with the following command:

helm install cosmo oci://ghcr.io/wundergraph/cosmo/helm-charts/cosmo --version 0.8.0

Check Releases for the latest release of the Cosmo Chart.

2. Make the Ingress controller accessible from your local machine.

The following steps depend on your operating system:

Linux

Minikube will automatically expose the ingress controller on your local machine. You can get the IP with minikube ip. Now, add the following entries to your /etc/hosts file and replace the IP with the IP you get from the previous step.

192.168.49.2 studio.wundergraph.local
192.168.49.2 controlplane.wundergraph.local
192.168.49.2 router.wundergraph.local
192.168.49.2 keycloak.wundergraph.local
192.168.49.2 otelcollector.wundergraph.local
192.168.49.2 graphqlmetrics.wundergraph.local
192.168.49.2 cdn.wundergraph.local
macOS

Minikube needs to set up a tunnel to expose the ingress controller in your local machine. Add the following entries to /etc/hosts:

127.0.0.1 studio.wundergraph.local
127.0.0.1 controlplane.wundergraph.local
127.0.0.1 router.wundergraph.local
127.0.0.1 keycloak.wundergraph.local
127.0.0.1 otelcollector.wundergraph.local
127.0.0.1 graphqlmetrics.wundergraph.local
127.0.0.1 cdn.wundergraph.local

Then start minikube tunnel and leave it running. It might ask for your root password in order to open the tunnel on privileged ports.

3. Create Federated Graph Demo and Deploy the Router

The following command will create a federated graph consisting of multiple subgraphs and deploy the router to the minikube cluster.

./create_demo.sh

Finally 🚀, navigate to the Studio Playground and query the router.

Login with the default credentials:

Username: [email protected]
Password: wunder@123

4. Clean up

After you are done, you can clean up the demo by running:

helm uninstall cosmo

Caution

Volumes might not be automatically removed, so you may need to manually remove them with kubectl delete pvc -l app.kubernetes.io/instance=cosmo