Skip to content

FAQ

Does NebulaGraph Operator support the v1.x version of NebulaGraph?

No, because the v1.x version of NebulaGraph does not support DNS, and NebulaGraph Operator requires the use of DNS.

Is cluster stability guaranteed if using local storage?

There is no guarantee. Using local storage means that the Pod is bound to a specific node, and NebulaGraph Operator does not currently support failover in the event of a failure of the bound node.

How to ensure the stability of a cluster when scaling the cluster?

It is suggested to back up data in advance so that you can roll back data in case of failure.

Is the replica in the Operator docs the same as the replica in the NebulaGraph core docs?

They are different concepts. A replica in the Operator docs indicates a pod replica in K8s, while a replica in the core docs is a replica of a NebulaGraph storage partition.

How to view the logs of each service in the NebulaGraph cluster?

The logs for the NebulaGraph cluster are not gathered in the K8s cluster, which also means that they cannot be retrieved through the kubectl logs command. To obtain the logs of each cluster service, you need to access the container and view the log files that are stored inside. This is the only option available for users to get the service logs individually in the NebulaGraph cluster.

Steps to view the logs of each service in the NebulaGraph cluster:

# To view the name of the pod where the container you want to access is located. 
# Replace <cluster-name> with the name of the cluster.
kubectl get pods -l app.kubernetes.io/cluster=<cluster-name>

# To access the container within the pod, such as the nebula-graphd-0 container.
kubectl exec -it nebula-graphd-0 -- /bin/bash

# To go to /usr/local/nebula/logs directory to view the logs.
cd /usr/local/nebula/logs

How to resolve the host not found:nebula-<metad|storaged|graphd>-0.nebula.<metad|storaged|graphd>-headless.default.svc.cluster.local error?

This error is generally caused by a DNS resolution failure, and you need to check whether the cluster domain has been modified. If the cluster domain has been modified, you need to modify the kubernetesClusterDomain field in the NebulaGraph Operator configuration file accordingly. The steps for modifying the Operator configuration file are as follows:

  1. View the Operator configuration file.

    [abby@master ~]$ helm show values nebula-operator/nebula-operator   
    image:
      nebulaOperator:
        image: vesoft/nebula-operator:v1.6.2
        imagePullPolicy: Always
      kubeRBACProxy:
        image: bitnami/kube-rbac-proxy:0.14.2
        imagePullPolicy: Always
      kubeScheduler:
        image: registry.k8s.io/kube-scheduler:v1.24.11
        imagePullPolicy: Always
    
    imagePullSecrets: []
    kubernetesClusterDomain: ""  # The cluster domain name, and the default is cluster.local.
    
  2. Modify the value of the kubernetesClusterDomain field to the updated cluster domain name.

    helm upgrade nebula-operator nebula-operator/nebula-operator --namespace=<nebula-operator-system> --version=1.6.2 --set kubernetesClusterDomain=<cluster-domain>
    
    is the namespace where Operator is located and is the updated domain name.


Last update: July 26, 2023