"You should avoid running Accumulo as the hdfs super user, both as a matter of proper separation of concerns and as a practical need if you are going to run Accumulo in a production environment with multiple HDFS users."
Is there a guide on how to do this? If i try to start accumulo shell as other-than-hdfs I always get errors. We would like to run as tenant users. kesten Kesten Broughton | Software Developer | 21CT ________________________________________ From: Sean Busbey [busbey+li...@cloudera.com] Sent: Thursday, January 16, 2014 2:00 PM To: Accumulo User List Subject: Re: accumulo startup issue: Accumulo not initialized, there is no instance id at /accumulo/instance_id Thanks for the overview Charles! Any chance I can convince you to polish this up a little and add it to our user documentation as a quickstart guide? (Notes inline below) On Thu, Jan 16, 2014 at 1:50 PM, Ott, Charles H. <charles.h....@leidos.com<mailto:charles.h....@leidos.com>> wrote: Disclaimer, Not advocating this is the best approach, just what I’m currently doing, put this together pretty quick, but it should be mostly complete for settting up accumulo on cdh hdfs/zk <snip> echo "Increasing Swapiness Factor to limit use of swap space." echo "# swappiness for accumulo" >> /etc/sysctl.conf echo "vm.swappiness = 10" >> /etc/sysctl.conf You should set vm.swappiness to 0. Both Hadoop and Accumulo recommend this. <snip> #accumulo-site.xml <property> <name>general.classpaths</name> <value> $ACCUMULO_HOME/server/target/classes/, $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, $HADOOP_HDFS_HOME/.*.jar, $HADOOP_HDFS_HOME/lib/.*.jar, $HADOOP_MAPREDUCE_HOME/.*.jar, $HADOOP_MAPREDUCE_HOME/lib/.*.jar </value> <description>Classpaths that accumulo checks for updates and class files. When using the Security Manager, please remove the ".../target/classes/" values. </description> </property> This will give you some warnings about multiple slf4j binaries on CDH4.4.0+ . You can fix it by making sure you only match jars with a version number. See an example[1]. then of course, always run your Accumulo binaries/scripts using the HDFS account. I’m sure I’m missing a few steps here and there… You should avoid running Accumulo as the hdfs super user, both as a matter of proper separation of concerns and as a practical need if you are going to run Accumulo in a production environment with multiple HDFS users. -Sean [1]: https://gist.github.com/busbey/8285352#file-accumulo-site-cdh4-xml-L99