Issue while deploying multisite on k8s gerrit

89 views
Skip to first unread message

Aankhi Talukdar

unread,
Jun 4, 2024, 7:35:08 AM6/4/24
to Repo and Gerrit Discussion
Hi Team,

We are trying to deploy multi-site on k8s-gerrit. At present, we are trying to deploy it in minikube and following the document: https://gerrit-review.googlesource.com/c/k8s-gerrit/+/409999/6/Documentation/operator.md#738. The gerrit operator is deployed successfully. The kafka and zookeeper deployment is also done. While deploying the gerrit cluster custom resource (kubectl apply -f Documentation/examples/gerritcluster-3-nodes-pr-kafka-multisite.yaml), the pods and services are not getting popped up in the gerrit namespace. The gerrit cluster custom resource is just getting created.

gerrit_deployment.PNG
gerritclusterCR.PNG

Upon digging in the operator logs, getting error as:

11:12:08.024 [ERROR] io.javaoperatorsdk.operator.processing.event.EventProcessor:356 [PID:1] - Error during event processing ExecutionScope{ resource id: ResourceID{name='gerrit', namespace='gerrit'}, version: 96075}
java.lang.NullPointerException: Cannot invoke "com.google.gerrit.k8s.operator.api.model.shared.SharedStorage.getExternalPVC()" because the return value of "com.google.gerrit.k8s.operator.api.model.shared.GerritStorageConfig.getSharedStorage()" is null
        at com.google.gerrit.k8s.operator.cluster.dependent.SharedPVCCondition.isMet(SharedPVCCondition.java:30) ~[operator-v0.1-688-gfdb333c6.jar:v0.1-688-gfdb333c6]
        at com.google.gerrit.k8s.operator.cluster.dependent.SharedPVCCondition.isMet(SharedPVCCondition.java:23) ~[operator-v0.1-688-gfdb333c6.jar:v0.1-688-gfdb333c6]
        at io.javaoperatorsdk.operator.processing.dependent.workflow.AbstractWorkflowExecutor.lambda$isConditionMet$1(AbstractWorkflowExecutor.java:121) ~[operator-framework-core-4.8.3.jar:?]
        at java.base/java.util.Optional.map(Optional.java:260) ~[?:?]
        at io.javaoperatorsdk.operator.processing.dependent.workflow.AbstractWorkflowExecutor.isConditionMet(AbstractWorkflowExecutor.java:121) ~[operator-framework-core-4.8.3.jar:?]
        at io.javaoperatorsdk.operator.processing.dependent.workflow.WorkflowReconcileExecutor.handleReconcile(WorkflowReconcileExecutor.java:71) ~[operator-framework-core-4.8.3.jar:?]
        at io.javaoperatorsdk.operator.processing.dependent.workflow.WorkflowReconcileExecutor.reconcile(WorkflowReconcileExecutor.java:42) ~[operator-framework-core-4.8.3.jar:?]
        at io.javaoperatorsdk.operator.processing.dependent.workflow.DefaultWorkflow.reconcile(DefaultWorkflow.java:93) ~[operator-framework-core-4.8.3.jar:?]
        at io.javaoperatorsdk.operator.processing.Controller$1.execute(Controller.java:148) ~[operator-framework-core-4.8.3.jar:?]
        at io.javaoperatorsdk.operator.processing.Controller$1.execute(Controller.java:111) ~[operator-framework-core-4.8.3.jar:?]
        at io.javaoperatorsdk.operator.api.monitoring.Metrics.timeControllerExecution(Metrics.java:219) ~[operator-framework-core-4.8.3.jar:?]
        at io.javaoperatorsdk.operator.processing.Controller.reconcile(Controller.java:110) ~[operator-framework-core-4.8.3.jar:?]
        at io.javaoperatorsdk.operator.processing.event.ReconciliationDispatcher.reconcileExecution(ReconciliationDispatcher.java:140) ~[operator-framework-core-4.8.3.jar:?]
        at io.javaoperatorsdk.operator.processing.event.ReconciliationDispatcher.handleReconcile(ReconciliationDispatcher.java:121) ~[operator-framework-core-4.8.3.jar:?]
        at io.javaoperatorsdk.operator.processing.event.ReconciliationDispatcher.handleDispatch(ReconciliationDispatcher.java:91) ~[operator-framework-core-4.8.3.jar:?]
        at io.javaoperatorsdk.operator.processing.event.ReconciliationDispatcher.handleExecution(ReconciliationDispatcher.java:64) ~[operator-framework-core-4.8.3.jar:?]
        at io.javaoperatorsdk.operator.processing.event.EventProcessor$ReconcilerExecutor.run(EventProcessor.java:452) [operator-framework-core-4.8.3.jar:?]
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) [?:?]
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) [?:?]
        at java.base/java.lang.Thread.run(Thread.java:840) [?:?]

Can someone help us with this issue?

Aankhi Talukdar

unread,
Jun 4, 2024, 3:44:42 PM6/4/24
to Repo and Gerrit Discussion
Hi Team,

An update on the above issue would be greatly appreciated.

Thanks
Aankhi

--
--
To unsubscribe, email repo-discuss...@googlegroups.com
More info at http://groups.google.com/group/repo-discuss?hl=en

---
You received this message because you are subscribed to the Google Groups "Repo and Gerrit Discussion" group.
To unsubscribe from this group and stop receiving emails from it, send an email to repo-discuss...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/repo-discuss/acdb3feb-5c99-4f4f-adf6-f85b2a9afe7dn%40googlegroups.com.

Nuno Costa

unread,
Jun 4, 2024, 4:52:02 PM6/4/24
to Repo and Gerrit Discussion
I’m not very experienced with K8s but just looking to the logs, it seems related with volume claim not being declared/configured?

Being minikube, does it have the volume claims concept available to be used?

Aankhi Talukdar

unread,
Jun 5, 2024, 12:20:50 AM6/5/24
to Repo and Gerrit Discussion
On Wednesday, June 5, 2024 at 2:22:02 AM UTC+5:30 Nuno Costa wrote:
I’m not very experienced with K8s but just looking to the logs, it seems related with volume claim not being declared/configured?

Being minikube, does it have the volume claims concept available to be used?

Hi Nuno,

It is not just Minikube that we have tried. We did try it on the x86 AWS instance as well where we are getting the same error.
So, I believe that this should not be a minikube-specific issue related to volumes.

Thanks
Aankhi 
Reply all
Reply to author
Forward
0 new messages