hadoop-企业版环境搭建(一)-环境搭建和hadoop基本配置
来源:互联网 发布:留学cv 知乎 编辑:程序博客网 时间:2024/06/17 00:28
一、准备环境.
- centos6.5(minimal)下载地址
- java1.7,hadoop-2.5.2,
- date同步
- ssh免密码登录(无命令ssh)
-
- yum安装不了
二、安装虚拟机和虚拟镜像
使用vm12安装centos6.5,如何安装的步骤省略,大家自行百度,使用自定义的方式安装。
- yum安装不了
'选择10GB的空间,其余不选''移除声卡等没用的'
分别安装四个虚拟机并分别命名为node1,node2,node3,node4。
三、配置静态ip地址和dns
配置静态ip
[root@node4 ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0HWADDR=00:0C:29:AC:5B:B6TYPE=EthernetUUID=ff9f551e-43d8-404f-bcf1-682436eb0281ONBOOT=yesNM_CONTROLLED=yesBOOTPROTO=staticIPADDR=192.168.146.103NETMASK=255.255.255.0GATEWAY=192.168.146.2
此处需要配置dns,否则ping不通外网
[root@node4 ~]# vi /etc/resolv.conf nameserver 8.8.8.8nameserver 1.2.4.8
service network restart:重启网络
测试
ping www.baidu.com
将软件包分别通过winscp等工具传到/home/software文件夹下
-关闭防火墙
暂时关闭:service iptables stop永久关闭chkconfig iptables off
四、java配置(jdk-7u79)
一般企业使用的是最稳定的软件包:jdk-7u79-linux-x64.rpm
先查看是否已经安装:
[root@node4 software]# rpm -qa | grep java
补充:使用rpm命令卸载CentOS 6.4自带的OpenJDK
- 安装jdk
1.新建一个文件夹/opt/software,并将jdk-7u79-linux-x64.rpm移到该文件下。2.修改文件的权限:[root@node4 software]# cd /opt/software[root@node4 software]# lltotal 134848-rw-r--r--. 1 root root 138082565 Sep 5 09:00 jdk-7u79-linux-x64.rpm[root@node4 software]# chmod 755 jdk-7u79-linux-x64.rpm[root@node4 software]# lltotal 134848-rwxr-xr-x. 1 root root 138082565 Sep 5 09:00 jdk-7u79-linux-x64.rpm3.安装jdk:[root@node4 software]# rpm -ivh jdk-7u79-linux-x64.rpmPreparing... ########################################### [100%] 1:jdk ########################################### [100%]Unpacking JAR files... rt.jar... jsse.jar... charsets.jar... tools.jar... localedata.jar... jfxrt.jar...
- 设置环境变量
使用rpm的安装方式默认安装在/usr/java下面
export JAVA_HOME=/usr/java/jdk1.7.0_79export PATH=$PATH:$JAVA_HOME/bin
- 检查是否安装成功
[root@node4 software]# java -versionjava version "1.7.0_79"Java(TM) SE Runtime Environment (build 1.7.0_79-b15)Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)[root@node4 software]# rpm -qa | grep jdkjdk-1.7.0_79-fcs.x86_64
五、同步时间date
date命令 查看时间是否相同;相差几秒还是可以的,不同则需要同步时间,自行百度解决。
六、ssh免密码登录
- 本机的免密码登录
$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys[root@node1 software]# ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsaGenerating public/private dsa key pair.Your identification has been saved in /root/.ssh/id_dsa.Your public key has been saved in /root/.ssh/id_dsa.pub.The key fingerprint is:9b:5c:5d:2f:67:9d:c0:48:09:45:72:f6:62:1b:27:95 root@node1The key's randomart image is:+--[ DSA 1024]----+| o+*... || =.=E || * =. || ..*...o|| S ... ..=|| . + + || + || || |+-----------------+[root@node1 software]# cd ~/.ssh/[root@node1 .ssh]# lsid_dsa id_dsa.pub[root@node1 .ssh]# cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys[root@node1 .ssh]# lsauthorized_keys id_dsa id_dsa.pub
-测试本地的ssh免密码登录:
[root@node1 .ssh]# ssh node1The authenticity of host 'node1 (192.168.146.100)' can't be established.RSA key fingerprint is 94:04:c9:47:67:9e:8a:28:ce:05:3b:dd:92:5d:a8:b6.Are you sure you want to continue connecting (yes/no)? yesWarning: Permanently added 'node1,192.168.146.100' (RSA) to the list of known hosts.Last login: Sat Oct 7 04:14:09 2017 from 192.168.146.1[root@node1 ~]# exitlogoutConnection to node1 closed.
- 配置hosts,远程ssh免密码登录
[root@node1 .ssh]# vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4::1 localhost localhost.localdomain localhost6 localhost6.localdomain6192.168.146.100 node1192.168.146.101 node2192.168.146.102 node3192.168.146.103 node4~
-其余node2/node3/node4的配置
将node1上的公证认证文件拷贝到其他的node节点上,并进行复制大文件下:
在node2,node3,node4上都进行如下的操作:
ssh-keygen -t dsa -P ” -f ~/.ssh/id_dsa
在node1上分别进行如下操作,将node1的公钥复制到node2,3,4上面。
scp ./id_dsa.pub root@node2:/opt/scp ./id_dsa.pub root@node3:/opt/scp ./id_dsa.pub root@node4:/opt/在node2,node3,node4上都进行下面的操作cat /opt/id_dsa.pub >> ~/.ssh/authorized_keys
- 测试
ssh node1ssh node2ssh node3ssh node4
但是缺点是,node2,node3,node4不能ssh访问node的其他节点包括自己节点
[root@node1 .ssh]# ssh node1ee^HLast login: Sat Oct 7 04:54:15 2017 from node1[root@node1 ~]# exitlogoutConnection to node1 closed.[root@node1 .ssh]# ssh node2Last login: Sat Oct 7 04:54:41 2017 from node1[root@node2 ~]# exitlogoutConnection to node2 closed.[root@node1 .ssh]# ssh node3Last login: Sat Oct 7 04:57:47 2017 from node1[root@node3 ~]# exitlogoutConnection to node3 closed.[root@node1 .ssh]# ssh node4Last login: Sat Oct 7 04:47:24 2017 from node1[root@node4 ~]# exitlogoutConnection to node4 closed.
七、hadoop的简单的搭建
节点的分配
- 解压hadoop
解压到在/home/hadoop-2.5.1
[root@node3 home]# tar -zxvf hadoop-2.5.1_x64.tar.gz
[root@node3 software]# mv hadoop-2.5.1 /home/
- 配置环境
- hadoop-env.sh
寻找到该位置export JAVA_HOME=/usr/java/jdk1.7.0_79
-配置core-site.xml文件
<property> <name>fs.defaultFS</name> <value>hdfs://node1:9000</value></property><property> <name>hadoop.tmp.dir</name> <value>/opt/hadoop-2.5</value></property>##配置临时目录,用于重启之后使用。
-配置hdfs-site.xml文件
##配置secondnamenode主机<property> <name>dfs.namenode.secondary.http-address</name><value>node2:50090</value></property><property> <name>dfs.namenode.secondary.https-address</name><value>node2:50091</value></property>
-配置slaves文件
##配置datanode,添加node2node3node4
-配置masters文件,需要自己创建
##配置secondnamenode主机名,添加node2
将node1的配置的文件copy到node2,node3,node4中
[root@node1 hadoop]# scp -r /home/hadoop-2.5.1/etc/hadoop/ root@node2:/home/hadoop-2.5.1/etc/hadoop/[root@node1 hadoop]# scp -r /home/hadoop-2.5.1/etc/hadoop/ root@node3:/home/hadoop-2.5.1/etc/hadoop/[root@node1 hadoop]# scp -r /home/hadoop-2.5.1/etc/hadoop/ root@node4:/home/hadoop-2.5.1/etc/hadoop/##途中出现复制错误,使用rm -rf删除文件夹
-配置hadoop的环境变量
#编辑文件:[root@node1 hadoop]# vi ~/.bash_profile export HADOOP_HOME=/home/hadoop-2.5.1export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin拷贝到其他节点上去[root@node1 hadoop]# scp ~/.bash_profile root@node2:/root/[root@node1 hadoop]# scp ~/.bash_profile root@node3:/root/[root@node1 hadoop]# scp ~/.bash_profile root@node4:/root/生效[root@node1 hadoop]# source ~/.bash_profile
八、开始执行
- 格式化
##只能在namenode的node1上格式化,在/opt/hadoop-2.5/dfs、current上创建了文件[root@node1 hadoop]# cd /opt/hadoop-2.5/dfs/name/current/[root@node1 current]# lltotal 16-rw-r--r--. 1 root root 351 Oct 7 06:01 fsimage_0000000000000000000-rw-r--r--. 1 root root 62 Oct 7 06:01 fsimage_0000000000000000000.md5-rw-r--r--. 1 root root 2 Oct 7 06:01 seen_txid-rw-r--r--. 1 root root 207 Oct 7 06:01 VERSION
-启动
[root@node1 sbin]# start-dfs.sh
web界面:
打开不了的原因是需要关闭防火墙:service iptables stop
namenode
secondnamenode
精彩部分请看:hadoop-企业版环境搭建(二)
- hadoop-企业版环境搭建(一)-环境搭建和hadoop基本配置
- Hadoop 环境搭建和配置
- Hadoop环境搭建(一)
- hadoop-企业版环境搭建(四)-安装HBase
- hadoop-企业版环境搭建(五)-安装Hive
- hadoop-企业版环境搭建(三)-mapreduce和yarn的安装
- hadoop环境搭建和基本测试
- 搭建Hadoop环境----CentOs安装和配置(一)
- hadoop-企业版环境搭建(二)-HA搭建和zookpeer集群的搭建
- hadoop(一)环境搭建
- Hadoop环境搭建(一)
- 1-hadoop 搭建环境配置
- hadoop环境搭建(一)环境准备
- Maven搭建hadoop环境之pom.xml基本配置
- 【hadoop】hadoop环境快速搭建
- Hadoop - Hadoop开发环境搭建
- Hadoop系列~环境搭建,单机/伪分布式配置(一)
- Hadoop环境搭建
- 设计模式笔记
- js基础
- cf_438_B
- Andrew-Coursera-DL课程-笔记part1-2(Shallow neural networks)
- codeforces 467B
- hadoop-企业版环境搭建(一)-环境搭建和hadoop基本配置
- C++函数重载机制及为什么要加extern C
- 设计模式-桥接模式
- Win7 + Vmware12 + Centos6.9 局域网环境NAT方式联网 附带 MySQL5.7安装
- Java实现二叉树
- 解决eclipse无法识别从svn中导出的项目的问题
- 最长上升子序列
- JDBC学习笔记—增删改查
- webpack postcss-loader autoprefixer 配置