manticoresoftware/manticoresearch-helm

Cluster 'manticore' is not ready, starting

Closed this issue · 3 comments

kvaps commented

Hi, I run manticore in master-slave mode:

worker:
  replicaCount: 2
  clusterName: manticore_cluster
  replicationMode: master-slave
  quorumRecovery: true
  persistence:
    size: 10Gi
    storageClass: linstor-lvm

All the replicas are up and running, but loadbalancer is not working, every attempt to connect and create cluster via loadbalancer throws an error:

Cluster 'manticore_cluster' is not ready, starting

in balancer logs only messages:

localhost - 2023-09-25 17:24:42 - 3 - No tables found
localhost - 2023-09-25 17:24:47 - 3 - No tables found
localhost - 2023-09-25 17:24:52 - 3 - No tables found
localhost - 2023-09-25 17:24:57 - 3 - No tables found
localhost - 2023-09-25 17:25:02 - 3 - No tables found
localhost - 2023-09-25 17:25:07 - 3 - No tables found

chart version: v6.2.12.2

I can connect and work directly with worker, but other worker do not recieve update. Connection via Loadbalancer does not work. What am I doing wrong?

kvaps commented

So it seems issue has gone when I redeployed the cluster.

Now I created two services to access workers directly by avoiding balancer:

apiVersion: v1
kind: Service
metadata:
  name: {{ .Release.Name }}-external-manticoresearch-write
spec:
  type: LoadBalancer
  externalTrafficPolicy: Local
  allocateLoadBalancerNodePorts: false
  ports:
  - name: ql
    port: 9306
    protocol: TCP
    targetPort: 9306
  - name: http
    port: 9308
    protocol: TCP
    targetPort: 9308
  selector:
    name: {{ .Release.Name }}-manticoresearch-worker
    statefulset.kubernetes.io/pod-name: {{ .Release.Name }}-manticoresearch-worker-0
---
apiVersion: v1
kind: Service
metadata:
  name: {{ .Release.Name }}-external-manticoresearch-read
spec:
  type: LoadBalancer
  externalTrafficPolicy: Local
  allocateLoadBalancerNodePorts: false
  ports:
  - name: ql
    port: 9306
    protocol: TCP
    targetPort: 9306
  - name: http
    port: 9308
    protocol: TCP
    targetPort: 9308
  selector:
    name: {{ .Release.Name }}-manticoresearch-worker

The tables are seems now distributed.
Please comment is it intended way for work?

I installed the fresh instance with your parameters on our cluster and all workers up successfully.

All the replicas are up and running, but loadbalancer is not working, every attempt to connect and create cluster via loadbalancer throws an error....

  1. You mean manticore balancer? It's not related to replication. It need to provide HA
  2. Cluster created by worker replication scripts automatically.

Now I created two services to access workers directly by avoiding balancer

Read the documentation carefully.

  • To insert rows you should use worker-svc, or worker-N directly (depends at replication mode).
  • To read rows - balancer-svc
kvaps commented

Got it! Thank you for clarification