Deploy

This page discusses:

DeploymentConfig

  • exa.bee.deploy.v10.DeploymentConfig
  • Deployment configuration. Defines the default {@link PortRange} used by hosts. Defines the list of {@link Host} part of the cluster configuration. Defines the list of virtual services defined for this installation.
  • Attributes:
    Name Type Default value Description
    version long
    description string A descriptive name for this deployment, that will appear in the Admin-UI, for identification purposes
    hostAgentPort int Default port for the hostagent if not defined in each host
  • Nested elements:
    Name Type Description
    Host exa.bee.deploy.v10.Host*
    PortRange exa.bee.deploy.v10.PortRange
    VirtualService exa.bee.deploy.v10.VirtualService*

Host

  • exa.bee.deploy.v10.Host
  • Defines a {@link PortRange} which overrides the one defined at {@link DeploymentConfig} level. Note that if this host's port range has a null start port then, default port range start port is used. Same for last port. Defines the set of roles implemented by this host. See Management API reference guide for a complete list of available roles.
  • Parent elements:
    • exa.bee.deploy.v10.DeploymentConfig (as DeploymentConfig)
  • Attributes:
    Name Type Default value Description
    hostname string Network name of the physical host. The host must be reachable by all other hosts of the CloudView install using this name.
    install string Name of this CloudView cluster host on the physical host. It is possible to deploy several CloudView installs in the same CloudView cluster on the same physical host.
    architecture string System architecture of the host. Optional.
    hostAgentPort int Fixed Host agent port (optional). Overrides hostAgentPort set in DeploymentConfig
  • Nested elements:
    Name Type Description
    PortRange exa.bee.deploy.v10.PortRange Range of TCP ports used for this host
    Role exa.bee.deploy.v10.Role* CloudView roles hosted by this host

PortRange

  • exa.bee.deploy.v10.PortRange
  • Port range attributed to the product
  • Parent elements:
    • exa.bee.deploy.v10.DeploymentConfig (as DeploymentConfig)
    • exa.bee.deploy.v10.Host (as Host)
  • Attributes:
    Name Type Default value Description
    startPort int First TCP port
    lastPort int Last TCP port

Role

  • exa.bee.deploy.v10.Role
  • A Role in the CloudView process. The list of valid Roles can be found in the CloudView deployment guide
  • Parent elements:
    • exa.bee.deploy.v10.Host (as Host)
  • Attributes:
    Name Type Default value Description
    name string $CONSTRAINTS
  • Nested elements:
    Name Type Description
    RoleAttribute exa.bee.deploy.v10.RoleAttribute*

RoleAttribute

  • exa.bee.deploy.v10.RoleAttribute
  • Parameter of a role. The list of valid role attributes depends on the Role.
  • Parent elements:
    • exa.bee.deploy.v10.Role (as Role)
  • Attributes:
    Name Type Default value Description
    name string $CONSTRAINTS
    value string $CONSTRAINTS

VirtualService

  • exa.bee.deploy.v10.VirtualService
  • Virtual services are internal high availability points. Not used in general CloudView deployments.. Defines a single access point to a pool of services. {@link VirtualServiceRef} can be used to override the default behavior of {@link VirtualServiceGroupRef}.
  • Parent elements:
    • exa.bee.deploy.v10.DeploymentConfig (as DeploymentConfig)
  • Attributes:
    Name Type Default value Description
    name string Name of the virtual service (use in Directory.dispatch(...).
  • Nested elements:
    Name Type Description
    VirtualServiceGroupRef exa.bee.deploy.v10.VirtualServiceGroupRef*
    VirtualServiceRef exa.bee.deploy.v10.VirtualServiceRef*

VirtualServiceGroupRef

  • exa.bee.deploy.v10.VirtualServiceGroupRef
  • Internal advanced configuration. Reference to a group of services. The set of services referenced by a group is built from the roles "Process" whose attribute virtualGroup match this group's name. Default behaviour is simple round-robin among all the services.
  • Parent elements:
    • exa.bee.deploy.v10.VirtualService (as VirtualService)
  • Attributes:
    Name Type Default value Description
    name string
    service string Name of the service which is virtualized

VirtualServiceRef

  • exa.bee.deploy.v10.VirtualServiceRef
  • Internal advanced configuration. Reference to a concrete service implementation.
  • Parent elements:
    • exa.bee.deploy.v10.VirtualService (as VirtualService)
  • Attributes:
    Name Type Default value Description
    name string Fully qualified path to the service implementation.
    enabled boolean true Use this to easily enable or disable.
    power int 1
    maxConnection int 100

CloudviewDeploymentInternalConfig

  • com.exalead.mercury.mami.deploy.v10.CloudviewDeploymentInternalConfig
  • Advanced internal settings.
  • Attributes:
    Name Type Default value Description
    enableServiceList boolean true Enable services listing on Java processes
    version long
    collapseIndexSlices boolean True Merges the processes for all slices (in a given index replica) into only one process.
    collapseSearchServers boolean Merges searchserver processes in the gateway process.
    collapseMaster boolean Merges the Exascript master process into the hostagent.
    debug boolean Activate debugger access on java process.
  • Nested elements:
    Name Type Description
    globalBeegistryKeys exa.bee.KeyValue* Additional global beegistry keys
    ProcessInternalConfig exa.bee.deploy.v10.ProcessInternalConfig* Configuration sets for the process. Configuration are matched in a first-match fashion. For example: <ProcessInternalConfig name="foobar" runtime="java" /> <ProcessInternalConfig runtime="java" /> the second one will be used for all java processes except foobar.
    SearchInternalParameters com.exalead.mercury.mami.deploy.v10.SearchInternalParameters
    ServerCiphers exa.bee.deploy.v10.ServerCiphers Defines the cipher suite by a sequence on include and exclude statement.
    ServerCryptographicProtocols exa.bee.deploy.v10.ServerCryptographicProtocols Set the protocol that will be supported by servers (SSL, TLS..., see javax.net.ssl.SSLEngine)
    TickInternalParameters com.exalead.mercury.mami.deploy.v10.TickInternalParameters

ProcessInternalConfig

  • exa.bee.deploy.v10.ProcessInternalConfig
  • Internal configuration for a set of processes.
  • Parent elements:
    • com.exalead.mercury.mami.deploy.v10.CloudviewDeploymentInternalConfig (as CloudviewDeploymentInternalConfig)
  • Attributes:
    Name Type Default value Description
    name string Name of the process on which this applies. Applies to all processes if null
    hostname string Name of the host on which this applies. Applies to all hosts if null
    installName string Name of the install on which this applies. Applies to all installs if null
    runtime string Runtime on which this applies. One of exa, java, dotnet. Applies to all runtimes if null
    exaBinary string EXA binary to use in case of an EXA process.
    httpMinThreads int 5 Minimum number of alive threads for servicing HTTP queries
    httpMaxThreads int 500 Maximum number of alive threads for servicing HTTP queries
    httpMaxStopTime int 100 Maximum total time allowed for current queries to be treated before really stopping the server
    httpMaxGETQuerySize int 32768 Default max size in bytes of HTTP GET queries on this process. Note that this might be overriden by specific settings (like the SearchAPI max size)
    httpMaxFormPOSTQuerySize int 10000000 Default max size in bytes of HTTP POST queries on this process. Note that this might be overriden by specific settings (like the SearchAPI max size)
    httpMaxIdleTimeMS int 86400000 Maximum timeout for an HTTP connection, either while waiting for new data, or while processing a query
    httpAcceptorThreads int 1 Number of threads waiting for new HTTP connections
    httpAcceptQueueSize int 1200 Maximum size for the TCP acception queue
  • Nested elements:
    Name Type Description
    params exa.bee.KeyValue* Various advanced process params:
    • stopTimeout: Time, in milliseconds, to wait for the process to stop before being killed
    • startTimeout: Time, in milliseconds, to wait for the process to start before being killed
    • startDelay: Time, in milliseconds, to delay the start of this process after the others
    • killIfNotResponding: (true/false) If the process fails to answer to pings, indicate if it should be killed or not
    args exa.bee.StringValue* Command line arguments. If empty, default arguments are used. List of possible params for java processes:
    • -Dcv.showServletStacks=false : do not print java stacks when web app fails
    For linux:
    • Overriding ulimits -Dulimit.NAME=XXXX with NAME one of 'core', 'cpu', 'data', 'fsize', 'nofile', 'stack', 'as', 'rss', 'nproc', 'memlock', 'locks', 'sigpending', 'msgqueue', 'nice', 'rtprio', 'rttime' See linux ulimits doc for precise documentation XXXX is a number expressed in octets for sizes
    • Overriding malloc options -DMALLOPT_NAME=YYYY with MALLOPT_NAME one of 'mmap_threshold', 'mmap_max', 'mxfast', 'top_pad', 'trim_threshold' YYYY is a number expressed in octets. See linux mallopt documentation for more details.
    envOverride exa.bee.KeyValue* Environment variables to set/replace for this process
    envAppend exa.bee.KeyValue* Additional content to append at the end of environment variables (for PATH-like variables)
    envPrepend exa.bee.KeyValue* Additional content to prepend at the beginning of environment variables (for PATH-like variables)

SearchInternalParameters

  • com.exalead.mercury.mami.deploy.v10.SearchInternalParameters
  • Search internal parameters to tune performance. Warning: Experts only, this can have a huge performance impact.
  • Parent elements:
    • com.exalead.mercury.mami.deploy.v10.CloudviewDeploymentInternalConfig (as CloudviewDeploymentInternalConfig)
  • Attributes:
    Name Type Default value Description
    fullHitsContextMaxLifeSpan int 1000 When fullhits and their associated metas are released, they are put back into a memory pool for reuse. A full free is performed each 'fullHitsContextMaxLifeSpan' queries.
    rankedSearchFullHitsRecyclingMaxSize int 500 When fullhits are released, they are put back into a memory pool for reuse. A full free is performed once the pool has allocated more than 'rankedSearchFullHitsRecyclingMaxSize' fullhits.
    fullHitMetasRecyclingMaxSize int 50000 When fullhit metas are released, they are put back into a memory pool for reuse. A full free is performed once the pool has allocated more than 'fullHitMetasRecyclingMaxSize' metas.
    messagesAllocatorMaxSizeMB int 2000 A full reinitialization of the FLEA messages allocator will be performed once the pool of flea message has allocated more than 'messagesAllocatorMaxSizeMB' bytes.
    messagesAllocatorMaxLifeSpan int 1000 A full reinitialization of the FLEA messages allocator will be performed once 'messagesAllocatorMaxLifeSpan' queries have been done.
    workerThreadMaxQueries int 100 A worker (query container at slice level) is entirely destroyed once a worker thread has served 'workerThreadMaxQueries' queries.
    runnerMaxLifeSpan int 300 A runner (query container at searchserver level) is entirely destroyed once a runner has served queries during 'runnerMaxLifeSpan' seconds.
    runnerMaxQueries int 1000 A runner is entirely destroyed once a runner has served 'runnerMaxQueries' queries.
    runnerKeepAtLeastWhenIdle int Keep at least 'runnerKeepAtLeastWhenIdle' runner(s) ready to serve queries even without traffic.
    runnerKeepAtLeastWhenInBurst int 5 Be sure you keep at least 'runnerKeepAtLeastWhenInBurst' live runners, whatever the fullfilment of 'runnerMaxQueries' 'runnerMaxLifeSpan' when your are in a peak of activity.
    runnerDestroyIdleAfter int 60 Destroy idle runners after 'runnerDestroyIdleAfter' seconds of inactivity.

ServerCiphers

  • exa.bee.deploy.v10.ServerCiphers
  • Defines the cipher suite by a sequence on include and exclude statement. When no cipher suite is included, all supported cipher suites are accepted.,
  • Parent elements:
    • com.exalead.mercury.mami.deploy.v10.CloudviewDeploymentInternalConfig (as CloudviewDeploymentInternalConfig)
  • Nested elements:
    Name Type Description
    Exclude exa.bee.deploy.v10.Exclude* Names of the cipher that can not be used for HTTPS requests.
    Include exa.bee.deploy.v10.Include* Names of the cipher that can be used for HTTPS requests. If empty then all ciphers can be used.

Exclude

  • exa.bee.deploy.v10.Exclude
  • Names of a cipher suite that can not be used for HTTPS request.
  • Parent elements:
    • exa.bee.deploy.v10.ServerCiphers (as ServerCiphers)
  • Attributes:
    Name Type Default value Description
    name string

Include

  • exa.bee.deploy.v10.Include
  • Names of a cipher suite that can be used for HTTPS request.
  • Parent elements:
    • exa.bee.deploy.v10.ServerCiphers (as ServerCiphers)
  • Attributes:
    Name Type Default value Description
    name string

ServerCryptographicProtocols

  • exa.bee.deploy.v10.ServerCryptographicProtocols
  • Set the protocol that will be supported by servers (SSL, TLS..., see javax.net.ssl.SSLEngine)
  • Parent elements:
    • com.exalead.mercury.mami.deploy.v10.CloudviewDeploymentInternalConfig (as CloudviewDeploymentInternalConfig)
  • Nested elements:
    Name Type Description
    ExcludeProtocol exa.bee.deploy.v10.ExcludeProtocol* Name of a crypograhic protocol as defined in javax.net.ssl.SSLEngine) to exclude
    IncludeProtocol exa.bee.deploy.v10.IncludeProtocol* Name of a crypograhic protocol (as defined in javax.net.ssl.SSLEngine) to include

ExcludeProtocol

  • exa.bee.deploy.v10.ExcludeProtocol
  • Name of a crypograhic protocol as defined in javax.net.ssl.SSLEngine) to exclude
  • Parent elements:
    • exa.bee.deploy.v10.ServerCryptographicProtocols (as ServerCryptographicProtocols)
  • Attributes:
    Name Type Default value Description
    name string

IncludeProtocol

  • exa.bee.deploy.v10.IncludeProtocol
  • Name of a crypograhic protocol (as defined in javax.net.ssl.SSLEngine) to include
  • Parent elements:
    • exa.bee.deploy.v10.ServerCryptographicProtocols (as ServerCryptographicProtocols)
  • Attributes:
    Name Type Default value Description
    name string

TickInternalParameters

  • com.exalead.mercury.mami.deploy.v10.TickInternalParameters
  • Tick message parameters to tune performance. Warning: Experts only, this can have a huge performance impact.
  • Parent elements:
    • com.exalead.mercury.mami.deploy.v10.CloudviewDeploymentInternalConfig (as CloudviewDeploymentInternalConfig)
  • Attributes:
    Name Type Default value Description
    bufferRecyclingMaxSize int 1000 When a tick message is released, it is put back into a memory pool for reuse. The attached payload is kept if its size is smaller than bufferRecyclingMaxSize, and freed if larger.
    bufferRecyclingMaxLifeSpan int 64 To avoid a tick message pool full of messages with a large payload (==bufferRecyclingMaxSize), the payload is released every time the message has been used bufferRecyclingMaxLifeSpan times.

ProcessConfigList

  • exa.bee.deploy.v10.ProcessConfigList
  • Alternative way for defining a service in a cloudview product.
  • Attributes:
    Name Type Default value Description
    version long
  • Nested elements:
    Name Type Description
    params exa.bee.KeyValue* Parameters added to the global beegistry
    ProcessConfig exa.bee.deploy.v10.ProcessConfig*

SimpleJavaProcessConfig

  • exa.bee.deploy.v10.SimpleJavaProcessConfig
  • Simple java process definition which only exposes a set of web applications.
  • Parent elements:
    • exa.bee.deploy.v10.ProcessConfigList (as ProcessConfigList)
  • Attributes:
    Name Type Default value Description
    name string Process name. Referenced by the attribute "process" of a "Process\ role.
  • Nested elements:
    Name Type Description
    JavaWebApp exa.bee.deploy.v10.JavaWebApp*

JavaWebApp

  • exa.bee.deploy.v10.JavaWebApp
  • A Java Web application, to be embedded in a custom process. A Webapp can optionally expose some services which will be accessible by other parts of the CloudView instance through the Directory mechanism
  • Parent elements:
    • exa.bee.deploy.v10.ComplexJavaProcessConfig (as ComplexJavaProcessConfig)
    • exa.bee.deploy.v10.JavaServer (as JavaServer)
    • exa.bee.deploy.v10.SimpleJavaProcessConfig (as SimpleJavaProcessConfig)
  • Attributes:
    Name Type Default value Description
    name string Name of this webapp
    url string Webapp location (WAR file or directory)
    webAppLoaderClassId string Custom code for overloading the default webapp classloader
    extraClassPath string Elements to add to the webapp class path, additionally to the default CloudView libraries. extraClassPath is a comma-separated list of elements. Each element must be one of:
    • extrajava:folder/STAR.jar : Adds all jar files in $KIT/extrajava/folder and $DATA/extrajava/folder
    • extrajava:folder/STARSTAR/STAR.jar : Add recursively all jar files in $KIT/extrajava/folder and $DATA/extrajava/folder
    • Absolute path to a JAR file
    • Absolute path to a class folder
    isGlobal boolean true Global applications are deployed under the context path "/name". Not global applications are deployed under "/name/hostname-installname/processname". Note that global applications can not expose any service
  • Nested elements:
    Name Type Description
    initParams exa.bee.KeyValue* Webapp init parameters
    JavaWebAppService exa.bee.deploy.v10.JavaWebAppService*

JavaWebAppService

  • exa.bee.deploy.v10.JavaWebAppService
  • Describe the hosted Java WebApp service.
  • Parent elements:
    • exa.bee.deploy.v10.JavaWebApp (as JavaWebApp)
  • Attributes:
    Name Type Default value Description
    name string Name of the service (relative path) in the web app.
    schemaName string Optional schema name when published in the directory

ComplexJavaProcessConfig

  • exa.bee.deploy.v10.ComplexJavaProcessConfig
  • Base class for describing processes which can be hosted in a cloudview installation.
  • Parent elements:
    • exa.bee.deploy.v10.ProcessConfigList (as ProcessConfigList)
  • Attributes:
    Name Type Default value Description
    name string Process name. Referenced by the attribute "process" of a "Process\ role.
  • Nested elements:
    Name Type Description
    params exa.bee.KeyValue* Parameters added to the process local configuration registry.
    ConfigFile exa.bee.deploy.v10.ConfigFile*
    JavaServer exa.bee.deploy.v10.JavaServer*
    JavaService exa.bee.deploy.v10.JavaService*
    JavaWebApp exa.bee.deploy.v10.JavaWebApp*

ConfigFile

  • exa.bee.deploy.v10.ConfigFile
  • No documentation for this element.
  • Parent elements:
    • exa.bee.deploy.v10.ComplexExaProcessConfig (as ComplexExaProcessConfig)
    • exa.bee.deploy.v10.ComplexJavaProcessConfig (as ComplexJavaProcessConfig)
  • Attributes:
    Name Type Default value Description
    url string
    extraClassPath string Extra class path elements to add to the context class loader when loading this configuration file. Follows the JavaWebApp.extraClassPath syntax. This class path will be used to load the Java objects that might be contained in this configuration file

JavaServer

  • exa.bee.deploy.v10.JavaServer
  • A named server containing services and/or web apps.
  • Parent elements:
    • exa.bee.deploy.v10.ComplexJavaProcessConfig (as ComplexJavaProcessConfig)
  • Attributes:
    Name Type Default value Description
    name string Server name
    protocol string Server protocol
  • Nested elements:
    Name Type Description
    JavaService exa.bee.deploy.v10.JavaService* List of services deployed in this server
    JavaWebApp exa.bee.deploy.v10.JavaWebApp* List of web apps deployed in this server

JavaService

  • exa.bee.deploy.v10.JavaService
  • No documentation for this element.
  • Parent elements:
    • exa.bee.deploy.v10.ComplexJavaProcessConfig (as ComplexJavaProcessConfig)
    • exa.bee.deploy.v10.JavaServer (as JavaServer)
  • Attributes:
    Name Type Default value Description
    name string Service name. Exposed full prefix name will be automatically prefixed
    schemaName string Optional schema name used when publishing the directory
    beeKey string service implementation
    type string service type
    publicName string Optional public name. If null, name + host + processName is used
    extraClassPath string Extra class path elements to add to the context class loader when performing queries on this service. Follows the JavaWebApp.extraClassPath syntax.

SimpleDotNetProcessConfig

  • exa.bee.deploy.v10.SimpleDotNetProcessConfig
  • Describe the hosted .NET process configuration.
  • Parent elements:
    • exa.bee.deploy.v10.ProcessConfigList (as ProcessConfigList)
  • Attributes:
    Name Type Default value Description
    name string Process name. Referenced by the attribute "process" of a "Process\ role.

ComplexExaProcessConfig

  • exa.bee.deploy.v10.ComplexExaProcessConfig
  • Base class for describing processes which can be hosted in a cloudview installation.
  • Parent elements:
    • exa.bee.deploy.v10.ProcessConfigList (as ProcessConfigList)
  • Attributes:
    Name Type Default value Description
    name string Process name. Referenced by the attribute "process" of a "Process\ role.
  • Nested elements:
    Name Type Description
    params exa.bee.KeyValue* Parameters added to the process local configuration registry.
    ConfigFile exa.bee.deploy.v10.ConfigFile*
    ExaServer exa.bee.deploy.v10.ExaServer*
    ExaService exa.bee.deploy.v10.ExaService*

ExaServer

  • exa.bee.deploy.v10.ExaServer
  • No documentation for this element.
  • Parent elements:
    • exa.bee.deploy.v10.ComplexExaProcessConfig (as ComplexExaProcessConfig)
  • Attributes:
    Name Type Default value Description
    name string
    protocol string
  • Nested elements:
    Name Type Description
    ExaService exa.bee.deploy.v10.ExaService*

ExaService

  • exa.bee.deploy.v10.ExaService
  • No documentation for this element.
  • Parent elements:
    • exa.bee.deploy.v10.ComplexExaProcessConfig (as ComplexExaProcessConfig)
    • exa.bee.deploy.v10.ExaServer (as ExaServer)
  • Attributes:
    Name Type Default value Description
    name string
    schemaName string
    beeKey string
    type string
    publicName string Optional public name. If null, name + host + processName is used

KeyValue

  • exa.bee.KeyValue
  • No documentation for this element.
  • Parent elements:
    • exa.bee.KeyValue (as KeyValue)
    • exa.bee.deploy.v10.ProcessInternalConfig (as envAppend)
    • exa.bee.deploy.v10.ProcessInternalConfig (as envOverride)
    • exa.bee.deploy.v10.ProcessInternalConfig (as envPrepend)
    • com.exalead.mercury.mami.deploy.v10.CloudviewDeploymentInternalConfig (as globalBeegistryKeys)
    • exa.bee.deploy.v10.JavaWebApp (as initParams)
    • exa.bee.deploy.v10.ComplexExaProcessConfig (as params)
    • exa.bee.deploy.v10.ComplexJavaProcessConfig (as params)
    • exa.bee.deploy.v10.ProcessConfigList (as params)
    • exa.bee.deploy.v10.ProcessInternalConfig (as params)
  • Attributes:
    Name Type Default value Description
    key string The name of the key
    value string
    type string
    description string
  • Nested elements:
    Name Type Description
    KeyValue exa.bee.KeyValue*

StringValue

  • exa.bee.StringValue
  • No documentation for this element.
  • Parent elements:
    • exa.bee.deploy.v10.ProcessInternalConfig (as args)
  • Attributes:
    Name Type Default value Description
    value string