Skip to content

Commit 365d031

Browse files
committed
Update accumulo to 3.0.0
Switch to centos7-oj11 image as accumulo requires JDK 11.
1 parent 3178680 commit 365d031

8 files changed

+37
-55
lines changed

testing/accumulo/Dockerfile

+22-36
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,11 @@
1111
# limitations under the License.
1212

1313
ARG ARCH
14-
FROM testing/centos7-oj17:unlabelled$ARCH
14+
FROM testing/centos7-oj11:unlabelled$ARCH
1515

16-
ARG ACCUMULO_VERSION=1.7.4
17-
ARG HADOOP_VERSION=2.6.5
18-
ARG ZOOKEEPER_VERSION=3.4.14
19-
ARG JAVA8_ZULU_VERSION=8.56.0.21-ca-jdk8.0.302
16+
ARG ACCUMULO_VERSION=3.0.0
17+
ARG HADOOP_VERSION=3.3.5
18+
ARG ZOOKEEPER_VERSION=3.8.2
2019
ARG IMAGE_ROOT_INSTALL=/usr/local/lib
2120

2221
ENV HADOOP_HOME=$IMAGE_ROOT_INSTALL/hadoop
@@ -26,27 +25,15 @@ ENV ZOOKEEPER_HOME=$IMAGE_ROOT_INSTALL/zookeeper
2625
ARG HADOOP_CONF=$HADOOP_HOME/conf
2726
ENV HADOOP_PREFIX=$HADOOP_HOME
2827

29-
# TODO Apache Archive is rate limited -- these should probably go in S3
3028
ARG BASE_URL=https://archive.apache.org/dist
3129
ARG ACCUMULO_BINARY_PATH=$BASE_URL/accumulo/$ACCUMULO_VERSION/accumulo-$ACCUMULO_VERSION-bin.tar.gz
3230
ARG HADOOP_BINARY_PATH=$BASE_URL/hadoop/core/hadoop-$HADOOP_VERSION/hadoop-$HADOOP_VERSION.tar.gz
33-
ARG ZOOKEEPER_BINARY_PATH=$BASE_URL/zookeeper/zookeeper-$ZOOKEEPER_VERSION/zookeeper-$ZOOKEEPER_VERSION.tar.gz
31+
ARG ZOOKEEPER_BINARY_PATH=$BASE_URL/zookeeper/zookeeper-$ZOOKEEPER_VERSION/apache-zookeeper-$ZOOKEEPER_VERSION-bin.tar.gz
3432

3533
RUN yum update -y && \
36-
yum install -y gettext && \
37-
# Install Zulu JDK
38-
echo "Downloading zulu${JAVA8_ZULU_VERSION}-linux.x86_64.rpm..." && \
39-
curl -o /tmp/jdk8.rpm --url https://cdn.azul.com/zulu/bin/zulu${JAVA8_ZULU_VERSION}-linux.x86_64.rpm && \
40-
yum -y localinstall /tmp/jdk8.rpm && \
41-
rm /tmp/jdk8.rpm && \
42-
# Set JDK 8 as a default one
43-
alternatives --set java /usr/lib/jvm/zulu-8/jre/bin/java && \
44-
alternatives --set javac /usr/lib/jvm/zulu-8/bin/javac && \
34+
yum install -y make gcc-c++ && \
4535
yum clean all -y
4636

47-
# Override JAVA_HOME inherited from testing/centos7-oj17
48-
ENV JAVA_HOME=/usr/lib/jvm/zulu-8
49-
5037
RUN mkdir -p $IMAGE_ROOT_INSTALL
5138

5239
# Download Hadoop
@@ -61,39 +48,38 @@ RUN wget --quiet $ACCUMULO_BINARY_PATH && \
6148
rm accumulo-$ACCUMULO_VERSION-bin.tar.gz && \
6249
ln -s $IMAGE_ROOT_INSTALL/accumulo-$ACCUMULO_VERSION $ACCUMULO_HOME
6350

64-
# Copy sample Accumulo configuration files and update the instance.volumes property
65-
ENV CONF_SAMPLE_DIR=$ACCUMULO_HOME/conf/examples/3GB/standalone
66-
RUN cp \
67-
$CONF_SAMPLE_DIR/accumulo-env.sh \
68-
$CONF_SAMPLE_DIR/accumulo-site.xml \
69-
$CONF_SAMPLE_DIR/auditLog.xml \
70-
$CONF_SAMPLE_DIR/generic_logger.properties \
71-
$CONF_SAMPLE_DIR/generic_logger.xml \
72-
$CONF_SAMPLE_DIR/log4j.properties \
73-
$CONF_SAMPLE_DIR/monitor_logger.properties \
74-
$CONF_SAMPLE_DIR/monitor_logger.xml \
75-
$ACCUMULO_HOME/conf && \
76-
sed -i s/"<value><\/value>"/"<value>file:\/\/\/tmp\/accumulo<\/value>"/ $ACCUMULO_HOME/conf/accumulo-site.xml
51+
# Compile Accumulo native
52+
RUN cd $ACCUMULO_HOME/lib/ && \
53+
tar -zxvf $ACCUMULO_HOME/lib/accumulo-native-$ACCUMULO_VERSION.tar.gz && \
54+
cd $ACCUMULO_HOME/lib/accumulo-native-$ACCUMULO_VERSION && \
55+
make && \
56+
mv libaccumulo.so ../native && \
57+
cd .. && \
58+
rm -Rf accumulo-native-$ACCUMULO_VERSION*
7759

7860
# Download ZooKeeper
7961
RUN wget --quiet $ZOOKEEPER_BINARY_PATH && \
80-
tar -xf zookeeper-$ZOOKEEPER_VERSION.tar.gz -C $IMAGE_ROOT_INSTALL && \
81-
rm zookeeper-$ZOOKEEPER_VERSION.tar.gz && \
82-
ln -s $IMAGE_ROOT_INSTALL/zookeeper-$ZOOKEEPER_VERSION $ZOOKEEPER_HOME && \
62+
tar -xf apache-zookeeper-$ZOOKEEPER_VERSION-bin.tar.gz -C $IMAGE_ROOT_INSTALL && \
63+
rm apache-zookeeper-$ZOOKEEPER_VERSION-bin.tar.gz && \
64+
ln -s $IMAGE_ROOT_INSTALL/apache-zookeeper-$ZOOKEEPER_VERSION-bin $ZOOKEEPER_HOME && \
8365
cp $ZOOKEEPER_HOME/conf/zoo_sample.cfg $ZOOKEEPER_HOME/conf/zoo.cfg
8466

8567
RUN mkdir -p /var/log/zookeeper /var/log/accumulo
8668

8769
COPY ./files /
8870

71+
RUN mv /etc/accumulo.properties /usr/local/lib/accumulo/conf/
72+
8973
# Initialize Accumulo which requires ZooKeeper to be started
90-
RUN ${ZOOKEEPER_HOME}/bin/zkServer.sh start && \
74+
RUN ${ZOOKEEPER_HOME}/bin/zkServer-initialize.sh --myid=0 && \
75+
${ZOOKEEPER_HOME}/bin/zkServer.sh start && \
9176
${ACCUMULO_HOME}/bin/accumulo init --user root --password secret --instance-name default
9277

9378
# ZooKeeper
9479
EXPOSE 2181
9580
# Accumulo Monitor
9681
EXPOSE 50095
82+
EXPOSE 9995
9783
# Accumulo Monitor Logs
9884
EXPOSE 4560
9985
# Accumulo TabletServer
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
instance.volumes=file:///tmp/accumulo
2+
instance.zookeeper.host=localhost:2181
3+
instance.secret=accumulofortrino
4+
tserver.memory.maps.native.enabled=true

testing/accumulo/files/etc/supervisord.d/accumulo-gc.conf

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[program:accumulo-gc]
2-
command=/usr/local/lib/accumulo/bin/accumulo gc --address %(ENV_ADDRESS)s
2+
command=/usr/local/lib/accumulo/bin/accumulo gc
33
startsecs=2
44
stopwaitsecs=10
55
user=root
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
[program:accumulo-master]
2+
command=/usr/local/lib/accumulo/bin/accumulo manager
3+
startsecs=2
4+
stopwaitsecs=10
5+
user=root
6+
redirect_stderr=true
7+
stdout_logfile=/var/log/accumulo/manager.log
8+
autostart=true

testing/accumulo/files/etc/supervisord.d/accumulo-master.conf

-8
This file was deleted.

testing/accumulo/files/etc/supervisord.d/accumulo-monitor.conf

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[program:accumulo-monitor]
2-
command=/usr/local/lib/accumulo/bin/accumulo monitor --address %(ENV_ADDRESS)s
2+
command=/usr/local/lib/accumulo/bin/accumulo monitor
33
startsecs=2
44
stopwaitsecs=10
55
user=root

testing/accumulo/files/etc/supervisord.d/accumulo-tracer.conf

-8
This file was deleted.

testing/accumulo/files/etc/supervisord.d/accumulo-tserver.conf

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[program:accumulo-tserver]
2-
command=/usr/local/lib/accumulo/bin/accumulo tserver --address %(ENV_ADDRESS)s
2+
command=/usr/local/lib/accumulo/bin/accumulo tserver
33
startsecs=2
44
stopwaitsecs=10
55
user=root

0 commit comments

Comments
 (0)