Hey Mujtaba,
Thanks for the hints. I noticed that I still needed the client jar for
the phoenix server in order to get it to run.
I also checked out the tephra log and this is what I have:
Wed Mar 30 23:50:38 UTC 2016 Starting tephra service on
f826338-hmaster1.f826338
time(seconds) unlimited
file(blocks) unlimited
data(kbytes) unlimited
stack(kbytes) 8192
coredump(blocks) 0
memory(kbytes) unlimited
locked memory(kbytes) 64
process 1048576
nofiles 1048576
vmemory(kbytes) unlimited
locks unlimited
Command: /usr/lib/jvm/java-8-oracle/bin/java -XX:+UseConcMarkSweepGC
-cp
/opt/hbase/bin/../lib/*:/opt/hbase/bin/../conf/:/opt/hbase/phoenix-assembly/target/*:/opt/hbase/lib:
co.cask.tephra.TransactionServiceMain
2016-03-30 23:50:41,941 INFO [main] zookeeper.ZooKeeper: Client
environment:zookeeper.version=3.4.6-1569965, built on 02/20/2014 09:09 GMT
2016-03-30 23:50:41,942 INFO [main] zookeeper.ZooKeeper: Client
environment:host.name=f826338-hmaster1.f826338
2016-03-30 23:50:41,942 INFO [main] zookeeper.ZooKeeper: Client
environment:java.version=1.8.0_74
2016-03-30 23:50:41,942 INFO [main] zookeeper.ZooKeeper: Client
environment:java.vendor=Oracle Corporation
2016-03-30 23:50:41,942 INFO [main] zookeeper.ZooKeeper: Client
environment:java.home=/usr/lib/jvm/java-8-oracle/jre
2016-03-30 23:50:41,942 INFO [main] zookeeper.ZooKeeper: Client
environment:java.class.path=/opt/hbase/bin/../lib/hadoop-mapreduce-client-core-2.5.1.jar:/opt/hbase/bin/../lib/api-asn1-api-1.0.0-M20.jar:/opt/hbase/bin/../lib/hadoop-mapreduce-client-app-2.5.1.jar:/opt/hbase/bin/../lib/commons-beanutils-1.7.0.jar:/opt/hbase/bin/../lib/jsp-2.1-6.1.14.jar:/opt/hbase/bin/../lib/jasper-compiler-5.5.23.jar:/opt/hbase/bin/../lib/hbase-rest-1.1.3.jar:/opt/hbase/bin/../lib/hadoop-annotations-2.5.1.jar:/opt/hbase/bin/../lib/hbase-hadoop2-compat-1.1.3.jar:/opt/hbase/bin/../lib/hadoop-common-2.5.1.jar:/opt/hbase/bin/../lib/disruptor-3.3.0.jar:/opt/hbase/bin/../lib/jackson-core-asl-1.9.13.jar:/opt/hbase/bin/../lib/aopalliance-1.0.jar:/opt/hbase/bin/../lib/jaxb-api-2.2.2.jar:/opt/hbase/bin/../lib/jaxb-impl-2.2.3-1.jar:/opt/hbase/bin/../lib/java-xmlbuilder-0.4.jar:/opt/hbase/bin/../lib/protobuf-java-2.5.0.jar:/opt/hbase/bin/../lib/junit-4.12.jar:/opt/hbase/bin/../lib/hbase-shell-1.1.3.jar:/opt/hbase/bin/../lib/phoenix-4.7.0-HBase-1.1-server.jar:/opt/hbase/bin/../lib/hbase-it-1.1.3.jar:/opt/hbase/bin/../lib/jruby-complete-1.6.8.jar:/opt/hbase/bin/../lib/spymemcached-2.11.6.jar:/opt/hbase/bin/../lib/hbase-server-1.1.3-tests.jar:/opt/hbase/bin/../lib/slf4j-log4j12-1.7.5.jar:/opt/hbase/bin/../lib/api-util-1.0.0-M20.jar:/opt/hbase/bin/../lib/jets3t-0.9.0.jar:/opt/hbase/bin/../lib/netty-all-4.0.23.Final.jar:/opt/hbase/bin/../lib/paranamer-2.3.jar:/opt/hbase/bin/../lib/jersey-core-1.9.jar:/opt/hbase/bin/../lib/servlet-api-2.5-6.1.14.jar:/opt/hbase/bin/../lib/leveldbjni-all-1.8.jar:/opt/hbase/bin/../lib/commons-io-2.4.jar:/opt/hbase/bin/../lib/commons-logging-1.2.jar:/opt/hbase/bin/../lib/commons-compress-1.4.1.jar:/opt/hbase/bin/../lib/jersey-guice-1.9.jar:/opt/hbase/bin/../lib/xmlenc-0.52.jar:/opt/hbase/bin/../lib/apacheds-kerberos-codec-2.0.0-M15.jar:/opt/hbase/bin/../lib/hadoop-mapreduce-client-common-2.5.1.jar:/opt/hbase/bin/../lib/jetty-sslengine-6.1.26.jar:/opt/hbase/bin/../lib/hbase-hadoop-compat-1.1.3.jar:/opt/hbase/bin/../lib/jsch-0.1.42.jar:/opt/hbase/bin/../lib/jcodings-1.0.8.jar:/opt/hbase/bin/../lib/hadoop-client-2.5.1.jar:/opt/hbase/bin/../lib/hbase-it-1.1.3-tests.jar:/opt/hbase/bin/../lib/jersey-json-1.9.jar:/opt/hbase/bin/../lib/commons-collections-3.2.2.jar:/opt/hbase/bin/../lib/hbase-server-1.1.3.jar:/opt/hbase/bin/../lib/jetty-util-6.1.26.jar:/opt/hbase/bin/../lib/asm-3.1.jar:/opt/hbase/bin/../lib/javax.inject-1.jar:/opt/hbase/bin/../lib/servlet-api-2.5.jar:/opt/hbase/bin/../lib/jetty-6.1.26.jar:/opt/hbase/bin/../lib/jersey-server-1.9.jar:/opt/hbase/bin/../lib/hbase-annotations-1.1.3.jar:/opt/hbase/bin/../lib/jackson-mapper-asl-1.9.13.jar:/opt/hbase/bin/../lib/commons-cli-1.2.jar:/opt/hbase/bin/../lib/joni-2.1.2.jar:/opt/hbase/bin/../lib/jettison-1.3.3.jar:/opt/hbase/bin/../lib/jasper-runtime-5.5.23.jar:/opt/hbase/bin/../lib/jackson-jaxrs-1.9.13.jar:/opt/hbase/bin/../lib/commons-math-2.2.jar:/opt/hbase/bin/../lib/hbase-resource-bundle-1.1.3.jar:/opt/hbase/bin/../lib/hbase-common-1.1.3.jar:/opt/hbase/bin/../lib/jsp-api-2.1-6.1.14.jar:/opt/hbase/bin/../lib/httpclient-4.2.5.jar:/opt/hbase/bin/../lib/hadoop-yarn-client-2.5.1.jar:/opt/hbase/bin/../lib/guice-servlet-3.0.jar:/opt/hbase/bin/../lib/snappy-java-1.0.4.1.jar:/opt/hbase/bin/../lib/httpcore-4.1.3.jar:/opt/hbase/bin/../lib/hadoop-hdfs-2.5.1.jar:/opt/hbase/bin/../lib/commons-httpclient-3.1.jar:/opt/hbase/bin/../lib/hbase-protocol-1.1.3.jar:/opt/hbase/bin/../lib/commons-net-3.1.jar:/opt/hbase/bin/../lib/commons-configuration-1.6.jar:/opt/hbase/bin/../lib/hadoop-mapreduce-client-jobclient-2.5.1.jar:/opt/hbase/bin/../lib/hbase-examples-1.1.3.jar:/opt/hbase/bin/../lib/hbase-procedure-1.1.3.jar:/opt/hbase/bin/../lib/apacheds-i18n-2.0.0-M15.jar:/opt/hbase/bin/../lib/findbugs-annotations-1.3.9-1.jar:/opt/hbase/bin/../lib/commons-el-1.0.jar:/opt/hbase/bin/../lib/commons-digester-1.8.jar:/opt/hbase/bin/../lib/netty-3.2.4.Final.jar:/opt/hbase/bin/../lib/guice-3.0.jar:/opt/hbase/bin/../lib/avro-1.7.4.jar:/opt/hbase/bin/../lib/commons-daemon-1.0.13.jar:/opt/hbase/bin/../lib/hbase-thrift-1.1.3.jar:/opt/hbase/bin/../lib/xz-1.0.jar:/opt/hbase/bin/../lib/jsr305-1.3.9.jar:/opt/hbase/bin/../lib/hadoop-yarn-common-2.5.1.jar:/opt/hbase/bin/../lib/commons-beanutils-core-1.8.0.jar:/opt/hbase/bin/../lib/hbase-prefix-tree-1.1.3.jar:/opt/hbase/bin/../lib/hadoop-yarn-server-common-2.5.1.jar:/opt/hbase/bin/../lib/htrace-core-3.1.0-incubating.jar:/opt/hbase/bin/../lib/commons-math3-3.1.1.jar:/opt/hbase/bin/../lib/jamon-runtime-2.3.1.jar:/opt/hbase/bin/../lib/hbase-client-1.1.3.jar:/opt/hbase/bin/../lib/slf4j-api-1.7.7.jar:/opt/hbase/bin/../lib/activation-1.1.jar:/opt/hbase/bin/../lib/zookeeper-3.4.6.jar:/opt/hbase/bin/../lib/commons-lang-2.6.jar:/opt/hbase/bin/../lib/hbase-annotations-1.1.3-tests.jar:/opt/hbase/bin/../lib/commons-codec-1.9.jar:/opt/hbase/bin/../lib/hadoop-mapreduce-client-shuffle-2.5.1.jar:/opt/hbase/bin/../lib/hbase-common-1.1.3-tests.jar:/opt/hbase/bin/../lib/guava-12.0.1.jar:/opt/hbase/bin/../lib/hadoop-auth-2.5.1.jar:/opt/hbase/bin/../lib/libthrift-0.9.0.jar:/opt/hbase/bin/../lib/metrics-core-2.2.0.jar:/opt/hbase/bin/../lib/hadoop-yarn-api-2.5.1.jar:/opt/hbase/bin/../lib/jackson-xc-1.9.13.jar:/opt/hbase/bin/../lib/log4j-1.2.17.jar:/opt/hbase/bin/../lib/jersey-client-1.9.jar:/opt/hbase/bin/../conf/:/opt/hbase/phoenix-assembly/target/*:/opt/hbase/lib:
2016-03-30 23:50:41,942 INFO [main] zookeeper.ZooKeeper: Client
environment:java.library.path=/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
2016-03-30 23:50:41,942 INFO [main] zookeeper.ZooKeeper: Client
environment:java.io.tmpdir=/tmp
2016-03-30 23:50:41,942 INFO [main] zookeeper.ZooKeeper: Client
environment:java.compiler=<NA>
2016-03-30 23:50:41,942 INFO [main] zookeeper.ZooKeeper: Client
environment:os.name=Linux
2016-03-30 23:50:41,942 INFO [main] zookeeper.ZooKeeper: Client
environment:os.arch=amd64
2016-03-30 23:50:41,942 INFO [main] zookeeper.ZooKeeper: Client
environment:os.version=4.4.6-coreos
2016-03-30 23:50:41,943 INFO [main] zookeeper.ZooKeeper: Client
environment:user.name=hbase
2016-03-30 23:50:41,943 INFO [main] zookeeper.ZooKeeper: Client
environment:user.home=/opt/hbase
2016-03-30 23:50:41,943 INFO [main] zookeeper.ZooKeeper: Client
environment:user.dir=/opt/hbase
2016-03-30 23:50:41,944 INFO [main] zookeeper.ZooKeeper: Initiating
client connection, connectString=f826338-zookeeper.f826338
sessionTimeout=90000
watcher=co.cask.tephra.zookeeper.TephraZKClientService$5@71b1176b
2016-03-30 23:50:42,021 INFO
[main-SendThread(f826338-zookeeper.f826338:2181)] zookeeper.ClientCnxn:
Opening socket connection to server
f826338-zookeeper.f826338/172.18.0.2:2181. Will not attempt to
authenticate using SASL (unknown error)
2016-03-30 23:50:42,174 INFO
[main-SendThread(f826338-zookeeper.f826338:2181)] zookeeper.ClientCnxn:
Socket connection established to
f826338-zookeeper.f826338/172.18.0.2:2181, initiating session
2016-03-30 23:50:42,225 INFO
[main-SendThread(f826338-zookeeper.f826338:2181)] zookeeper.ClientCnxn:
Session establishment complete on server
f826338-zookeeper.f826338/172.18.0.2:2181, sessionid =
0x153c9efad3b0000, negotiated timeout = 40000
2016-03-30 23:50:42,284 INFO [main]
inmemory.InMemoryTransactionService: Configuring TransactionService,
address: 0.0.0.0, port: 15165, threads: 20, io threads: 2, max read
buffer (bytes): 16777216
2016-03-30 23:50:42,285 INFO [main] tephra.TransactionServiceMain:
Starting TransactionServiceMain
Exception in thread "main" java.lang.NoClassDefFoundError:
com/google/common/util/concurrent/Service$Listener
at
co.cask.tephra.distributed.TransactionService.doStart(TransactionService.java:78)
at
com.google.common.util.concurrent.AbstractService.start(AbstractService.java:90)
at
com.google.common.util.concurrent.AbstractService.startAndWait(AbstractService.java:129)
at
co.cask.tephra.TransactionServiceMain.start(TransactionServiceMain.java:116)
at
co.cask.tephra.TransactionServiceMain.doMain(TransactionServiceMain.java:83)
at
co.cask.tephra.TransactionServiceMain.main(TransactionServiceMain.java:47)
Caused by: java.lang.ClassNotFoundException:
com.google.common.util.concurrent.Service$Listener
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 6 more
2016-03-30 23:50:42,289 INFO [Thread-0] tephra.TransactionServiceMain:
Stopping TransactionServiceMain
This is the hbase-site.xml for the master (which tephra also runs on):
<configuration>
<property>
<name>hbase.master.loadbalancer.class</name>
<value>org.apache.phoenix.hbase.index.balancer.IndexLoadBalancer</value>
</property>
<property>
<name>hbase.coprocessor.master.classes</name>
<value>org.apache.phoenix.hbase.index.master.IndexMasterObserver</value>
</property>
<property>
<name>data.tx.snapshot.dir</name>
<value>/tmp/tephra/snapshots</value>
</property>
<property>
<name>data.tx.timeout</name>
<value>60</value>
</property>
<property>
<name>hbase.rootdir</name>
<value>hdfs://mycluster/hbase</value>
</property>
<property>
<name>zookeeper.znode.parent</name>
<value>/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>f826338-zookeeper.f826338</value>
</property>
</configuration>
On 31/03/2016 4:47 AM, Mujtaba Chohan wrote:
Few pointers:
- phoenix-core-*.jar is a subset of phoenix-*-server.jar so just
phoenix-*-server.jar in hbase/lib is enough for region servers and master.
- phoenix-server-*-runnable.jar and phoenix-*-server.jar should be
enough for query server. Client jar would only duplicate HBase classes
in hbase/lib.
- Check for exception starting tephra in
/tmp/tephra-*/tephra-service-*.log (assuming this is the log location
configured in your tephra-env.sh)
- mujtaba
On Wed, Mar 30, 2016 at 2:54 AM, F21 <f21.gro...@gmail.com
<mailto:f21.gro...@gmail.com>> wrote:
I have been trying to get tephra working, but wasn't able to get
it starting successfully.
I have a HDFS and HBase 1.1 cluster running in docker containers.
I have confirmed that Phoenix, HDFS and HBase are both working
correctly. Phoenix and the Phoenix query server are also installed
correctly and I can access the cluster using Squirrel SQL with the
thin client.
Here's what I have done:
In the hbase-site.xml of the region servers and masters, add the
following:
<property>
<name>data.tx.snapshot.dir</name>
<value>/tmp/tephra/snapshots</value>
</property>
<property>
<name>data.tx.timeout</name>
<value>60</value>
</property>
In the hbase-site.xml of the phoenix query server, add:
<property>
<name>phoenix.transactions.enabled</name>
<value>true</value>
</property>
For the master, copy the following to hbase/lib:
phoenix-4.7.0-HBase-1.1-server
phoenix-core-4.7.0-HBase-1.1
Also, copy tephra and tephra-env.sh to hbase/bin
On the region server, copy the following to hbase/lib:
phoenix-4.7.0-HBase-1.1-server
phoenix-core-4.7.0-HBase-1.1
For the phoenix query server, copy the following to hbase/lib:
phoenix-server-4.7.0-HBase-1.1-runnable
phoenix-4.7.0-HBase-1.1-client
This is what I get when I try to start tephra on the master:
root@f826338-hmaster1:/opt/hbase/bin# ./tephra start
Wed Mar 30 09:54:08 UTC 2016 Starting tephra service on
f826338-hmaster1.f826338
Running class co.cask.tephra.TransactionServiceMain
root@f826338-hmaster1:/opt/hbase/bin# ./tephra status
checking status
* tephra is not running
Any pointers appreciated! :)