Unable to fetch data form couchbase cluster deployed in kubernetes

I am getting the following error while trying to retrieve documents from Couchbase instance deployed in kubernetes having 4 nodes running in it. All servers are enabled for handling data service, Index service, search service and analytics service.

"message": "A request has been made for a service that is not configured or supported by the cluster. Please check the cluster and enable or add a new node with the requested service: Data."

Couchbase.Core.Services.ServiceNotSupportedException: A request has been made for a service that is not configured or supported by the cluster. Please check the cluster and enable or add a new node with the requested service: Data.

@Lal_John that’s very interesting, we run in Kubernetes without issue, though we’re still using the 2.x SDK. A few questions:

  1. Is your app also within the K8S cluster, or are you accessing externally?
  2. What is your bootstrap/connectionstring approach? (Note: We use DNS SRV from the headless service created by the autonomous operator)
  3. Have you tried adding cluster.WaitUntilReadyAsync() to your bootstrap?

Thanks for your feedback

  1. client application is also working on K8S cluster.
  2. We use DNS SRV too
  3. I haven’t tried cluster.WaitUntilReadyAsync(). Will try with that

@Lal_John -

I think we need to get some SDK logs and investigate what is happening internally. What is the version number of the SDK you are using?

-Jeff

1 Like

Currently using Couchbase .net client 2.7.20

This is the instance configuration.


Source: couchbase-operator/templates/couchbase-cluster.yaml

apiVersion: “couchbase.com/v2
kind: “CouchbaseCluster”
metadata:
name: db-couchbase
spec:
image: couchbase/server:6.5.0
cluster:
analyticsServiceMemoryQuota: 1Gi
autoCompaction:
databaseFragmentationThreshold:
percent: 30
size: 1Gi
parallelCompaction: false
timeWindow: {}
tombstonePurgeInterval: 72h
viewFragmentationThreshold:
percent: 30
size: 1Gi
autoFailoverMaxCount: 3
autoFailoverOnDataDiskIssues: true
autoFailoverOnDataDiskIssuesTimePeriod: 120s
autoFailoverTimeout: 120s
dataServiceMemoryQuota: 20Gi
eventingServiceMemoryQuota: 1Gi
indexServiceMemoryQuota: 15Gi
indexStorageSetting: memory_optimized
searchServiceMemoryQuota: 2Gi
logging:
logRetentionCount: 20
logRetentionTime: 604800s
buckets:
managed: false
selector:
matchLabels:
cluster:db-couchbase
servers:
- name: default
pod:
spec:
containers: null
resources:
limits:
cpu: 8000m
memory: 60Gi
requests:
cpu: 4000m
memory: 50Gi
serverGroups:
services:
- data
- index
- query
- search
- analytics
- eventing
size: 4
volumeMounts:
data: couchbase
default: couchbase
networking:
exposeAdminConsole: true
adminConsoleServices: [data]
exposedFeatures:
- client
- xdcr
adminConsoleServiceType: NodePort
exposedFeatureServiceType: NodePort
security:
adminSecret: prod-db-couchbase
rbac:
managed: true
selector:
matchLabels:
cluster:db-couchbase
xdcr:
managed: false
backup:
managed: false
image: couchbase/operator-backup:6.5.0
serviceAccountName: backup-db-couchbase
monitoring:
prometheus:
enabled: false
image: couchbase/exporter:1.0.1
securityContext:
fsGroup: 1000
volumeClaimTemplates:
- metadata:
name: couchbase
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 100Gi
storageClassName: rbd-fast
logRetentionTime: 604800s
logRetentionCount: 20