public interface ConfigServer
The API controllers use when communicating with config servers.
Author:
Øyvind Grønnesby
  • Method Details

    • deploy

    • reindex

      void reindex(DeploymentId deployment, List<String> clusterNames, List<String> documentTypes, boolean indexedOnly, Double speed, String cause)
    • getReindexing

      ApplicationReindexing getReindexing(DeploymentId deployment)
    • disableReindexing

      void disableReindexing(DeploymentId deployment)
    • enableReindexing

      void enableReindexing(DeploymentId deployment)
    • restart

      void restart(DeploymentId deployment, RestartFilter restartFilter)
    • deactivate

      void deactivate(DeploymentId deployment)
    • isSuspended

      boolean isSuspended(DeploymentId deployment)
    • getServiceNodePage

      ProxyResponse getServiceNodePage(DeploymentId deployment, String serviceName, ai.vespa.http.DomainName node, ai.vespa.http.HttpURL.Path subPath, ai.vespa.http.HttpURL.Query query)
      Returns a proxied response from a given path running on a given service and node
    • getServiceNodes

      ProxyResponse getServiceNodes(DeploymentId deployment)
      Returns health status for the services of an application
    • getLogs

      InputStream getLogs(DeploymentId deployment, Map<String,String> queryParameters)
      Gets the Vespa logs of the given deployment. If the "from" and/or "to" query parameters are present, they are read as millis since EPOCH, and used to limit the time window for which log entries are gathered. This is not exact, and will return too much. If the "hostname" query parameter is present, it limits the entries to be from that host.
    • getApplicationPackageContent

      ProxyResponse getApplicationPackageContent(DeploymentId deployment, ai.vespa.http.HttpURL.Path path, URI requestUri)
      Gets the contents of a file inside the current application package for a given deployment. If the path is to a directory, a JSON list with URLs to contents is returned.
      Parameters:
      deployment - deployment to get application package content for
      path - path within package to get
      requestUri - request URI on the controller, used to rewrite paths in response from config server
    • getDeploymentMetrics

      List<ClusterMetrics> getDeploymentMetrics(DeploymentId deployment)
    • getSearchNodeMetrics

      List<SearchNodeMetrics> getSearchNodeMetrics(DeploymentId deployment)
    • getContentClusters

      List<String> getContentClusters(DeploymentId deployment)
    • setGlobalRotationStatus

      void setGlobalRotationStatus(DeploymentId deployment, List<String> upstreamNames, EndpointStatus status)
      Set new status for a endpoint of a single deployment.
      Parameters:
      deployment - The deployment to change
      upstreamNames - The upstream names to modify. Upstream name is a unique identifier for the routing status of a cluster in a deployment
      status - The new status
    • setGlobalRotationStatus

      void setGlobalRotationStatus(com.yahoo.config.provision.zone.ZoneId zone, boolean in)
      Set the new status for an entire zone.
      Parameters:
      zone - the zone
      in - whether to set zone status to 'in' or 'out'
    • getGlobalRotationStatus

      EndpointStatus getGlobalRotationStatus(DeploymentId deployment, String upstreamName)
      Get the endpoint status for an app in one zone.
      Parameters:
      deployment - The deployment to change
      upstreamName - The upstream to query. Upstream name is a unique identifier for the global route of a deployment in the shared routing layer
      Returns:
      The endpoint status with metadata
    • getGlobalRotationStatus

      boolean getGlobalRotationStatus(com.yahoo.config.provision.zone.ZoneId zone)
      Get the status for an entire zone.
      Parameters:
      zone - the zone
      Returns:
      whether the zone status is 'in'
    • nodeRepository

      NodeRepository nodeRepository()
      The node repository on this config server
    • serviceConvergence

      Optional<ServiceConvergence> serviceConvergence(DeploymentId deployment, Optional<com.yahoo.component.Version> version)
      Get service convergence status for given deployment, using the nodes in the model at the given Vespa version.
    • getLoadBalancers

      List<LoadBalancer> getLoadBalancers(com.yahoo.config.provision.ApplicationId application, com.yahoo.config.provision.zone.ZoneId zone)
      Get all load balancers for application in given zone
    • listFlagData

      List<com.yahoo.vespa.flags.json.FlagData> listFlagData(com.yahoo.config.provision.zone.ZoneId zone)
      List all flag data for the given zone
    • getTesterStatus

      TesterCloud.Status getTesterStatus(DeploymentId deployment)
      Gets status for tester application
    • startTests

      String startTests(DeploymentId deployment, TesterCloud.Suite suite, byte[] config)
      Starts tests on tester node
    • getTesterLog

      List<LogEntry> getTesterLog(DeploymentId deployment, long after)
      Gets log from tester node
    • isTesterReady

      boolean isTesterReady(DeploymentId deployment)
      Is tester node ready
    • getTestReport

      Optional<TestReport> getTestReport(DeploymentId deployment)
    • verifyEndpoints

      com.yahoo.config.provision.EndpointsChecker.Availability verifyEndpoints(DeploymentId deploymentId, List<com.yahoo.config.provision.EndpointsChecker.Endpoint> zoneEndpoints)
    • getQuotaUsage

      QuotaUsage getQuotaUsage(DeploymentId deploymentId)
      Get maximum resources consumed
    • setSuspension

      void setSuspension(DeploymentId deploymentId, boolean suspend)
      Sets suspension status — whether application node operations are orchestrated — for the given deployment.
    • validateSecretStore

      String validateSecretStore(DeploymentId deploymentId, TenantSecretStore tenantSecretStore, String region, String parameterName)
      Validates secret store configuration.