Repository: accumulo Updated Branches: refs/heads/master e176aa6a1 -> 35d391904
http://git-wip-us.apache.org/repos/asf/accumulo/blob/d137a4f9/conf/examples/vfs-classloader/accumulo-site.xml ---------------------------------------------------------------------- diff --git a/conf/examples/vfs-classloader/accumulo-site.xml b/conf/examples/vfs-classloader/accumulo-site.xml deleted file mode 100644 index ea95ea2..0000000 --- a/conf/examples/vfs-classloader/accumulo-site.xml +++ /dev/null @@ -1,175 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - 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. ---> -<?xml-stylesheet type="text/xsl" href="configuration.xsl"?> - -<configuration> - <!-- Put your site-specific accumulo configurations here. The available configuration values along with their defaults are documented in docs/config.html Unless - you are simply testing at your workstation, you will most definitely need to change the three entries below. --> - - <property> - <name>instance.zookeeper.host</name> - <value>localhost:2181</value> - <description>comma separated list of zookeeper servers</description> - </property> - - <property> - <name>logger.dir.walog</name> - <value>walogs</value> - <description>The property only needs to be set if upgrading from 1.4 which used to store write-ahead logs on the local - filesystem. In 1.5 write-ahead logs are stored in DFS. When 1.5 is started for the first time it will copy any 1.4 - write ahead logs into DFS. It is possible to specify a comma-separated list of directories. - </description> - </property> - - <property> - <name>instance.secret</name> - <value>DEFAULT</value> - <description>A secret unique to a given instance that all servers must know in order to communicate with one another. - Change it before initialization. To - change it later use ./bin/accumulo org.apache.accumulo.server.util.ChangeSecret --old [oldpasswd] --new [newpasswd], - and then update this file. - </description> - </property> - - <property> - <name>tserver.memory.maps.max</name> - <value>80M</value> - </property> - - <property> - <name>tserver.cache.data.size</name> - <value>7M</value> - </property> - - <property> - <name>tserver.cache.index.size</name> - <value>20M</value> - </property> - - <property> - <name>trace.password</name> - <!-- change this to the root user's password, and/or change the user below --> - <value>secret</value> - </property> - - <property> - <name>trace.user</name> - <value>root</value> - </property> - - <property> - <name>tserver.sort.buffer.size</name> - <value>50M</value> - </property> - - <property> - <name>tserver.walog.max.size</name> - <value>100M</value> - </property> - - <property> - <name>general.maven.project.basedir</name> - <value></value> - </property> - - <property> - <name>general.classpaths</name> - <value> - $ACCUMULO_HOME/lib/accumulo-server.jar, - $ACCUMULO_HOME/lib/accumulo-core.jar, - $ACCUMULO_HOME/lib/accumulo-start.jar, - $ACCUMULO_HOME/lib/accumulo-fate.jar, - $ACCUMULO_HOME/lib/accumulo-proxy.jar, - $ACCUMULO_HOME/lib/[^.].*.jar, - $ZOOKEEPER_HOME/zookeeper[^.].*.jar, - $HADOOP_CONF_DIR, - $HADOOP_PREFIX/[^.].*.jar, - $HADOOP_PREFIX/lib/[^.].*.jar, - <!-- Comment the following for hadoop-1 --> - $HADOOP_PREFIX/share/hadoop/common/.*.jar, - $HADOOP_PREFIX/share/hadoop/common/lib/.*.jar, - $HADOOP_PREFIX/share/hadoop/hdfs/.*.jar, - $HADOOP_PREFIX/share/hadoop/mapreduce/.*.jar, - $HADOOP_PREFIX/share/hadoop/yarn/.*.jar, - /usr/lib/hadoop/.*.jar, - /usr/lib/hadoop/lib/.*.jar, - /usr/lib/hadoop-hdfs/.*.jar, - /usr/lib/hadoop-mapreduce/.*.jar, - /usr/lib/hadoop-yarn/.*.jar, - </value> - <description>Classpaths that accumulo checks for updates and class files.</description> - </property> - - <!-- VFS ClassLoader Settings --> - - <!-- - At a minimum the general.vfs.classpath property must be set. After this is set in the configuration, the bin/bootstrap_hdfs.sh can be - run to move the jars into the required locations. All other properties are optional. This example demonstrates using hdfs, other - protocols supported by the Apache Commons VFS software can be used but are not demonstrated here. If the accumulo-site.xml changes - after initial configuration, you will want to copy the file to all of the slave hosts. - --> - <property> - <name>general.vfs.classpaths</name> - <value>hdfs://localhost:8020/accumulo/system-classpath</value> - <description>Configuration for a system level vfs classloader. Accumulo jars can be configured here and loaded out of HDFS.</description> - </property> - - <property> - <name>general.vfs.cache.dir</name> - <value>/tmp</value> - <description>Directory to use for the vfs cache. The cache will keep a soft reference to all of the classes loaded in the VM. - This should be on local disk on - each node with sufficient space. It defaults to /tmp and will use a directory with the - format "accumulo-vfs-cache-" + System.getProperty("user.name", - "nouser") - </description> - </property> - - <!-- - Properties in this category define a classpath for a named context. These properties start with the category prefix, followed by a context name. - The value is a comma seperated list of URIs. Supports full regex on filename alone. For example - general.vfs.context.classpath.cx1=hdfs://nn1:9902/mylibdir/*.jar. You can enable post delegation for a context, which will load classes from - the context first instead of the parent first. Do this by setting general.vfs.context.classpath.<name>.delegation=post, where <name> - is your context name. If delegation is not specified, it defaults to loading from parent classloader first. - --> - - <property> - <name>general.vfs.context.classpath.application1</name> - <value>hdfs://localhost:8020/application1/classpath/*.jar</value> - <description>classpath for the application1 context</description> - </property> - - <property> - <name>general.vfs.context.classpath.application1.delegation=post</name> - <value>hdfs://localhost:8020/application1/classpath/*.jar</value> - <description>classpath for the application1 context, but the classloader parent delegation model is inverted to prefer the jars/classes in this directory - </description> - </property> - - <property> - <name>general.vfs.context.classpath.application2</name> - <value>hdfs://localhost:8020/application1/classpath/*.jar,hdfs://localhost:8020/application2/classpath/*.jar</value> - <description>classpath for the application2 context, includes all of the jars in app1 context</description> - </property> - - <!-- - Once classpath context are configured, tables can be configured in the shell to use them via the table.classpath.context property. - For example, all of the tables related to application1 would have the context.classpath property set to 'application1'. - --> - -</configuration> http://git-wip-us.apache.org/repos/asf/accumulo/blob/d137a4f9/conf/templates/accumulo-env.sh ---------------------------------------------------------------------- diff --git a/conf/templates/accumulo-env.sh b/conf/templates/accumulo-env.sh new file mode 100644 index 0000000..e136a3f --- /dev/null +++ b/conf/templates/accumulo-env.sh @@ -0,0 +1,66 @@ +#! /usr/bin/env bash + +# 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. + +### +### Configure these environment variables to point to your local installations. +### +### The functional tests require conditional values, so keep this style: +### +### test -z "$JAVA_HOME" && export JAVA_HOME=/usr/lib/jvm/java +### +### +### Note that the -Xmx -Xms settings below require substantial free memory: +### you may want to use smaller values, especially when running everything +### on a single machine. +### +if [ -z "$HADOOP_HOME" ] +then + test -z "$HADOOP_PREFIX" && export HADOOP_PREFIX=/path/to/hadoop +else + HADOOP_PREFIX="$HADOOP_HOME" + unset HADOOP_HOME +fi + +# hadoop-1.2: +# test -z "$HADOOP_CONF_DIR" && export HADOOP_CONF_DIR="$HADOOP_PREFIX/conf" +# hadoop-2.0: +test -z "$HADOOP_CONF_DIR" && export HADOOP_CONF_DIR="$HADOOP_PREFIX/etc/hadoop" + +test -z "$JAVA_HOME" && export JAVA_HOME=/path/to/java +test -z "$ZOOKEEPER_HOME" && export ZOOKEEPER_HOME=/path/to/zookeeper +test -z "$ACCUMULO_LOG_DIR" && export ACCUMULO_LOG_DIR=$ACCUMULO_HOME/logs +if [ -f ${ACCUMULO_CONF_DIR}/accumulo.policy ] +then + POLICY="-Djava.security.manager -Djava.security.policy=${ACCUMULO_CONF_DIR}/accumulo.policy" +fi +test -z "$ACCUMULO_TSERVER_OPTS" && export ACCUMULO_TSERVER_OPTS="${POLICY} ${tServerHigh_tServerLow} " +test -z "$ACCUMULO_MASTER_OPTS" && export ACCUMULO_MASTER_OPTS="${POLICY} ${masterHigh_masterLow}" +test -z "$ACCUMULO_MONITOR_OPTS" && export ACCUMULO_MONITOR_OPTS="${POLICY} ${monitorHigh_monitorLow}" +test -z "$ACCUMULO_GC_OPTS" && export ACCUMULO_GC_OPTS="${gcHigh_gcLow}" +test -z "$ACCUMULO_GENERAL_OPTS" && export ACCUMULO_GENERAL_OPTS="-XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -Djava.net.preferIPv4Stack=true" +test -z "$ACCUMULO_OTHER_OPTS" && export ACCUMULO_OTHER_OPTS="${otherHigh_otherLow}" +# what do when the JVM runs out of heap memory +export ACCUMULO_KILL_CMD='kill -9 %p' + +### Optionally look for hadoop and accumulo native libraries for your +### platform in additional directories. (Use DYLD_LIBRARY_PATH on Mac OS X.) +### May not be necessary for Hadoop 2.x or using an RPM that installs to +### the correct system library directory. +# export LD_LIBRARY_PATH=${HADOOP_PREFIX}/lib/native/${PLATFORM}:${LD_LIBRARY_PATH} + +# Should the monitor bind to all network interfaces -- default: false +# export ACCUMULO_MONITOR_BIND_ALL="true" http://git-wip-us.apache.org/repos/asf/accumulo/blob/d137a4f9/conf/templates/accumulo-metrics.xml ---------------------------------------------------------------------- diff --git a/conf/templates/accumulo-metrics.xml b/conf/templates/accumulo-metrics.xml new file mode 100644 index 0000000..60f9f8d --- /dev/null +++ b/conf/templates/accumulo-metrics.xml @@ -0,0 +1,60 @@ +<!-- + 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. +--> +<!-- + This file follows the conventions for XMLConfiguration files specified in the Apache Commons Configuration 1.5 Library. Changes to this file will be noticed + at runtime (see the FileChangedReloadingStrategy class in Commons Configuration). +--> +<config> +<!-- + Metrics log directory +--> + <logging> + <dir>${ACCUMULO_HOME}/metrics</dir> + </logging> +<!-- + Enable/Disable metrics accumulation on the different servers and their components + NOTE: Turning on logging can be expensive because it will use several more file handles and will create a lot of short lived objects. +--> + <master> + <enabled type="boolean">false</enabled> + <logging type="boolean">false</logging> + </master> + <logger> + <enabled type="boolean">false</enabled> + <logging type="boolean">false</logging> + </logger> + <tserver> + <enabled type="boolean">false</enabled> + <logging type="boolean">false</logging> + <update> + <enabled type="boolean">false</enabled> + <logging type="boolean">false</logging> + </update> + <scan> + <enabled type="boolean">false</enabled> + <logging type="boolean">false</logging> + </scan> + <minc> + <enabled type="boolean">false</enabled> + <logging type="boolean">false</logging> + </minc> + </tserver> + <thrift> + <enabled type="boolean">false</enabled> + <logging type="boolean">false</logging> + </thrift> +</config> http://git-wip-us.apache.org/repos/asf/accumulo/blob/d137a4f9/conf/templates/accumulo-site.xml ---------------------------------------------------------------------- diff --git a/conf/templates/accumulo-site.xml b/conf/templates/accumulo-site.xml new file mode 100644 index 0000000..cdbf3a2 --- /dev/null +++ b/conf/templates/accumulo-site.xml @@ -0,0 +1,128 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + 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. +--> +<?xml-stylesheet type="text/xsl" href="configuration.xsl"?> + +<configuration> + <!-- Put your site-specific accumulo configurations here. The available configuration values along with their defaults are documented in docs/config.html Unless + you are simply testing at your workstation, you will most definitely need to change the three entries below. --> + + <property> + <name>instance.zookeeper.host</name> + <value>localhost:2181</value> + <description>comma separated list of zookeeper servers</description> + </property> + + <property> + <name>logger.dir.walog</name> + <value>walogs</value> + <description>The property only needs to be set if upgrading from 1.4 which used to store write-ahead logs on the local + filesystem. In 1.5 write-ahead logs are stored in DFS. When 1.5 is started for the first time it will copy any 1.4 + write ahead logs into DFS. It is possible to specify a comma-separated list of directories. + </description> + </property> + + <property> + <name>instance.secret</name> + <value>DEFAULT</value> + <description>A secret unique to a given instance that all servers + must know in order to communicate with one another. + Change it before initialization. To + change it later use ./bin/accumulo org.apache.accumulo.server.util.ChangeSecret --old [oldpasswd] --new [newpasswd], + and then update this file. + </description> + </property> + + <property> + <name>tserver.memory.maps.max</name> + <value>${memMapMax}</value> + </property> + + <property> + <name>tserver.memory.maps.native.enabled</name> + <value>${nativeEnabled}</value> + </property> + + <property> + <name>tserver.cache.data.size</name> + <value>${cacheDataSize}</value> + </property> + + <property> + <name>tserver.cache.index.size</name> + <value>${cacheIndexSize}</value> + </property> + + <property> + <name>trace.token.property.password</name> + <!-- change this to the root user's password, and/or change the user below --> + <value>secret</value> + </property> + + <property> + <name>trace.user</name> + <value>root</value> + </property> + + <property> + <name>tserver.sort.buffer.size</name> + <value>${sortBufferSize}</value> + </property> + + <property> + <name>tserver.walog.max.size</name> + <value>${waLogMaxSize}</value> + </property> + + ${mvnProjBaseDir} + + <property> + <name>general.classpaths</name> + + <value> + <!-- Hadoop 2 requirements --> + + $HADOOP_PREFIX/share/hadoop/common/.*.jar, + $HADOOP_PREFIX/share/hadoop/common/lib/.*.jar, + $HADOOP_PREFIX/share/hadoop/hdfs/.*.jar, + $HADOOP_PREFIX/share/hadoop/mapreduce/.*.jar, + $HADOOP_PREFIX/share/hadoop/yarn/.*.jar, + /usr/lib/hadoop/.*.jar, + /usr/lib/hadoop/lib/.*.jar, + /usr/lib/hadoop-hdfs/.*.jar, + /usr/lib/hadoop-mapreduce/.*.jar, + /usr/lib/hadoop-yarn/.*.jar, + + $ACCUMULO_HOME/server/, + $ACCUMULO_HOME/lib/accumulo-server.jar, + $ACCUMULO_HOME/core/target/classes/, + $ACCUMULO_HOME/lib/accumulo-core.jar, + $ACCUMULO_HOME/start/target/classes/, + $ACCUMULO_HOME/lib/accumulo-start.jar, + $ACCUMULO_HOME/fate/target/classes/, + $ACCUMULO_HOME/lib/accumulo-fate.jar, + $ACCUMULO_HOME/proxy/target/classes/, + $ACCUMULO_HOME/lib/accumulo-proxy.jar, + $ACCUMULO_HOME/lib/[^.].*.jar, + $ZOOKEEPER_HOME/zookeeper[^.].*.jar, + $HADOOP_CONF_DIR, + $HADOOP_PREFIX/[^.].*.jar, + $HADOOP_PREFIX/lib/[^.].*.jar, + </value> + <description>Classpaths that accumulo checks for updates and class files.</description> + </property> +</configuration> http://git-wip-us.apache.org/repos/asf/accumulo/blob/d137a4f9/conf/templates/accumulo.policy.example ---------------------------------------------------------------------- diff --git a/conf/templates/accumulo.policy.example b/conf/templates/accumulo.policy.example new file mode 100644 index 0000000..2964f06 --- /dev/null +++ b/conf/templates/accumulo.policy.example @@ -0,0 +1,143 @@ +/* + * 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. + */ + +grant codeBase "file:${java.home}/lib/ext/*" { + permission java.security.AllPermission; +}; + +// These should all be empty in a fielded system +grant codeBase "file:${org.apache.accumulo.core.home.dir}/src/server/target/classes/" { + permission java.security.AllPermission; +}; +grant codeBase "file:${org.apache.accumulo.core.home.dir}/src/core/target/classes/" { + permission java.security.AllPermission; +}; +grant codeBase "file:${org.apache.accumulo.core.home.dir}/src/start/target/classes/" { + permission java.security.AllPermission; +}; +grant codeBase "file:${org.apache.accumulo.core.home.dir}/src/examples/target/classes/" { + permission java.security.AllPermission; +}; + +grant codebase "file:${hadoop.home.dir}/*" { + permission java.lang.reflect.ReflectPermission "suppressAccessChecks"; + permission java.lang.RuntimePermission "shutdownHooks"; // hadoop libs use executables to discover usernames, groups, etc. + permission java.lang.RuntimePermission "loadLibrary.*"; + permission java.io.FilePermission "<<ALL FILES>>", "read, execute"; + permission java.io.FilePermission "/tmp", "write, delete"; + permission java.io.FilePermission "/tmp/-", "write, delete"; + permission java.io.FilePermission "/", "write"; + permission java.net.SocketPermission "*", "connect, resolve"; + permission java.util.PropertyPermission "java.library.path", "read"; + permission java.util.PropertyPermission "user.dir", "read"; + permission java.util.PropertyPermission "org.apache.commons.logging.*", "read"; + permission java.util.PropertyPermission "entityExpansionLimit", "read"; + permission java.util.PropertyPermission "maxOccurLimit", "read"; + permission java.util.PropertyPermission "os.name", "read"; +}; + +grant codebase "file:${hadoop.home.dir}/lib/*" { + // monitor's jetty web service + permission java.security.SecurityPermission "configurationPermission"; + permission java.security.SecurityPermission "tablesPermission"; + permission java.security.SecurityPermission "zookeeperWriterPermission"; + permission java.security.SecurityPermission "tableManagerPermission"; + permission java.security.SecurityPermission "transportPoolPermission"; + permission java.security.SecurityPermission "systemCredentialsPermission"; + permission java.lang.reflect.ReflectPermission "suppressAccessChecks"; + // need to accept web requests, and talk to job tracker, name node, etc. + permission java.net.SocketPermission "*", "accept, listen, resolve, connect, resolve"; + permission java.lang.RuntimePermission "getenv.*"; + permission java.lang.RuntimePermission "loadLibrary.*"; + permission java.util.PropertyPermission "org.mortbay.*", "read"; + permission java.util.PropertyPermission "VERBOSE", "read"; + permission java.util.PropertyPermission "IGNORED", "read"; + permission java.util.PropertyPermission "ISO_8859_1", "read"; + permission java.util.PropertyPermission "org.apache.commons.logging.*", "read"; + permission java.util.PropertyPermission "accumulo.*", "read"; + permission java.util.PropertyPermission "org.jfree.*", "read"; + permission java.util.PropertyPermission "elementAttributeLimit", "read"; + permission java.util.PropertyPermission "entityExpansionLimit", "read"; + permission java.util.PropertyPermission "maxOccurLimit", "read"; + // some resources come out of accumulo jars + permission java.lang.RuntimePermission "getClassLoader"; + permission java.io.FilePermission "${org.apache.accumulo.core.home.dir}/lib/*", "read"; + permission java.io.FilePermission "${org.apache.accumulo.core.home.dir}/src/-", "read"; + permission java.io.FilePermission "${hadoop.home.dir}/lib/*", "read"; + // images are cached in /tmp + permission java.io.FilePermission "/tmp/*", "read, write"; + permission java.io.FilePermission "/", "write"; +}; + +grant codebase "file:${zookeeper.home.dir}/*" { + permission java.net.SocketPermission "*", "connect, resolve"; + permission java.util.PropertyPermission "user.*", "read"; + permission java.util.PropertyPermission "java.*", "read"; + permission java.util.PropertyPermission "zookeeper.*", "read"; + permission java.util.PropertyPermission "jute.*", "read"; + permission java.util.PropertyPermission "os.*", "read"; + // accumulo properties read in callbacks + permission java.util.PropertyPermission "accumulo.*", "read"; + permission java.security.SecurityPermission "configurationPermission"; + permission java.security.SecurityPermission "tablesPermission"; + permission java.security.SecurityPermission "zookeeperWriterPermission"; + permission java.security.SecurityPermission "tableManagerPermission"; + permission java.security.SecurityPermission "transportPoolPermission"; + permission java.security.SecurityPermission "systemCredentialsPermission"; + permission java.lang.reflect.ReflectPermission "suppressAccessChecks"; + permission java.lang.RuntimePermission "exitVM"; +}; + +grant codebase "file:${org.apache.accumulo.core.home.dir}/lib/ext/*" { +}; + +grant codebase "file:${org.apache.accumulo.core.home.dir}/lib/*" { + permission java.lang.reflect.ReflectPermission "suppressAccessChecks"; + // logging, configuration and getting user id + permission java.io.FilePermission "<<ALL FILES>>", "read, write, execute, delete"; + permission java.util.PropertyPermission "*", "read, write"; + permission java.lang.RuntimePermission "getenv.*"; + permission java.lang.RuntimePermission "getClassLoader"; + permission java.lang.RuntimePermission "loadLibrary.*"; + permission java.lang.RuntimePermission "accessDeclaredMembers"; + permission java.lang.RuntimePermission "selectorProvider"; + permission java.lang.RuntimePermission "accessClassInPackage.*"; + permission java.lang.RuntimePermission "readFileDescriptor"; + permission java.lang.RuntimePermission "writeFileDescriptor"; + permission java.lang.RuntimePermission "modifyThread"; + permission java.lang.RuntimePermission "modifyThreadGroup"; + permission java.lang.RuntimePermission "createClassLoader"; + permission java.lang.RuntimePermission "setContextClassLoader"; + permission java.lang.RuntimePermission "exitVM"; + permission java.lang.RuntimePermission "shutdownHooks"; + permission java.security.SecurityPermission "getPolicy"; + permission java.security.SecurityPermission "getProperty.*"; + permission java.security.SecurityPermission "putProviderProperty.*"; + permission java.security.SecurityPermission "setSystemScope"; + permission java.security.SecurityPermission "configurationPermission"; + permission java.security.SecurityPermission "tablesPermission"; + permission java.security.SecurityPermission "zookeeperWriterPermission"; + permission java.security.SecurityPermission "tableManagerPermission"; + permission java.security.SecurityPermission "transportPoolPermission"; + permission java.security.SecurityPermission "systemCredentialsPermission"; + permission java.util.logging.LoggingPermission "control"; + permission java.net.NetPermission "getProxySelector"; + permission javax.management.MBeanServerPermission "createMBeanServer"; + permission javax.management.MBeanTrustPermission "register"; + permission javax.management.MBeanPermission "*", "registerMBean"; + permission java.net.SocketPermission "*", "accept, connect, listen, resolve"; +}; http://git-wip-us.apache.org/repos/asf/accumulo/blob/d137a4f9/conf/templates/gc ---------------------------------------------------------------------- diff --git a/conf/templates/gc b/conf/templates/gc new file mode 100644 index 0000000..63fb8bb --- /dev/null +++ b/conf/templates/gc @@ -0,0 +1,16 @@ +# 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. + +localhost http://git-wip-us.apache.org/repos/asf/accumulo/blob/d137a4f9/conf/templates/generic_logger.xml ---------------------------------------------------------------------- diff --git a/conf/templates/generic_logger.xml b/conf/templates/generic_logger.xml new file mode 100644 index 0000000..1e4e243 --- /dev/null +++ b/conf/templates/generic_logger.xml @@ -0,0 +1,87 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + 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. +--> +<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> +<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> + + <!-- Write out everything at the DEBUG level to the debug log --> + <appender name="A2" class="org.apache.log4j.RollingFileAppender"> + <param name="File" value="${org.apache.accumulo.core.dir.log}/${org.apache.accumulo.core.application}_${org.apache.accumulo.core.ip.localhost.hostname}.debug.log"/> + <param name="MaxFileSize" value="1000MB"/> + <param name="MaxBackupIndex" value="10"/> + <param name="Threshold" value="DEBUG"/> + <layout class="org.apache.log4j.PatternLayout"> + <param name="ConversionPattern" value="%d{ISO8601} [%-8c{2}] %-5p: %m%n"/> + </layout> + </appender> + + <!-- Write out INFO and higher to the regular log --> + <appender name="A3" class="org.apache.log4j.RollingFileAppender"> + <param name="File" value="${org.apache.accumulo.core.dir.log}/${org.apache.accumulo.core.application}_${org.apache.accumulo.core.ip.localhost.hostname}.log"/> + <param name="MaxFileSize" value="1000MB"/> + <param name="MaxBackupIndex" value="10"/> + <param name="Threshold" value="INFO"/> + <layout class="org.apache.log4j.PatternLayout"> + <param name="ConversionPattern" value="%d{ISO8601} [%-8c{2}] %-5p: %m%n"/> + </layout> + </appender> + + <!-- Send all logging data to a centralized logger --> + <appender name="N1" class="org.apache.log4j.net.SocketAppender"> + <param name="remoteHost" value="${org.apache.accumulo.core.host.log}"/> + <param name="port" value="${org.apache.accumulo.core.host.log.port}"/> + <param name="application" value="${org.apache.accumulo.core.application}:${org.apache.accumulo.core.ip.localhost.hostname}"/> + <param name="Threshold" value="WARN"/> + </appender> + + <!-- If the centralized logger is down, buffer the log events, but drop them if it stays down --> + <appender name="ASYNC" class="org.apache.log4j.AsyncAppender"> + <appender-ref ref="N1" /> + </appender> + + <!-- Log accumulo events to the debug, normal and remote logs. --> + <logger name="org.apache.accumulo" additivity="false"> + <level value="DEBUG"/> + <appender-ref ref="A2" /> + <appender-ref ref="A3" /> + <appender-ref ref="ASYNC" /> + </logger> + + <logger name="org.apache.accumulo.server.security.Auditor"> + <level value="WARN"/> <!-- change to INFO for authorization events --> + </logger> + + <logger name="org.apache.accumulo.core.file.rfile.bcfile"> + <level value="INFO"/> + </logger> + + <logger name="org.mortbay.log"> + <level value="WARN"/> + </logger> + + <logger name="com.yahoo.zookeeper"> + <level value="ERROR"/> + </logger> + + <!-- Log non-accumulo events to the debug and normal logs. --> + <root> + <level value="INFO"/> + <appender-ref ref="A2" /> + <appender-ref ref="A3" /> + </root> + +</log4j:configuration> http://git-wip-us.apache.org/repos/asf/accumulo/blob/d137a4f9/conf/templates/log4j.properties ---------------------------------------------------------------------- diff --git a/conf/templates/log4j.properties b/conf/templates/log4j.properties new file mode 100644 index 0000000..a4bcb2e --- /dev/null +++ b/conf/templates/log4j.properties @@ -0,0 +1,41 @@ +# 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. + +# default logging properties: +# by default, log everything at INFO or higher to the console +log4j.rootLogger=INFO,A1 + +# hide Jetty junk +log4j.logger.org.mortbay.log=WARN,A1 + +# hide "Got brand-new compresssor" messages +log4j.logger.org.apache.hadoop.io.compress=WARN,A1 + +# hide junk from TestRandomDeletes +log4j.logger.org.apache.accumulo.test.TestRandomDeletes=WARN,A1 + +# hide junk from VFS +log4j.logger.org.apache.commons.vfs2.impl.DefaultFileSystemManager=WARN,A1 + +# hide almost everything from zookeeper +log4j.logger.org.apache.zookeeper=ERROR,A1 + +# hide AUDIT messages in the shell, alternatively you could send them to a different logger +log4j.logger.org.apache.accumulo.core.util.shell.Shell.audit=WARN,A1 + +# Send most things to the console +log4j.appender.A1=org.apache.log4j.ConsoleAppender +log4j.appender.A1.layout.ConversionPattern=%d{ISO8601} [%-8c{2}] %-5p: %m%n +log4j.appender.A1.layout=org.apache.log4j.PatternLayout http://git-wip-us.apache.org/repos/asf/accumulo/blob/d137a4f9/conf/templates/masters ---------------------------------------------------------------------- diff --git a/conf/templates/masters b/conf/templates/masters new file mode 100644 index 0000000..63fb8bb --- /dev/null +++ b/conf/templates/masters @@ -0,0 +1,16 @@ +# 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. + +localhost http://git-wip-us.apache.org/repos/asf/accumulo/blob/d137a4f9/conf/templates/monitor ---------------------------------------------------------------------- diff --git a/conf/templates/monitor b/conf/templates/monitor new file mode 100644 index 0000000..63fb8bb --- /dev/null +++ b/conf/templates/monitor @@ -0,0 +1,16 @@ +# 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. + +localhost http://git-wip-us.apache.org/repos/asf/accumulo/blob/d137a4f9/conf/templates/monitor_logger.xml ---------------------------------------------------------------------- diff --git a/conf/templates/monitor_logger.xml b/conf/templates/monitor_logger.xml new file mode 100644 index 0000000..91a7671 --- /dev/null +++ b/conf/templates/monitor_logger.xml @@ -0,0 +1,64 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + 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. +--> +<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> +<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> + + <!-- Write out everything at the DEBUG level to the debug log --> + <appender name="A2" class="org.apache.log4j.RollingFileAppender"> + <param name="File" value="${org.apache.accumulo.core.dir.log}/${org.apache.accumulo.core.application}_${org.apache.accumulo.core.ip.localhost.hostname}.debug.log"/> + <param name="MaxFileSize" value="100MB"/> + <param name="MaxBackupIndex" value="10"/> + <param name="Threshold" value="DEBUG"/> + <layout class="org.apache.log4j.PatternLayout"> + <param name="ConversionPattern" value="%d{ISO8601} [%-8c{2}] %-5p: %X{application} %m%n"/> + </layout> + </appender> + + <!-- Write out INFO and higher to the regular log --> + <appender name="A3" class="org.apache.log4j.RollingFileAppender"> + <param name="File" value="${org.apache.accumulo.core.dir.log}/${org.apache.accumulo.core.application}_${org.apache.accumulo.core.ip.localhost.hostname}.log"/> + <param name="MaxFileSize" value="100MB"/> + <param name="MaxBackupIndex" value="10"/> + <param name="Threshold" value="INFO"/> + <layout class="org.apache.log4j.PatternLayout"> + <param name="ConversionPattern" value="%d{ISO8601} [%-8c{2}] %-5p: %X{application} %m%n"/> + </layout> + </appender> + + <!-- Keep the last few log messages for display to the user --> + <appender name="GUI" class="org.apache.accumulo.server.monitor.LogService"> + <param name="keep" value="40"/> + <param name="Threshold" value="WARN"/> + </appender> + + <!-- Log accumulo messages to debug, normal and GUI --> + <logger name="org.apache.accumulo" additivity="false"> + <level value="DEBUG"/> + <appender-ref ref="A2" /> + <appender-ref ref="A3" /> + <appender-ref ref="GUI" /> + </logger> + + <!-- Log non-accumulo messages to debug, normal logs. --> + <root> + <level value="INFO"/> + <appender-ref ref="A2" /> + <appender-ref ref="A3" /> + </root> + +</log4j:configuration> http://git-wip-us.apache.org/repos/asf/accumulo/blob/d137a4f9/conf/templates/slaves ---------------------------------------------------------------------- diff --git a/conf/templates/slaves b/conf/templates/slaves new file mode 100644 index 0000000..63fb8bb --- /dev/null +++ b/conf/templates/slaves @@ -0,0 +1,16 @@ +# 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. + +localhost http://git-wip-us.apache.org/repos/asf/accumulo/blob/d137a4f9/conf/templates/tracers ---------------------------------------------------------------------- diff --git a/conf/templates/tracers b/conf/templates/tracers new file mode 100644 index 0000000..63fb8bb --- /dev/null +++ b/conf/templates/tracers @@ -0,0 +1,16 @@ +# 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. + +localhost