Class KubernetesServiceImporter

  • All Implemented Interfaces:
    ServiceImporter

    public class KubernetesServiceImporter
    extends Object
    implements ServiceImporter
    A discovery bridge listening for kubernetes services and publishing them in the Vert.x service discovery. This bridge only supports the importation of services from kubernetes in vert.x (and not the opposite).

    The bridge is configured using:

    * the oauth token (using the content of `/var/run/secrets/kubernetes.io/serviceaccount/token` by default) * the namespace in which the service are searched (defaults to `default`).

    Be aware that the application must have access to Kubernetes and must be able to read the chosen namespace.

    Record are created from Kubernetes Service. The service type is deduced from the `service-type` label. If not set, the service is imported as `unknown`. Only `http-endpoint` are supported for now.

    Author:
    Clement Escoffier
    • Constructor Detail

      • KubernetesServiceImporter

        public KubernetesServiceImporter()
    • Method Detail

      • start

        public void start​(Vertx vertx,
                          ServicePublisher publisher,
                          JsonObject configuration,
                          Promise<Void> completion)
        Description copied from interface: ServiceImporter
        Starts the importer.
        Specified by:
        start in interface ServiceImporter
        Parameters:
        vertx - the vertx instance
        publisher - the service publisher instance
        configuration - the bridge configuration if any
        completion - a future on which the bridge must report the completion of the starting
      • close

        public void close​(Handler<Void> completionHandler)
        Description copied from interface: ServiceImporter
        Closes the importer
        Specified by:
        close in interface ServiceImporter
        Parameters:
        completionHandler - the handle to be notified when importer is closed, may be null