大数据应用之Hadoop安装部署
一、创建用户
1 2 |
useradd hadoop passwd hadoop |
二、scp安装
1 2 3 4 5 6 7 |
yum install openssh-clients -y mkdir -p /home/hadoop/source mkdir -p /home/hadoop/tools mkdir -p /hadoop/hdfs mkdir -p /hadoop/tmp mkdir -p /hadoop/log chmod -R 777 /hadoop |
三、JAVA运行环境配置
上传jdk;rpm -ivh jdk....
配置环境变量
1 2 3 4 5 6 7 8 9 |
echo -e "export JAVA_HOME=/usr/java/jdk1.8.0_65" >> /etc/profile && source /etc/profile && echo -e "export PATH=$JAVA_HOME/bin:$PATH\nexport CLASSPATH=.:$JAVA_HOME/lib" >> /etc/profile && source /etc/profile && java -version #修改network #修改hosts 192.168.0.101 hadoop1 192.168.0.102 hadoop2 192.168.0.103 hadoop3 192.168.0.104 hadoop4 echo -e "192.168.0.101\thadoop1\n192.168.0.102\thadoop2\n192.168.0.103\thadoop3\n192.168.0.104\thadoop4" >> /etc/hosts |
四、配置无密码登录
执行命令 ssh-keygen -t rsa 之后一路回 车,查看刚生成的无密码钥对: cd .ssh 后 执行 ll
把 id_rsa.pub 追加到授权的 key 里面去。 执行命令 cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys
修改权限: 执行 chmod 600 ~/.ssh/authorized_keys
确保(四台主机) cat /etc/ssh/sshd_config 中存在如下内容
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
如需修改, 则在修改后执行重启 SSH 服 务命令使其生效 :service sshd restart
将公 钥复制到所有的 slave 机器上 :scp ~/.ssh/id_rsa.pub 192.168.1.203 : ~/ 然后 输入 yes ,最后 输入 slave 机器的密 码
命令:
1 2 3 |
scp ~/.ssh/id_rsa.pub 192.168.0.102:~/ scp ~/.ssh/id_rsa.pub 192.168.0.103:~/ scp ~/.ssh/id_rsa.pub 192.168.0.104:~/ |
注意(如果免密钥登录不生效,可能跟selinux有关)
描述:
在 slave 机器上 创建 .ssh 文件夹 :mkdir ~/.ssh 然后 执行 chmod 700 ~/.ssh (若文件夹以存在 则不需要创建)
追加到授权文件 authorized_keys 执行命令 : 然后 执行 chmod 600 ~/.ssh/authorized_keys
验证命令 : 在 master 机器上 执行 ssh 192.168.0.102 发现主机名由 hadoop1 变成 hadoop2 即成功,最后 删除 id_rsa.pub 文件 :rm -r id_rsa.pub
按照以上步 骤分别配置 hadoop1,hadoop2,hadoop3,hadoop4 ,要求每个都可以无密 码登录
命令:
1 |
mkdir ~/.ssh && chmod 700 ~/.ssh && cat ~/id_rsa.pub >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys && rm -rf ~/id_rsa.pub |
五、hadoop下载安装
http://www.apache.org/dyn/closer.cgi/hadoop/common/
下载对应版本到本地
下 载到 /home/hadoop/source 目录下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
wget http://ftp.riken.jp/net/apache/hadoop/common/hadoop-2.0.0-alpha/hadoop-2.0.0-alpha.tar.gz #解压目录 tar zxvf hadoop-2.0.0-alpha.tar.gz #创建软连接 cd /home/hadoop ln -s /home/hadoop/source/hadoop-2.0.0-alpha/ ./hadoop #增加环境变量 export HADOOP_DEV_HOME=/home/hadoop/hadoop export PATH=$PATH:$HADOOP_DEV_HOME/bin export PATH=$PATH:$HADOOP_DEV_HOME/sbin export HADOOP_MAPARED_HOME=${HADOOP_DEV_HOME} export HADOOP_COMMON_HOME=${HADOOP_DEV_HOME} export HADOOP_HDFS_HOME=${HADOOP_DEV_HOME} export YARN_HOME=${HADOOP_DEV_HOME} export HADOOP_CONF_DIR=${HADOOP_DEV_HOME}/etc/hadoop export HDFS_CONF_DIR=${HADOOP_DEV_HOME}/etc/hadoop export YARN_CONF_DIR=${HADOOP_DEV_HOME}/etc/hadoop #创建并配置hadoop-env.sh vim /usr/hadoop/hadoop-2.0.0-alpha/etc/hadoop/hadoop-env.sh #在末尾添加 export JAVA_HOME=/usr/java/jdk1.6.0_27 #或编辑hadoop-env。sh vim /home/hadoop/hadoop/etc/hadoop/hadoop-env.sh #编辑101的 hadoop core-site.xml 在 configuration 节点 里面添加属性 <property> <name>hadoop.tmp.dir</name> <value>/hadoop/tmp</value> <description>A base for other temporary directories.</description> </property> <property> <name>fs.default.name</name> <value>hdfs://192.168.0.101:9000</value> </property> <property> <name>hadoop.proxyuser.root.hosts</name> <value>192.168.0.101</value> </property> <property> <name>hadoop.proxyuser.root.groups</name> <value>*</value> </property> |
#slave 配置
1 |
[root@hadoop2 ~]# rm -rf /home/hadoop/hadoop/etc/hadoop/ && cp -rf /mnt/data/hadoop /home/hadoop/hadoop/etc/ |