Accumulo 2.0.0
Hadoop 3.2.0
Zookeeper 3.5.5 rolled back to 3.4.13
Ubuntu 19.04
Java 8
I managed to fix the ClassNotFoundException problem I was encountering with
accumulo init.
It may be true that I was using a quickstart procedure that was written for
v1.x. it turns out that it does work for v2.x. Problem was that I was trying
to use Zk v3.5.5. When I rolled beck to Zk v3.4.13. the CNFE problem went
away. Go figure. I did, however, need to explicitly specify the rpc port in
hdfs-site.xml. Never had to do that in the past. But based on accumulo init's
complaints, I realized port 8020 was not open.
So I did this in hdfs-site.xml:
<property>
<name>dfs.namenode.rpc-address</name>
<value>localhost:8020</value>
</property>
After bouncing Hadoop, Accumulo initialized and then was able to start.
On 8/30/19, 3:41 PM, "Christopher" <[email protected]> wrote:
On Fri, Aug 30, 2019 at 3:11 PM Roberts, Geoffry [USA]
<[email protected]> wrote:
>
> I am following the quickstart instructions. When I get to accumulo init
I get a ClassNotFoundException on org.apache.zookeeper.KeeperException. I have
ZOOKEEPER_HOME set in accumulo-env.sh and it is correct. Both Zookeeper and
Hadoop are running and the namenode is freshly formatted.
>
Do you mean these quickstart instructions?
https://urldefense.proofpoint.com/v2/url?u=https-3A__accumulo.apache.org_quickstart-2D1.x_&d=DwIFaQ&c=f4NRRID3zFYDyClb0wZXwA&r=hc5v62HpZrcalgHOsVfthsgLhE5LrDVBm9xDs5ozH5U&m=_Of7_qFM3VhWev2CDggprsDP8HYq1tPGLuuA3dJ07sk&s=B9_hkICvD4QkrkvMwx149mQr09gfvjjyGGzdSr_kdm4&e=
Those instructions are specific to Accumulo 1.x; nobody has published
an updated set of instructions for 2.x yet
>
>
> Here’s my classpath and it looks to me like Zk is present:
/usr/local/accumulo-2.0.0/conf:/usr/local/accumulo-2.0.0/lib/*:/usr/local/hadoop/etc/hadoop:/usr/local/zookeeper/*:/usr/local/hadoop/share/hadoop/client/*
>
Without knowing the contents of those directories, it's hard to say,
but it looks reasonable to me. How and where are you setting this
class path? From the error below, it looks like it's still not picking
up ZooKeeper. It could be a file permissions issue... maybe the
process running 'init' doesn't have permission to read or traverse
/usr/local/zookeeper?
>
>
> Is there anything else?
>
>
>
> The error:
>
>
>
> 2019-08-30 14:50:01,377 [start.Main] ERROR: Uncaught exception
>
> java.util.ServiceConfigurationError:
org.apache.accumulo.start.spi.KeywordExecutable: Provider
org.apache.accumulo.server.init.Initialize could not be instantiated
>
> at java.util.ServiceLoader.fail(ServiceLoader.java:232)
>
> at java.util.ServiceLoader.access$100(ServiceLoader.java:185)
>
> at
java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:384)
>
> at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:404)
>
> at java.util.ServiceLoader$1.next(ServiceLoader.java:480)
>
> at org.apache.accumulo.start.Main.checkDuplicates(Main.java:243)
>
> at org.apache.accumulo.start.Main.getExecutables(Main.java:234)
>
> at org.apache.accumulo.start.Main.main(Main.java:88)
>
> Caused by: java.lang.NoClassDefFoundError:
org/apache/zookeeper/KeeperException
>
> at java.lang.Class.getDeclaredConstructors0(Native Method)
>
> at java.lang.Class.privateGetDeclaredConstructors(Class.java:2671)
>
> at java.lang.Class.getConstructor0(Class.java:3075)
>
> at java.lang.Class.newInstance(Class.java:412)
>
> at
java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:380)
>
> ... 5 more
>
> Caused by: java.lang.ClassNotFoundException:
org.apache.zookeeper.KeeperException
>
> at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
>
> at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
>
> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
>
> at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
>
> ... 10 more
>
>
>
> Thanks