Official Google Cloud Tutorial 'Run JanusGraph on GKE with Bigtable' broken for me. Policy mismatch

After following the Official Google Cloud tutorial here:

https://cloud.google.com/bigtable/docs/running-janusgraph-with-bigtable
I get to the step 9 ‘Deploy JanusGraph Helm’

helm upgrade --install
–wait
–timeout 600s
${HELM_RELEASE_NAME}
./${HELM_REPO}
-f values.yaml

With the following error:
Error: unable to build kubernetes objects from release manifest: unable to recognize “”: no matches for kind “PodDisruptionBudget” in version “policy/v1beta1”

I read this:

https://stackoverflow.com/questions/74793751/database-installation-in-kubernete-using-helm-chart-got-an-error-no-matches-for

but could not find the poddisruptionbudget.yaml file anywhere in the cloud shell environment.
Nor was I able to kubectl apply -f mypdb.yaml to specify the correct policy/v1 instead of v1beta as described here:

https://kubernetes.io/docs/tasks/run-application/configure-pdb/

Where is the policy/v1beta being specified in the cloud shell?

Hi @gautamaltman

Welcome to Google Cloud Community!

I think the issue occurs due to chart dependencies of bigtable-janusgraph ver 0.5.3 on elasticsearch ver 7.6.2 that uses PDB api:Version policy/v1beta1.

You may use the new version available on the github that uses bigtable-janusgraph ver 0.6.3 and elasticsearch ver 7.17.3 that uses PDB apiVersion: policy/v1. You can do the following steps on deploying the janusgraph:

  1. Clone the repo using command git clone https://github.com/GoogleCloudPlatform/bigtable-janusgraph-helm.git

  2. Go to the directory using command cd bigtable-janusgraph-helm.

  3. Update the helm repository using command helm dep update

  4. Exit on the directory using command cd ..

  5. Export variable details on your CLI

    • export HELM_RELEASE_NAME=janusgraph-bigtable-elastic
    • export ELASTICSEARCH_CLUSTER_NAME=${HELM_RELEASE_NAME}-elasticsearch
    • export BIGTABLE_JANUSGRAPH_TABLE=janusgraph-table
  6. Use the same yaml file on the documentation but replacing the image tag version to 0.6.3

    •   image:
          repository: docker.io/janusgraph/janusgraph
          tag: 0.6.3
          pullPolicy: IfNotPresent
      
  7. Then use the following command to helm install the janusgraph.

    •   helm upgrade --install \
        --wait \
        --timeout 600s \
        bigtable-janusgraph-helm \
        ./bigtable-janusgraph-helm \
        -f values.yaml
      

You can add --dry-run --debug on the helm command to see verbose logs regarding the installation of the janusgraph.

I hope this information is helpful.

If you need further assistance, you can always file a ticket on our support team.