Connect to nextcloud-exporter

I was trying to enable the nextcloud-exporter within the nextcloud installation. I installed nextcloud with the helm chart by setting enabled: true in the Prometheus/Metrics section

`
Name: nextcloud-metrics-798cc68db-cbfw5
Namespace: nextcloud
Priority: 0
Service Account: default
Node: nodepool-node-2396bb/162.19.52.108
Start Time: Tue, 17 Dec 2024 10:45:19 +0100
Labels: app.kubernetes.io/component=metrics
app.kubernetes.io/instance=nextcloud
app.kubernetes.io/name=nextcloud
pod-template-hash=798cc68db
Annotations: cni.projectcalico.org/containerID: 1c675ff633e8cb532d27e61547c7a4236f07faea277ee18b267b6e6ac0a3f355
cni.projectcalico.org/podIP: 10.2.3.186/32
cni.projectcalico.org/podIPs: 10.2.3.186/32
kubernetes.io/limit-ranger:
LimitRanger plugin set: cpu, memory request for container metrics-exporter; cpu, memory limit for container metrics-exporter
Status: Running
IP: 123.123.123
IPs:
IP: 123.123.123
Controlled By: ReplicaSet/nextcloud-metrics-798cc68db
Containers:
metrics-exporter:
Container ID: containerd://42e1c8c1190566e76cd7e8dcda489333b5512add81255cc0c762dab704b72d7a
Image: xperimental/nextcloud-exporter:0.6.2
Image ID: docker.io/xperimental/nextcloud-exporter@sha256:355c8d0d370d8b45551146764613ae078ca99f64d11453339f3d57c295b4b9a4
Port: 9205/TCP
Host Port: 0/TCP
State: Running
Started: Tue, 17 Dec 2024 10:45:26 +0100
Ready: True
Restart Count: 0
Limits:
cpu: 50m
memory: 50Mi
Requests:
cpu: 50m
memory: 50Mi
Environment:
NEXTCLOUD_USERNAME: <set to the key ‘nextcloud-username’ in secret ‘nextcloud-admin’> Optional: false
NEXTCLOUD_PASSWORD: <set to the key ‘nextcloud-password’ in secret ‘nextcloud-admin’> Optional: false
NEXTCLOUD_SERVER: http://nextcloud.nextcloud.svc.cluster.local:8080
NEXTCLOUD_TIMEOUT: 5s
NEXTCLOUD_TLS_SKIP_VERIFY: false
NEXTCLOUD_INFO_APPS: false
Mounts:
/var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-9w8pf (ro)
Conditions:
Type Status
Initialized True
Ready True
ContainersReady True
PodScheduled True
Volumes:
kube-api-access-9w8pf:
Type: Projected (a volume that contains injected data from multiple sources)
TokenExpirationSeconds: 3607
ConfigMapName: kube-root-ca.crt
ConfigMapOptional:
DownwardAPI: true
QoS Class: Guaranteed
Node-Selectors:
Tolerations: node.kubernetes.io/not-ready:NoExecute op=Exists for 300s
node.kubernetes.io/unreachable:NoExecute op=Exists for 300s
Events:

`

Summary of the issue you are facing:

The output of the corresponding pod is the following:

level=info msg=“nextcloud-exporter 0.6.2”
level=info msg=“Nextcloud server: http://nextcloud.nextcloud.svc.cluster.local:8080 User: myadmin”
level=info msg=“Listen on :9205…”
level=error msg=“Error during scrape: unexpected status code: 400”
level=error msg=“Error during scrape: unexpected status code: 400”

level=error msg=“Error during scrape: Get "http://nextcloud.nextcloud.svc.cluster.local:8080/ocs/v2.php/apps/serverinfo/api/v1/info?format=json\”: dial tcp 123.123.123:8080: connect: connection refused"
level=error msg=“Error during scrape: Get "http://nextcloud.nextcloud.svc.cluster.local:8080/ocs/v2.php/apps/serverinfo/api/v1/info?format=json\”: dial tcp 123.123.123:8080: connect: connection refused"
level=error msg=“Error during scrape: unexpected status code: 400”

Does anybody have any idea why ? Many thanks in advance.

shows you the problem:

  • exporter tries to get data from nextcloud.nextcloud.svc.cluster.local on port 8080 using http protocol
  • this connection fails

from the wording I would assume this is network level issue. You didn’t share NC config but port 8080 is not used by NC image by default - I would start here.