1、光标移动到空行,按“O”键,输入nameserver 192.168.30.2退出按ESC键,输入:回车保存配置文件。重启网络服务#service network restart重启之后#ifconfig查看配置的ip地址,物理机ping这个地址测试是否能通。B、使用桥接模式虚拟机网络连接使用桥接模式虚拟机设置里面网络适配器,网络连接选择桥接模式设置虚拟机的ip,设置虚拟机的ip,虚拟机ip必须和本机在同一网段本次采用B进行配置,ip地址分别为master 192.168.1.11slaves1 192.168.1.12slaves2 192.168.1.13附:网卡 not active 解
2、决1.rootlocalhost Desktop# service network restart2.Shutting down interface eth0: Error: Device eth0 (/org/freedesktop/NetworkManager/Devices/0) disconnecting failed: This device is not active3.FAILED4.Shutting down loopback interface: OK 5.Bringing up loopback interface:6.Bringing up interface eth0:
3、 Connection activation failed: Device not managed by NetworkManager or unavailable7.8.rootlocalhost Desktop# chkconfig NetworkManager off9.rootlocalhost Desktop# chkconfig network on10.rootlocalhost Desktop# service NetworkManager stop11.Stopping NetworkManager daemon:12.rootlocalhost Desktop# servi
4、ce network start13.Bringing up loopback interface:14.Bringing up interface eth0:15.RTNETLINK answers: File exists16.RTNETLINK answers:17.RTNETLINK answers:18.RTNETLINK answers:19.RTNETLINK answers:20.RTNETLINK answers:21.RTNETLINK answers:22.RTNETLINK answers:23.RTNETLINK answers:24.rootlocalhost De
5、sktop# service network restart25.Shutting down interface eth0:26.Shutting down loopback interface:27.Bringing up loopback interface:28.Bringing up interface eth0:29.rootlocalhost Desktop# ifconfig三、修改主机名和host修改虚拟机名称,分别修改为对应的master、slaves1和slaves2#vi /etc/sysconfig/networkNETWORKING=yesHOSTNAME=maste
6、r按O或者insert进行编辑,esc退出,执行wq保存并退出,slaves节点修改对应的hostname修改host文件,为了保证节点之间能够使用主机名进行互相访问,需要修改host文件。以root用户执行,所有节点都需要执行#vi /etc/hosts 192.168.1.11 master192.168.1.12 slaves1192.168.1.13 slaves2 四、配置ssh无密码连接 关闭防火墙,以root用户执行,所有节点都需要执行。service iptables stop 永久关闭chkconfig iptables off 生成SSH公钥,对应完全分布模式,有多个节点,
7、但只需主节点无密码连接从节点,因此在主节点执行,以hadoop用户执行这里可能用户su hadoop来切换hadoop用户 su 切换回root用户ssh-keygen -t rsa遇到提示回车即可,将公钥发至从节点的authorized_keys的列表,执行:#ssh-copy-id -i /.ssh/id_rsa.pubhadoopslaves1 /.ssh/id_rsa.pub hadoopslaves2如果发现不成功,有可能是/home/hadoop/.ssh文件夹的权限问题,以hadoop用户执行chmod 700 /home/hadoop/.sshchmod 664 /home/h
8、adoop/.ssh/authorized_keys使用同一的方法也可以实现slaves1和slaves2 三个节点两两互通 附:多台linux之间ssh无密码登陆1、在每台服务器上都执行ssh-keygen -t rsa生成密钥对:#ssh-keygen -t rsa2、在每台服务器上生成密钥对后,将公钥复制到需要无密码登陆的服务器上:举例如192.168.30.11,192.168.30.12,192.168.30.13这三台服务器需要做相互免密码登陆,在每台服务器生成密钥对后,在每台服务器上执行ssh-copy-id命令(具体说明及用法见最后附录),将公钥复制到其它两台服务器上(此处以1
9、92.168.30.11为例,用户为root,其它两台步骤相同,不同的用户修改root成相应的用户)*.30.12*.30.13以上命令,可以自动将公钥添加到名为authorized_keys的文件中,在每台服务器都执行完以上步骤后就可以实现多台服务器相互无密码登陆了五、安装jdk,所有节点都需要执行 使用本机和虚拟机共享文件安装VMware Tool 在虚拟机设置-选项将jdk安装包复制到/opt目录,以root用户进行安装:tar xzvf jdk-8u45-linux-x64.tar.gz配置环境变量:vi /etc/profile 在文件中输入以下配置信息export JAVA_HOM
10、E=/opt/jdk1.8.0_45 export PATH=$PATH:$JAVA_HOME/bin 修改完成以后,运行以下命令使环境变量生效:source /etc/profile验证安装,执行:java -version六、安装hadoop 以master节点为例,将hadoop安装再/opt文件夹下,从root用户获取/opt文件夹的权限(root用户执行,所有节点都需要执行,注意区分大小写)。 chown -R Hadoop /opt #改变文件拥有者以hadoop用户将安装包移动到/opt文件下 推荐安装hadoop在/opt目录下,浏览到/opt目录下执行安装命令:tar -zx
11、vf hadoop-2.7.0.tar.gz1、配置hadoop-env.sh,使用命令打开hadoopmaster hadoop-2.7.0$ vim /.bash_profile 在文件中加入: export JAVA_HOME=/opt/jdk1.8.0_45export HADOOP_HOME=/opt/hadoop-2.7.0 2、配置core-site.xmlhadoopmaster hadoop$ cd /opt/hadoop-2.7.0/etc/hadoop/hadoopmaster hadoop$ vim core-site.xmlpropertynamefs.default
12、FSvaluehdfs:/master:9000/propertydfs.namenode.name.dir/NameNode持久存储名字空间及事务日志的本地文件系统路径。file:/opt/data/hadoop/namedfs.datanode.data.dir /NameNode持久存储名字空间及事务日志的本地文件系统路径。/opt/data/hadoop/datahadoop.tmp.dir /Hadoop的默认临时路径,这个最好配置,然后在新增节点或者其他情况下莫名其妙的DataNode启动不了,就删除此文件中的tmp目录即可。不过如果删除了NameNode机器的此目录,那么就需要重
13、新执行NameNode格式化的命令了。/opt/data/hadoop/tmpA base for other temporary directories dfs.replication/数据需要备份的数量,默认是三,可选13、修改etc/hadoop/hdfs-site.xml hadoopmaster hadoop$ vim hdfs-site.xml2dfs.namenode.secondary.http-addressmaster:90014、配置mapred-site.xml默认情况下,/usr/local/hadoop/etc/hadoop/文件夹下有mapred.xml.temp
14、late文件,我们要复制该文件,并命名为mapred.xml,该文件用于指定MapReduce使用的框架。hadoopmaster hadoop$ cp mapred-site.xml.template mapred-site.xmlhadoopmaster hadoop$ vim mapred-site.xmlmapreduce.framework.nameyarnmapreduce.jobhistory.address10020mapreduce.jobhistory.webapp.address198885、配置yarn-site.xml:hadoopmaster hadoop$ vim
15、 yarn-site.xmlyarn.nodemanager.aux-servicesmapreduce_shuffleyarn.nodemanager.aux-services.mapreduce.shuffle.classorg.apache.hadoop.mapred.ShuffleHandleryarn.resourcemanager.address8032yarn.resourcemanager.scheduler.address8030yarn.resourcemanager.resource-tracker.address8031yarn.resourcemanager.admi
16、n.address8033yarn.resourcemanager.webapp.address80886、slaves文件配置7、配置java环境变量hadoop-env.sh、mapred-env.sh、yarn-env.sh这几个文件中的JAVA_HOME改为/opt/jdk1.8.0_458、把name节点的hadoop考到数据节点上面scp -r /opt/hadoop-2.7.0 hadoopslaves1:/optscp -r /opt/hadoop-2.7.0 hadoopslaves2:9、修改/etc/profile以root用户,追加以下信息,每个节点都要执行,这样不必每
17、次都要进入/opt/hadoop-2.7.0/bin下才能执行hadoop命令export HADOOP_HOME=/opt/hadoop-2.7.0$HADOOP_HOME/bin 8、格式化浏览到cd /opt/hadoop-2.7.0/目录下hdfs namenode -format9、启动hadoop$ HADOOP_HOME/sbin/start-all.sh10、启动验证1) http hdfshttp:500702) http yarn/ master:80883) wordcounthadoop jar /opt/hadoop-2.7.0/share/hadoop/mapred
18、uce/hadoop-mapreduce-examples-2.7.0.jar wordcount /input /output报错: Input path does not exist: hdfs:9000/input解决:创建文件:bin/hadoop fs -mkdir hdfs:复制文件: bin/hadoop fs -put /opt/hadoop-2.7.0/README.txt hdfs:错误诊断1 、datanode启动不成功 log:2016-01-07 18:15:03,624 WARN mon.Storage: java.io.IOException: Incompati
19、ble clusterIDs in /opt/data/hadoop/tmp/dfs/data: namenode clusterID = CID-7dab6987-7bcb-4347-b494-8170d0115ffc; datanode clusterID = CID-b3aea089-ae2e-4b52-addd-5cbe185a5cef问题原因: master和slave节点data目录下VERSION中clusterID不一致。在第一次格式化dfs后,启动并使用了hadoop,后来又重新执行了格式化命令(hdfs namenode -format),这时namenode的cluste
20、rID会重新生成,而datanode的clusterID 保持不变。解决方法:浏览到master服务器的 /opt/data/hadoop/tmp/dfs/name/current文件 vim VERSION查看clusterID 浏览到slave服务器的 /opt/data/hadoop/tmp/dfs/data/current文件 vim VERSION 查看clusterID修改slave的clusterID为master的clusterID2、Hadoop本地库与系统版本不一致log:/opt/hadoop-2.7.0/lib/native/libhadoop.so.1.0.0: /l
21、ib64/libc.so.6: version GLIBC_2.14 not found (required by /opt/hadoop-2.7.0/lib/native/libhadoop.so.1.0.0) 原因是系统的glibc版本太低,软件编译时使用了较高版本的glibc引起的:查看系统的libc版本 # ll /lib64/libc.so.62.查看系统glibc支持的版本:$strings/lib64/libc.so.6|grepGLIBC_系统最高支持GLIBC_2.12,需要支持GLIBC_2.14a.到http:/www.gnu.org/software/libc/下载最新
22、版本,我这里下载了glibc-2.14.tar.xz这个版本,解压到任意目录准备编译 地址: 链接地址是http:/ftp.gnu.org/gnu/glibc/glibc-2.14.tar.gz。b.在var文件下创建VMdisks目录,将安装包复制到该目录下c.这里解压到/var/VMdisks/glibc-2.14/tar xvf glibc-2.14.tar.gzd.在glibc源码目录建立构建目录,并cd进入构建目录e.运行configure配置,make & sudo make install rootmaster build$ ./configure -prefix=/opt/glibc-2.14configure:error:*LD_LIBRARY_PATHshouldntcontainthe
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2