Class KubernetesProperties

java.lang.Object
com.hazelcast.kubernetes.KubernetesProperties

public final class KubernetesProperties extends Object

Configuration class of the Hazelcast Discovery Plugin for Kubernetes.

For possible configuration properties please refer to the public constants of this class.

  • Field Details

    • KUBERNETES_SYSTEM_PREFIX

      public static final String KUBERNETES_SYSTEM_PREFIX

      Configuration System Environment Prefix: hazelcast.kubernetes.

      Defines the prefix for system environment variables and JVM command line parameters.
      Defining or overriding properties as JVM parameters or using the system environment, those properties need to be prefixed to prevent collision on property names.
      Example: SERVICE_DNS will be:
           -Dhazelcast.kubernetes.service-dns=value
       
      For kubernetes and openshift there is a special rule where the environment variables are provided in C-identifier style, therefore the prefix is converted to uppercase and dots and dashed will be replaced with underscores:
           HAZELCAST_KUBERNETES_SERVICE_DNS=value
       
      See Also:
    • SERVICE_DNS

      public static final PropertyDefinition SERVICE_DNS

      Configuration key: service-dns

      Defines the DNS service lookup domain. This is defined as something similar to my-svc.my-namespace.svc.cluster.local.
      For more information please refer to the official documentation of the Kubernetes DNS addon, here.
    • SERVICE_DNS_TIMEOUT

      public static final PropertyDefinition SERVICE_DNS_TIMEOUT

      Configuration key: service-dns-timeout

      Defines the DNS service lookup timeout in seconds. Defaults to: 5 secs.
    • SERVICE_NAME

      public static final PropertyDefinition SERVICE_NAME

      Configuration key: service-name

      Defines the service name of the POD to lookup through the Service Discovery REST API of Kubernetes.
    • SERVICE_LABEL_NAME

      public static final PropertyDefinition SERVICE_LABEL_NAME

      Configuration key: service-label-name

      Defines the comma separated service labels to lookup through the Service Discovery REST API of Kubernetes.
    • SERVICE_LABEL_VALUE

      public static final PropertyDefinition SERVICE_LABEL_VALUE

      Configuration key: service-label-value

      Defines the comma separated service label values to lookup through the Service Discovery REST API of Kubernetes.
    • NAMESPACE

      public static final PropertyDefinition NAMESPACE

      Configuration key: namespace

      Defines the namespace of the application POD through the Service Discovery REST API of Kubernetes.
    • POD_LABEL_NAME

      public static final PropertyDefinition POD_LABEL_NAME

      Configuration key: pod-label-name

      Defines the comma separated pod labels to lookup through the Service Discovery REST API of Kubernetes.
    • POD_LABEL_VALUE

      public static final PropertyDefinition POD_LABEL_VALUE

      Configuration key: pod-label-value

      Defines the comma separated pod label values to lookup through the Service Discovery REST API of Kubernetes.
    • EXPOSE_EXTERNALLY

      public static final PropertyDefinition EXPOSE_EXTERNALLY

      Configuration key: expose-externally

      Specifies if Hazelcast should try to find its public addresses exposed with a single service. If not set, Hazelcast tries to automatically find public addresses, but fails silently. If truefalse, Hazelcast crashes if it can't find its public address. If false, Hazelcast does not even try to find its public address.
    • SERVICE_PER_POD_LABEL_NAME

      public static final PropertyDefinition SERVICE_PER_POD_LABEL_NAME

      Configuration key: service-per-pod-label-name

      Defines the label name of the service used to expose one Hazelcast pod (for the external smart client use case).
    • SERVICE_PER_POD_LABEL_VALUE

      public static final PropertyDefinition SERVICE_PER_POD_LABEL_VALUE

      Configuration key: service-per-pod-label-value

      Defines the label value of the service used to expose one Hazelcast pod (for the external smart client use case).
    • RESOLVE_NOT_READY_ADDRESSES

      public static final PropertyDefinition RESOLVE_NOT_READY_ADDRESSES

      Configuration key: resolve-not-ready-addresses

      Defines if not ready addresses should be evaluated to be discovered on startup.
    • USE_NODE_NAME_AS_EXTERNAL_ADDRESS

      public static final PropertyDefinition USE_NODE_NAME_AS_EXTERNAL_ADDRESS

      Configuration key: use-node-name-as-external-address

      Defines if the node name should be used as external address, instead of looking up the external IP using the /nodes resource. Default is false.
    • KUBERNETES_API_RETIRES

      public static final PropertyDefinition KUBERNETES_API_RETIRES

      Configuration key: kubernetes-api-retries

      Defines the number of retries to Kubernetes API. Defaults to: 3.
    • KUBERNETES_MASTER_URL

      public static final PropertyDefinition KUBERNETES_MASTER_URL

      Configuration key: kubernetes-master

      Defines an alternative address for the kubernetes master. Defaults to: https://kubernetes.default.svc
    • KUBERNETES_API_TOKEN

      public static final PropertyDefinition KUBERNETES_API_TOKEN

      Configuration key: api-token

      Defines an oauth token for the kubernetes client to access the kubernetes REST API. Defaults to reading the token from the auto-injected file at: /var/run/secrets/kubernetes.io/serviceaccount/token
    • KUBERNETES_CA_CERTIFICATE

      public static final PropertyDefinition KUBERNETES_CA_CERTIFICATE
      Configuration key: ca-certificate CA Authority certificate from Kubernetes Master, defaults to reading the certificate from the auto-injected file at: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
    • SERVICE_PORT

      public static final PropertyDefinition SERVICE_PORT

      Configuration key: service-port

      If specified with a value greater than 0, its value defines the endpoint port of the service (overriding the default).