Vinay Pandey
Vinay Pandey

Reputation: 1189

Apache Ignite activating cluster takes a long time

I am trying to set up a cluster of Apache Ignite with persistence enabled. I am trying to start the cluster on Azure Kubernetes with 10 nodes. The problem is that the cluster activation seems to get stuck, but I am able to activate a cluster with 3 nodes in less than 5 minutes.

Here is the configuration I am using to start the cluster:

apiVersion: v1
kind: Service
metadata:
  name: ignite-main
  annotations:
    service.beta.kubernetes.io/azure-load-balancer-internal: "true"
  labels:
    main: ignite-main
spec:
  type: LoadBalancer
  externalTrafficPolicy: Cluster
  ports:
    - port: 10800 # JDBC port
      targetPort: 10800
      name: jdbc
    - port: 11211 # Activating the baseline (port)
      targetPort: 11211
      name: control
    - port: 8080 # REST port
      targetPort: 8080
      name: rest
  selector:
    main: ignite-main
---

#########################################
# Ignite service configuration
#########################################

# Service for discovery of ignite nodes
apiVersion: v1
kind: Service
metadata:
  name: ignite
  labels:
    app: ignite  
spec:
  clusterIP: None
  # externalTrafficPolicy: Cluster
  ports:
    # - port: 9042 # custom value.
    #   name: discovery
    - port: 47500
      name: discovery
    - port: 47100
      name: communication
    - port: 11211
      name: control
  selector:
    app: ignite
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: ignite-cluster
  labels:
    app: ignite
    main: ignite-main
spec:
  selector:
    matchLabels:
      app: ignite
      main: ignite-main
  replicas: 5
  template:
    metadata:
      labels:
        app: ignite
        main: ignite-main
    spec:
      volumes:
      - name: ignite-storage
        persistentVolumeClaim:
          claimName: ignite-volume-claim # Must be equal to the PersistentVolumeClaim created before.
      containers:
      - name: ignite-node
        image: ignite.azurecr.io/apacheignite/ignite:2.7.0-SNAPSHOT
        env:
        - name: OPTION_LIBS
          value: ignite-kubernetes
        - name: CONFIG_URI
          value: https://file-location
        - name: IGNITE_H2_DEBUG_CONSOLE
          value: 'true'
        - name: IGNITE_QUIET
          value: 'false'
        - name: java.net.preferIPv4Stack
          value: 'true'
        - name: JVM_OPTS
          value: -server -Xms10g -Xmx10g -XX:+AlwaysPreTouch -XX:+UseG1GC -XX:+ScavengeBeforeFullGC -XX:+DisableExplicitGC
        ports:
        - containerPort: 47100 # communication SPI port number.
        - containerPort: 47500 # discovery SPI port number.
        - containerPort: 49112 # JMX port number.
        - containerPort: 8080  # REST port number.
        - containerPort: 10800 # SQL port number.
        - containerPort: 11211 # Activating the baseline (port)
      imagePullSecrets:
        - name: docker-cred

Upvotes: 1

Views: 884

Answers (1)

Vinay Pandey
Vinay Pandey

Reputation: 1189

I was trying to activate the cluster remotely by providing --host parameter, like:

./control.sh --host x.x.x.x --activate

Instead, I tried activating the cluster by logging into one of the kubernetes nodes and activating from there. The detailed steps are mentioned here

Upvotes: 0

Related Questions