HADOOP1.0-hadoop、hive、derby安装部署手册

HADOOP集群安装部署

1 前言

本文档是设想在多台服务器上部署HADOOP的实现过程;

2 创建用户

建议同个集群中的用户和用户组,都是相同的,以便管理和维护。

2.1 生成创建用户的运行角本

为不同服务器创建同样的用户和组,创建脚本的目的是让不同服务器可以直接运行此脚本,实现用户创建的过程。


用root用户登录linux,运行命令:
# vi createuser.sh
# chmod 777 createuser.sh

文件内容如下:
mkdir /opt;
mkdir /opt/analysis;
export LANG="zh_CN.GB18030";
groupadd analyzer -f;
useradd analyzer -d /opt/analysis -g analyzer -p analyzer@123;
chmod 755 -R /opt/analysis;
chown analyzer:analyzer /opt/analysis;
passwd analyzer<< EOF
analyzer@123
analyzer@123
EOF

2.2 同步创建用户脚本
同步上面的createuser.sh到各服务器:
# rsync -avz createuser.sh root@10.12.3.93:/opt/ << EOF
mm@sz.com
EOF
或:
# scp -P 7411 /opt/createuser.sh root@10.12.3.93:/opt/

2.3 运行创建用户脚本
用root登录各服务器,运行脚本:
# ./ createuser.sh

3 设置/etc/hosts文件
3.1 设置/etc/hosts文件内容:

# su – root
# vi /etc/hosts

Hosts的内容参考:
---IP地址--- ---机器名---
10.12.3.88 T5038
10.12.3.89 T5039
10.12.3.90 T5040

3.2 同步/etc/hosts到其它各服务器
# scp -P 7411 /etc/hosts 10.12.3.103:/etc/hosts
yes
mm@sz.com
4 设置免密码登录
设置集群中各服务器间免密码登录对hadoop的运行没影响,但设置后,可以通过一台服务器启动集群中所有的hadoop节点,而不用频繁登录到各台服务器进行逐台启动。

设置过程:本地运行ssh-keygen -t rsa后,把生成的id_rsa.pub在多台机器间相互拷贝;

4.1 生成生成公钥、密钥
切换到analyzer用户,运行命令:ssh-keygen -t rsa,运行过程中,直接多次按回车键即可;
# su - search
[analyzer @T5038 opt]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/opt/analysis/hadoop/.ssh/id_rsa):
Created directory '/opt/analysis/hadoop/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /opt/analysis/hadoop/.ssh/id_rsa.
Your public key has been saved in /opt/analysis/hadoop/.ssh/id_rsa.pub.
The key fingerprint is:
c1:d4:a5:56:94:ca:d4:27:15:6b:6f:5f:c3:c9:23:e2 hadoop@T5037

4.2 复制id_rsa.pub文件
复制本地id_rsa.pub到远程服务器,使远程服务器登录本地可以免密码登录。
[analyzer@T5038 opt]#cd /opt/ analysis /.ssh
[analyzer@T5038 opt]#scp -P 7411 id_rsa.pub analyzer@remoteIP:/opt /id_rsa_ip1.pub

4.3 生成authorized_keys文件内容
在各服务器,生成authorized_keys文件的内容,它可以是多个不同服务器的id_rsa.pub的内容整合,命令如下:
[analyzer@T5038 opt]#cat id_rsa_ip1.pub id_rsa_ip2.pub >authorized_keys
4.4 设置权限

权限问题(权限过大或过小)都可能导致远程免密码登录失败。
[analyzer@T5038 opt]#chmod 644 authorized_keys
-rw-r--r-- 1 hadoop hadoop 788 06-17 09:59 authorized_keys
4.5 测试免密码登录

如不用输入密码而直接登录远程服务器,则表示设置成功;运行命令如下:
[analyzer@T5038 opt]#ssh -p 7411 10.12.3.88
5 设置环境变量
5.1 设置.bash_profile文件
[analyzer@linux434 ~]$ vi ~/.bash_profile
PATH=$PATH:$HOME/bin
export PATH
unset USERNAME
export JAVA_HOME=$HOME/jdk1.6.0_21
export PATH=$JAVA_HOME/bin:$PATH
export HADOOP_HOME=$HOME/hadoop-0.20.3
export HIVE_HOME=$HOME/hive

5.2 生效处理
[analyzer@linux434 ~]$ source ~/.bash_profile
6 jdk 安装
如果还没安装JDK,则先进行安装。
[analyzer@linux434 ~]$ su - root
[analyzer@linux434 ~]$ mkdir /application/search/jdk1.6.0_21/
[analyzer@linux434 ~]$ vi .bash_profile
JAVA_HOME=/application/search/jdk1.6.0_21
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export PATH
export CLASSPATH
7 hadoop install
7.1 hadoop配置
1.登录到master节点linux430,首先将hadoop压缩包hadoop-0.20.2.tar.gz分别远程拷贝到所有slave的用户根目录上,"scp hadoop-0.20.2.tar.gz hadoop@linux426:~"。

2.在各个slave解压该文件,"tar xvzf hadoop-0.20.2.tar.gz"。

3.在master上,切换到~/hadoop-0.20.2/conf目录,vi打开hadoop-env.sh,为方便起见,统一修改JAVA_HOME的路径,"export JAVA_HOME=/opt/jdk1.6.0_18"。jdk事先已安装,且每个节点路径一致。这里hadoop-env.sh是每个节点用于配置自身运行环境的脚本,可以自行设置节点特定的内容。

4.编辑masters文件,设置masters节点地址为linux430。编辑slaves文件,同样输入所有slave节点,以回车分隔,分别为:linux425,linux426,linux427,linux428,linux429,linux431,linux432。

5.编辑core-site.xml文件,设置hdfs对外的统一地址,内容如下:
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://T5401:9000/</value>
<final>true</final>
</property>
</configuration>
6.编辑hdfs-site.xml文件,设置hdfs的真实文件存放位置,内容如下:
<configuration>
<property>
<name>dfs.name.dir</name>
<value>/application/search/hadoop/hdfs/name</value>
<final>true</final>
</property>
<property>
<name>dfs.data.dir</name>
<value>/application/search/hadoop/hdfs/data</value>
<final>true</final>
</property>
<property>
<name>fs.checkpoint.dir</name>
<value>/application/search/hadoop/hdfs/namesecondary</value>
<final>true</final>
</property>
</configuration>
7.编辑mapred-site.xml文件,设置mapreduce的一些重要参数,内容如下:
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>T5041:9001</value>
<final>true</final>
</property>
<property>
<name>mapred.local.dir</name>
<value>/application/search/hadoop/mapred/local</value>
<final>true</final>
</property>
<property>
<name>mapred.system.dir</name>
<value>/tmp/hadoop/mapred/system</value>
<final>true</final>
</property>
<property>
<name>mapred.tasktracker.map.tasks.maximum</name>
<value>7</value>
<final>true</final>
</property>
<property>
<name>mapred.tasktracker.reduce.tasks.maximum</name>
<value>7</value>
<final>true</final>
</property>
<property>
<name>mapred.child.java.opts</name>
<value>-Xmx600m</value>
<!-- Not marked as final so jobs can include JVM debugging options -->
</property>
</configuration>

7.2 设置hadoop中用到的SSH端口号

系统默认的SSH端口号是22,当使用其它端口时,为使start-all.sh能正常运行,可以设置hadoop中用到的SSH端口号,在conf/hadoop-env.sh文件中增加:export HADOOP_SSH_OPTS="-p 7411" 即可。

7.3 同步hadoop安装文件到集群中的其它服务器

scp -P 7411 -r /opt/analysis/hadoop-0.20.3 analyzer@10.12.3.87: /opt/analysis /hadoop-0.20.3

scp -P 7411 -r /opt/analysis/hadoop-0.20.3 analyzer@10.12.3.88: /opt/analysis /hadoop-0.20.3

7.4 hadoop集群初始化
./hadoop-0.20.3/bin/hadoop namenode -format

7.5 Hadoop启动
7.5.1 启动命令
./hadoop-0.20.3/bin/start-all.sh

7.5.2 正常的启动日志
-bash-3.2$ ./hadoop-0.20.3/bin/start-all.sh

starting namenode, logging to /opt/analysis/hadoop-0.20.3/bin/../logs/hadoop-analyzer-namenode-T5038.out

T5037: starting datanode, logging to /opt/analysis/hadoop-0.20.3/bin/../logs/hadoop-analyzer-datanode-T5037.out

T5038: starting datanode, logging to /opt/analysis/hadoop-0.20.3/bin/../logs/hadoop-analyzer-datanode-T5038.out

T5038: starting secondarynamenode, logging to /opt/analysis/hadoop-0.20.3/bin/../logs/hadoop-analyzer-secondarynamenode-T5038.out

starting jobtracker, logging to /opt/analysis/hadoop-0.20.3/bin/../logs/hadoop-analyzer-jobtracker-T5038.out

T5037: starting tasktracker, logging to /opt/analysis/hadoop-0.20.3/bin/../logs/hadoop-analyzer-tasktracker-T5037.out

T5038: starting tasktracker, logging to /opt/analysis/hadoop-0.20.3/bin/../logs/hadoop-analyzer-tasktracker-T5038.out

7.6 Hadoop关闭
7.6.1 关闭命令
./hadoop-0.20.3/bin/stop-all.sh

7.6.2 正常的关闭日志
-bash-3.2$ ./hadoop-0.20.3/bin/stop-all.sh

stopping jobtracker

T5037: stopping tasktracker

T5038: stopping tasktracker

stopping namenode

T5037: stopping datanode

T5038: stopping datanode

T5038: stopping secondarynamenode

8 HIVE安装部署

从网上下载后,直接解压即可。

9 安装部署derby
9.1 官方文档网址
http://wiki.apache.org/hadoop/HiveDerbyServerMode

9.2 下载derby
下载地址:http://db.apache.org/derby/derby_downloads.html

或者可以直接从其他已有derby的服务器上,把文件夹复制到待安装服务器。

下载后,无须安装,直接解压在某指定目录,即可。

设置
Derby启动时,默认是启动本地(localhost)的1527端口的服务,在/etc/hosts文件中配置以下内容:

127.0.0.1 localhost.localdomain localhost

9.3 启动及关闭

启动和关闭时,参数-h需一致。

9.3.1 启动命令

nohup /application/search/db-derby-10.6.2.1-bin/bin/startNetworkServer -h 127.0.0.1 &


9.3.2 关闭命令

nohup /application/search/db-derby-10.6.2.1-bin/bin/stopNetworkServer -h 127.0.0.1 &
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值