| <?xml version="1.0"?> |
| <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> |
| <!-- |
| /** |
| *(C) Copyright 2013-2015 Hewlett-Packard Development Company, L.P. |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); |
| * you may not use this file except in compliance with the License. |
| * You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| --> |
| <!-- |
| /** |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| --> |
| <configuration> |
| <property> |
| <name>dcs.tmp.dir</name> |
| <value>${java.io.tmpdir}/dcs-${user.name}</value> |
| <description>Temporary directory on the local filesystem. |
| Change this setting to point to a location more permanent |
| than '/tmp' (The '/tmp' directory is often cleared on |
| machine restart). |
| </description> |
| </property> |
| <property> |
| <name>dcs.local.dir</name> |
| <value>${dcs.tmp.dir}/local/</value> |
| <description>Directory on the local filesystem to be used |
| as a local storage. |
| </description> |
| </property> |
| <property> |
| <name>dcs.master.port</name> |
| <value>37800</value> |
| <description> |
| Default DCS port. |
| </description> |
| </property> |
| <property> |
| <name>dcs.master.port.range</name> |
| <value>100</value> |
| <description> |
| Default range of ports. |
| </description> |
| </property> |
| <property> |
| <name>dcs.master.info.port</name> |
| <value>40010</value> |
| <description>The port for the Dcs Master web UI. |
| Set to -1 if you do not want a UI instance run. |
| </description> |
| </property> |
| <property> |
| <name>dcs.master.info.bindAddress</name> |
| <value>0.0.0.0</value> |
| <description>The bind address for the DcsMaster web UI |
| </description> |
| </property> |
| <property> |
| <name>dcs.master.server.restart.handler.attempts</name> |
| <value>3</value> |
| <description> |
| Maximum number of times the DcsMaster restart handler will try to restart the DcsServer. |
| </description> |
| </property> |
| <property> |
| <name>dcs.master.server.restart.handler.retry.interval.millis</name> |
| <value>1000</value> |
| <description> |
| Interval between Server restart handler retries. |
| </description> |
| </property> |
| <property> |
| <name>dcs.master.listener.request.timeout</name> |
| <value>30000</value> |
| <description> |
| Listener Request timeout. Default 30 seconds. |
| </description> |
| </property> |
| <property> |
| <name>dcs.master.listener.selector.timeout</name> |
| <value>10000</value> |
| <description> |
| Listener Selector timeout. Default 10 seconds. |
| </description> |
| </property> |
| <property> |
| <name>dcs.server.user.program.max.heap.pct.exit</name> |
| <value>0</value> |
| <description> |
| Set this value to a percentage of the initial heap size (for example, value: 80), which you do not want the current heap size to exceed. |
| When the Trafodion session disconnects, the DCS server's user program checks its current heap size. If the difference between its current |
| and initial heap sizes exceeds this percentage, the user program will exit, and the DCS server will restart it. If the difference between |
| its current and initial heap sizes does not exceed this percentage, the user program will be allowed to keep running. The default is 0, |
| which means that the heap size is not checked after the session disconnects and the user program keeps running. |
| </description> |
| </property> |
| <property> |
| <name>dcs.server.user.program.zookeeper.session.timeout</name> |
| <value>180</value> |
| <description> |
| User program ZooKeeper session timeout. |
| Default 180 seconds. |
| </description> |
| </property> |
| <property> |
| <name>dcs.server.user.program.exit.after.disconnect</name> |
| <value>0</value> |
| <description> |
| User program calls exit() after client disconnect. |
| Default is 0 or don't 'disconnect after exit. Really only |
| for developer use. |
| </description> |
| </property> |
| <property> |
| <name>dcs.server.info.port</name> |
| <value>40030</value> |
| <description>The port for the DcsServer web UI |
| Set to -1 if you do not want the server UI to run. |
| </description> |
| </property> |
| <property> |
| <name>dcs.server.info.bindAddress</name> |
| <value>0.0.0.0</value> |
| <description>The address for the DcsServer web UI |
| </description> |
| </property> |
| <property> |
| <name>dcs.server.info.port.auto</name> |
| <value>true</value> |
| <description>Whether or not the DcsServer |
| UI should search for a port to bind to. Enables automatic port |
| search if dcs.server.info.port.auto is already in use. |
| </description> |
| </property> |
| <property> |
| <name>dcs.dns.interface</name> |
| <value>default</value> |
| <description>Dcs uses the local host name for reporting its IP address. If your machine |
| has multiple interfaces DCS will use the interface that the primary |
| host name resolves to. If this is insufficient, you can set this property |
| to indicate the primary interface e.g., "eth1". This only works if your cluster |
| configuration is consistent and every host has the same network interface |
| configuration. |
| </description> |
| </property> |
| <property> |
| <name>dcs.info.threads.max</name> |
| <value>100</value> |
| <description> |
| The maximum number of threads of the info server thread pool. |
| Threads in the pool are reused to process requests. This |
| controls the maximum number of requests processed concurrently. |
| It may help to control the memory used by the info server to |
| avoid out of memory issues. If the thread pool is full, incoming requests |
| will be queued up and wait for some free threads. The default |
| is 100. |
| </description> |
| </property> |
| <property> |
| <name>dcs.info.threads.min</name> |
| <value>2</value> |
| <description> |
| The minimum number of threads of the info server thread pool. |
| The thread pool always has at least these number of threads so |
| the info server is ready to serve incoming requests. The default |
| is 2. |
| </description> |
| </property> |
| <property> |
| <name>dcs.zookeeper.dns.interface</name> |
| <value>default</value> |
| <description>The name of the Network Interface from which a ZooKeeper server |
| should report its IP address. |
| </description> |
| </property> |
| <property> |
| <name>dcs.zookeeper.dns.nameserver</name> |
| <value>default</value> |
| <description>The host name or IP address of the name server (DNS) |
| which a ZooKeeper server should use to determine the host name used by the |
| master for communication and display purposes. |
| </description> |
| </property> |
| <property> |
| <name>dcs.server.versionfile.writeattempts</name> |
| <value>3</value> |
| <description> |
| How many time to retry attempting to write a version file |
| before just aborting. Each attempt is seperated by the |
| dcs.server.thread.wakefrequency milliseconds. |
| </description> |
| </property> |
| <property> |
| <name>zookeeper.session.timeout</name> |
| <value>180000</value> |
| <description>ZooKeeper session timeout. |
| dcs passes this to the zk quorum as suggested maximum time for a |
| session (This setting becomes zookeeper's 'maxSessionTimeout'). See |
| http://hadoop.apache.org/zookeeper/docs/current/zookeeperProgrammers.html#ch_zkSessions |
| "The client sends a requested timeout, the server responds with the |
| timeout that it can give the client. " In milliseconds. |
| </description> |
| </property> |
| <property> |
| <name>zookeeper.znode.parent</name> |
| <value>/${user.name}</value> |
| <description>Root Znode for dcs in ZooKeeper. All of dcs's ZooKeeper |
| znodes that are configured with a relative path will go under this node. |
| By default, all of dcs's ZooKeeper file path are configured with a |
| relative path, so they will all go under this directory unless changed. |
| </description> |
| </property> |
| <!-- |
| The following three properties are used together to create the list of |
| host:peer_port:leader_port quorum servers for ZooKeeper. |
| --> |
| <property> |
| <name>dcs.zookeeper.quorum</name> |
| <value>localhost</value> |
| <description>Comma separated list of servers in the ZooKeeper Quorum. |
| For example, "host1.mydomain.com,host2.mydomain.com,host3.mydomain.com". |
| By default this is set to localhost. For a fully-distributed setup, |
| this should be set to a full list of ZooKeeper quorum servers. |
| If DCS_MANAGES_ZK is set in dcs-env.sh this is the list of servers which |
| we will start/stop ZooKeeper on. |
| </description> |
| </property> |
| <property> |
| <name>dcs.zookeeper.peerport</name> |
| <value>2888</value> |
| <description>Port used by ZooKeeper peers to talk to each other. |
| See http://hadoop.apache.org/zookeeper/docs/r3.1.1/zookeeperStarted.html#sc_RunningReplicatedZooKeeper |
| for more information. |
| </description> |
| </property> |
| <property> |
| <name>dcs.zookeeper.leaderport</name> |
| <value>3888</value> |
| <description>Port used by ZooKeeper for leader election. |
| See http://hadoop.apache.org/zookeeper/docs/r3.1.1/zookeeperStarted.html#sc_RunningReplicatedZooKeeper |
| for more information. |
| </description> |
| </property> |
| <property> |
| <name>dcs.zookeeper.useMulti</name> |
| <value>false</value> |
| <description>Instructs DCS to make use of ZooKeeper's multi-update functionality. |
| This allows certain ZooKeeper operations to complete more quickly and prevents some issues |
| with rare ZooKeeper failure scenarios (see the release note of HBASE-6710 for an example). |
| IMPORTANT: only set this to true if all ZooKeeper servers in the cluster are on version 3.4+ |
| and will not be downgraded. ZooKeeper versions before 3.4 do not support multi-update and will |
| not fail gracefully if multi-update is invoked (see ZOOKEEPER-1495). |
| </description> |
| </property> |
| <!-- End of properties used to generate ZooKeeper host:port quorum list. --> |
| |
| <!-- |
| Beginning of properties that are directly mapped from ZooKeeper's zoo.cfg. |
| All properties with an "dcs.zookeeper.property." prefix are converted for |
| ZooKeeper's configuration. Hence, if you want to add an option from zoo.cfg, |
| e.g. "initLimit=10" you would append the following to your configuration: |
| <property> |
| <name>dcs.zookeeper.property.initLimit</name> |
| <value>10</value> |
| </property> |
| --> |
| <property> |
| <name>dcs.zookeeper.property.initLimit</name> |
| <value>10</value> |
| <description>Property from ZooKeeper's config zoo.cfg. |
| The number of ticks that the initial synchronization phase can take. |
| </description> |
| </property> |
| <property> |
| <name>dcs.zookeeper.property.syncLimit</name> |
| <value>5</value> |
| <description>Property from ZooKeeper's config zoo.cfg. |
| The number of ticks that can pass between sending a request and getting an |
| acknowledgment. |
| </description> |
| </property> |
| <property> |
| <name>dcs.zookeeper.property.dataDir</name> |
| <value>${dcs.tmp.dir}/zookeeper</value> |
| <description>Property from ZooKeeper's config zoo.cfg. |
| The directory where the snapshot is stored. |
| </description> |
| </property> |
| <property> |
| <name>dcs.zookeeper.property.clientPort</name> |
| <value>2181</value> |
| <description>Property from ZooKeeper's config zoo.cfg. |
| The port at which the clients will connect. |
| </description> |
| </property> |
| <property> |
| <name>dcs.zookeeper.property.maxClientCnxns</name> |
| <value>300</value> |
| <description>Property from ZooKeeper's config zoo.cfg. |
| Limit on number of concurrent connections (at the socket level) that a |
| single client, identified by IP address, may make to a single member of |
| the ZooKeeper ensemble. Set high to avoid zk connection issues running |
| standalone and pseudo-distributed. |
| </description> |
| </property> |
| <!-- End of properties that are directly mapped from ZooKeeper's zoo.cfg --> |
| <property> |
| <name>dcs.rest.port</name> |
| <value>8080</value> |
| <description>The port for the dcs REST server.</description> |
| </property> |
| <property> |
| <name>dcs.rest.readonly</name> |
| <value>false</value> |
| <description> |
| Defines the mode the REST server will be started in. Possible values are: |
| false: All HTTP methods are permitted - GET/PUT/POST/DELETE. |
| true: Only the GET method is permitted. |
| </description> |
| </property> |
| <property> |
| <name>dcs.rest.threads.max</name> |
| <value>100</value> |
| <description> |
| The maximum number of threads of the REST server thread pool. |
| Threads in the pool are reused to process REST requests. This |
| controls the maximum number of requests processed concurrently. |
| It may help to control the memory used by the REST server to |
| avoid out of memory issues. If the thread pool is full, incoming requests |
| will be queued up and wait for some free threads. The default |
| is 100. |
| </description> |
| </property> |
| <property> |
| <name>dcs.rest.threads.min</name> |
| <value>2</value> |
| <description> |
| The minimum number of threads of the REST server thread pool. |
| The thread pool always has at least these number of threads so |
| the REST server is ready to serve incoming requests. The default |
| is 2. |
| </description> |
| </property> |
| <property> |
| <name>dcs.rest.refresh.seconds</name> |
| <value>5</value> |
| <description> |
| Time in seconds between refresh of the REST server page. Set to 0 |
| to disable automatic refresh. The default is 5. |
| </description> |
| </property> |
| <property> |
| <name>dcs.server.user.program.statistics.interval.time</name> |
| <value>60</value> |
| <description> |
| Time in seconds between update of aggregation statistics.The default is 60. |
| </description> |
| </property> |
| <property> |
| <name>dcs.server.user.program.statistics.limit.time</name> |
| <value>60</value> |
| <description> |
| Time in seconds for long running query threshold. If query executes longer |
| than the value, it will be regarded as rogue query. The default is 60. |
| </description> |
| </property> |
| <property> |
| <name>dcs.server.user.program.statistics.type</name> |
| <value>aggregated</value> |
| <description> |
| Type of statistics to be published. User can set it as 'query', 'session' |
| or 'aggregated'. By 'aggregated', session stats and aggregation stats will |
| be published. For query stats, only long running queries will be recorded. |
| By 'session', only session stats will be published. By 'query', only |
| session stats and query stats will be published. The default is 'aggregated'. |
| </description> |
| </property> |
| <property> |
| <name>dcs.server.user.program.statistics.enabled</name> |
| <value>true</value> |
| <description> |
| If statistics publication is enabled. The default is true. Set false to disable. |
| </description> |
| </property> |
| <property> |
| <name>dcs.server.class.name</name> |
| <value>org.trafodion.dcs.server.DcsServer</value> |
| <description> |
| The classname of the DcsServer to start. Used for development of new architecture |
| </description> |
| </property> |
| </configuration> |