first version of hadoop-base hadoop-namenode and hadoop-datanode
This commit is contained in:
parent
dcff074a8d
commit
b97e590f6f
30
README.md
30
README.md
@ -1 +1,29 @@
|
|||||||
this will be the repo for docker-hadoop
|
This is a docker container for hadoop.
|
||||||
|
|
||||||
|
By default it uses data replication "2". To change it edit the hdfs-site.xml file.
|
||||||
|
|
||||||
|
To start the namenode run
|
||||||
|
|
||||||
|
docker run --name namenode -h bde2020/hadoop-namenode
|
||||||
|
|
||||||
|
To start two datanodes on the same host run
|
||||||
|
|
||||||
|
docker run --name datanode1 --link namenode:namenode bde2020/hadoop-datanode
|
||||||
|
docker run --name datanode2 --link namenode:namenode bde2020/hadoop-datanode
|
||||||
|
|
||||||
|
More info is comming soon on how to run hadoop docker using docker network and docker swarm
|
||||||
|
|
||||||
|
All data are stored in /hdfs-data, so to store data in a host directory datanodes as
|
||||||
|
|
||||||
|
docker run --name datanode1 --link namenode:namenode -v /path/to/host:/hdfs-data bde2020/hadoop-datanode
|
||||||
|
docker run --name datanode2 --link namenode:namenode -v /path/to/host:/hdfs-data bde2020/hadoop-datanode
|
||||||
|
|
||||||
|
By default the namenode formats the namenode directory only if not exists (hdfs namenode -format -nonInteractive).
|
||||||
|
If you want to mount an external directory that already contains a namenode directory and format it you have to first delete it manually.
|
||||||
|
|
||||||
|
Hadoop namenode listens on
|
||||||
|
|
||||||
|
hdfs://namenode:8020
|
||||||
|
|
||||||
|
To use access the namenode from another container link it using "--link namenode:namenode" and then use the afformentioned URL.
|
||||||
|
More info on how to access it using docker network coming soon.
|
28
hadoop-base/Dockerfile
Normal file
28
hadoop-base/Dockerfile
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
FROM java:8-jre
|
||||||
|
|
||||||
|
MAINTAINER Yiannis Mouchakis <gmouchakis@iit.demokritos.gr>
|
||||||
|
|
||||||
|
# define hadoop version
|
||||||
|
ENV HADOOP_VERSION 2.7.1
|
||||||
|
|
||||||
|
# Hadoop env variables
|
||||||
|
ENV HADOOP_PREFIX /opt/hadoop
|
||||||
|
ENV HADOOP_CONF_DIR $HADOOP_PREFIX/conf
|
||||||
|
ENV PATH $PATH:$HADOOP_PREFIX/bin
|
||||||
|
ENV PATH $PATH:$HADOOP_PREFIX/sbin
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y \
|
||||||
|
wget \
|
||||||
|
tar \
|
||||||
|
&& apt-get clean \
|
||||||
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
# deploy hadoop
|
||||||
|
RUN wget http://archive.apache.org/dist/hadoop/core/hadoop-$HADOOP_VERSION/hadoop-$HADOOP_VERSION.tar.gz
|
||||||
|
RUN tar -zxf /hadoop-$HADOOP_VERSION.tar.gz
|
||||||
|
RUN rm /hadoop-$HADOOP_VERSION.tar.gz
|
||||||
|
RUN mv hadoop-$HADOOP_VERSION $HADOOP_PREFIX
|
||||||
|
|
||||||
|
# add configuration files
|
||||||
|
ADD core-site.xml $HADOOP_CONF_DIR/core-site.xml
|
||||||
|
ADD hdfs-site.xml $HADOOP_CONF_DIR/hdfs-site.xml
|
24
hadoop-base/core-site.xml
Normal file
24
hadoop-base/core-site.xml
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
|
||||||
|
<!--
|
||||||
|
Licensed 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. See accompanying LICENSE file.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<!-- Put site-specific property overrides in this file. -->
|
||||||
|
|
||||||
|
<configuration>
|
||||||
|
<property>
|
||||||
|
<name>fs.defaultFS</name>
|
||||||
|
<value>hdfs://namenode:8020</value>
|
||||||
|
</property>
|
||||||
|
</configuration>
|
40
hadoop-base/hdfs-site.xml
Normal file
40
hadoop-base/hdfs-site.xml
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
|
||||||
|
<!--
|
||||||
|
Licensed 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. See accompanying LICENSE file.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<!-- Put site-specific property overrides in this file. -->
|
||||||
|
<configuration>
|
||||||
|
<property>
|
||||||
|
<name>dfs.replication</name>
|
||||||
|
<value>2</value>
|
||||||
|
</property>
|
||||||
|
<property>
|
||||||
|
<name>dfs.datanode.data.dir</name>
|
||||||
|
<value>/hdfs-data/datanode</value>
|
||||||
|
</property>
|
||||||
|
<property>
|
||||||
|
<name>dfs.namenode.name.dir</name>
|
||||||
|
<value>/hdfs-data/namenode</value>
|
||||||
|
</property>
|
||||||
|
<property>
|
||||||
|
<name>dfs.namenode.datanode.registration.ip-hostname-check</name>
|
||||||
|
<value>false</value>
|
||||||
|
</property>
|
||||||
|
<property>
|
||||||
|
<name>dfs.permissions.enabled</name>
|
||||||
|
<value>false</value>
|
||||||
|
</property>
|
||||||
|
</configuration>
|
||||||
|
|
5
hadoop-datanote/Dockerfile
Normal file
5
hadoop-datanote/Dockerfile
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
FROM bde2020/hadoop-base
|
||||||
|
|
||||||
|
MAINTAINER Yiannis Mouchakis <gmouchakis@iit.demokritos.gr>
|
||||||
|
|
||||||
|
CMD hdfs datanode
|
5
hadoop-nanemode/Dockerfile
Normal file
5
hadoop-nanemode/Dockerfile
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
FROM bde2020/hadoop-base
|
||||||
|
|
||||||
|
MAINTAINER Yiannis Mouchakis <gmouchakis@iit.demokritos.gr>
|
||||||
|
|
||||||
|
CMD hdfs namenode -format -nonInteractive & hdfs namenode
|
Loading…
x
Reference in New Issue
Block a user