NUTCH2.3 hadoop2.7.1 hbase1.0.1.1 solr5.2.1部署(一),hadoop2.7安装




Precondition:

hadoop 2.7.1

Nutch 2.3

hbase 1.0.1.1 / hbase 0.98.13

solr 4.8.1

Linux version 3.16.0-4-amd64

jdk1.8.0_45


hadoop编译部署

1. 安装相关软件

apt-get install ssh rsync
apt-get install openssh-server

apt-get install maven
apt-get install autoconf automake libtool cmake zlib1g-dev pkg-config libssl-dev

hadoop 使用openjdk可能导致问题,必须使用sun jdk,也就是不能“apt-get install default-jdk”

这篇文章使用的都是jdk1.8.0_45

hadoop 需要使用protobuf2.5,不是最新的2.6,可以从我的资源里面下载,网上也有。

运行protoc 2.5 的时候需要加上export LD_LIBRARY_PATH=/usr/local/lib

2. ssh免密码登录,网上有很多参考

1) cd /root/

2) ssh-keygen -t rsa

/root/.ssh/下生成id_rsa和id_isa.pub两个文件
3) ssh-copy-id -i .ssh/id_rsa.pub
root@192.168.1.106

将本机id_isa.pub拷贝到对方。

4) ssh 192.168.1.106

5) 遇到权限问题,可以尝试:

chmod 700 -R .ssh
chmod 644 /root/.ssh/authorized_keys

3. 编译hadoop前准备

export LD_LIBRARY_PATH=/usr/local/lib

export JAVA_HOME=/disk2/java/jdk1.8.0_45 
export JRE_HOME=${JAVA_HOME}/jre 
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib 
export PATH=${JAVA_HOME}/bin:$PATH

4. mvn clean package -Pdist,native -DskipTests -Dtar

mvn可能因为下载挂住,停止再运行一下mvn package -Pdist,native -DskipTests -Dtar就好了

将编译好的tar文件解压即可

5. 部署前准备,两台机器192.168.1.105(datanode) / 192.168.1.106(namenode / datanode)

以下修改都是在192.168.1.106上面修改,然后scp到另外机器

/etc/profile
export JAVA_HOME=/disk2/java/jdk1.8.0_45
export HADOOP_HOME=/disk2/hadoop/hadoop-2.7.1
export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$PATH

6. $HADOOP_HOME/etc/hadoop/hadoop-env.sh
该文件是hadoop运行基本环境的配置,需要修改的为java虚拟机的位置。
export JAVA_HOME=${JAVA_HOME} =>
export JAVA_HOME=/disk2/java/jdk1.8.0_45

7. $HADOOP_HOME/etc/hadoop/yarn-env.sh
该文件是yarn框架运行环境的配置,同样需要修改java虚拟机的位置。
export JAVA_HOME=/disk2/java/jdk1.8.0_45

8. $HADOOP_HOME/etc/hadoop/slaves
直接输入机器IP即可

192.168.1.105
192.168.1.106

9.参考修改:
$HADOOP_HOME/etc/hadoop/core-site.xml

<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://192.168.1.106:9000</value>
</property>
</configuration>

$HADOOP_HOME/etc/hadoop/hdfs-site.xml

<configuration>
		<property>
			<name>dfs.http.address</name>
			<value>192.168.1.106:50070</value>
		</property>

		<property>
			<name>dfs.namenode.secondary.http-address</name><value>192.168.1.106:50090</value>
		</property>

		<property>
			<name>dfs.replication</name>
			<value>1</value>
		</property>
        <property>
                <name>dfs.name.dir</name>
                <value>/disk2/hadoop/hdfs/name</value>
        </property>
        <property>
                <name>dfs.data.dir</name> 
                <value>/disk2/hadoop/hdfs/data</value>
        </property>
        <property>
                <name>dfs.permissions</name>
                <value>false</value>
       </property>
</configuration>

$HADOOP_HOME/etc/hadoop/mapred-site.xml

<configuration>
        <property>
                <name>mapred.job.tracker</name>
                <value>192.168.1.106:9001</value>
        </property>
        <property>
                <name>mapred.system.dir</name>
                <value>/disk2/hadoop/hdfs/mapred.system.dir</value>
        </property>
        <property>
                <name>mapred.local.dir</name>
                <value>/disk2/hadoop/hdfs/mapred.local.dir</value>
        </property>
</configuration>

10. 创建必须目录

mkdir -p /disk2/hadoop/hdfs/mapred.local.dir

mkdir -p /disk2/hadoop/hdfs/mapred.system.dir

mkdir -p /disk2/hadoop/hdfs/name

mkdir -p /disk2/hadoop/hdfs/data

11.部署到其他机器

scp /etc/profile 192.168.1.105:/etc/

scp -r hadoop-2.7.1/ 192.168.1.105:/disk2/hadoop/

12. 格式化namenode bin/hdfs namenode -format 13. 启动 sbin/start-all.sh 14:测试 http://192.168.1.106:50070
http://192.168.1.106:8088
应该都能访问
bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.1.jar pi 20 10



版权声明:本文为博主原创文章,未经博主允许不得转载。

相关内容