0


【大数据(一)】hadoop2.4.1集群搭建(重点)

1.准备Linux环境

1.0先将虚拟机的网络模式选为NAT

1.1修改主机名

vi /etc/sysconfig/network

NETWORKING=yes

HOSTNAME=server1.itcast.cn

1.2修改ip地址

vi /etc/sysconfig/network-scripts/ifcfg-eth0

重新启动网络:service network restart

1.3修改ip地址和主机名的映射关系

vi /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4

::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.0.101 server1.itcast.cn

1.4关闭防火墙iptables并设置其开机启动/不启动

#查看防火墙状态

service iptables status

#关闭防火墙

service iptables stop

#查看防火墙开机启动状态

chkconfig iptables --list

#关闭防火墙开机启动

chkconfig iptables off

1.5 修改sudo

(sudo是linux系统管理指令,是允许系统管理员让普通用户执行一些或者全部的root命令的一个工具)

1.  su root   #进入超级用户

2.  ll /etc/sudoers   #查看/etc/sudoers的权限

3.  chmod 777 /etc/sudoers  #修改/etc/sudoers文件的权限成可读可写可执行

4    vi  /etc/sudoers

# 给hadoop用户添加执行的权限

  root    ALL=(ALL)       ALL

hadoop  ALL=(ALL)       ALL 

5.  chmod 440 /etc/sudoers   #退出保存/etc/sudoers文件

6.  su username  #切换用户到指定用户

7. 关闭linux服务器的图形界面:

(1)vi  /etc/inittab

(2)id:5:initdefault:  ------>  id:3:initdefault:

8.重启Linux:Reboot 

**1.6 虚拟机复制 **

右键-->管理-->克隆

(1)解决克隆后eth0不见的问题

直接修改 /etc/sysconfig/network-script/ifcfg-eth0

删掉UUID HWADDR

配置静态地址

(2)然后:

vi /etc/udev/rules.d/70-persistent-net.rules

删除eth0的一段

把第二段的最后 eth1 改成eth0

然后 reboot

2.安装JDK

2.1上传安装包

alt+p 后出现sftp窗口,然后put d:\xxx\yy\ll\jdk-7u_65-i585.tar.gz

2.2解压jdk

#创建文件夹

mkdir /home/hadoop/app

#解压

tar -zxvf jdk-7u55-linux-i586.tar.gz -C /home/hadoop/app

2.3将java添加到环境变量中

vi /etc/profile

#在文件最后添加

export JAVA_HOME=/home/hadoop/app/jdk-7u_65-i585

export PATH=$PATH:$JAVA_HOME/bin

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

#刷新配置

source /etc/profile

3.安装hadoop2.4.1

3.1上传安装包

alt+p 后出现sftp窗口先上传hadoop的安装包到服务器上去/home/hadoop/

解压到 Hadoop/apps : tar -zxvf hadoop-2.6.4.tar.gz -C /home/hadoop/apps

注意:hadoop2.x的配置文件$HADOOP_HOME/etc/hadoop

伪分布式需要修改5个配置文件

3.2配置hadoop

进入目录:cd  /home/hadoop/apps/hadoop-2.6.4/etc/hadoop

第一个:hadoop-env.sh

vi hadoop-env.sh

#第27行​

编辑

export JAVA_HOME=/home/hadoop/apps/jdk1.7.0_45

第二个:core-site.xml

vi core-site.xml

<!-- 指定HADOOP所使用的文件系统schema(URI),HDFS的老大(NameNode)的地址 -->

<configuration>

<property>

<name>fs.defaultFS</name>

<value>hdfs://mini1:9000</value>

</property>

(修改前的<value>hdfs://weekend-1206-01:9000</value>)

<!-- 指定hadoop运行时产生文件的存储目录 -->

<property>

<name>hadoop.tmp.dir</name>

<value>/home/hadoop/hdpdata</value>

        </property>

(修改前的<value>/home/hadoop/hadoop-2.4.1/tmp</value>  )

</configuration>

第三个:hdfs-site.xml

** vi hdfs-site.xml**

<!-- 指定HDFS副本的数量 -->

<configuration>

<property>

<name>dfs.replication</name>

<value>2</value>

</property>

<property>

<name>dfs.secondary.http.address</name>

<value>192.168.1.152:50090</value>

</property>

</configuration>

第四个:mapred-site.xml

(mv mapred-site.xml. template mapred-site.xml)

mv mapred-site.xml.template mapred-site.xml

vim mapred-site.xml

<!-- 指定mr运行在yarn上 -->

<property>

<name>mapreduce.framework.name</name>

<value>yarn</value>

</property>

重命名:mv mapred-site.xml.template    mapred-site.xml

第五个:yarn-site.xml

vi yarn-site.xml

<!-- 指定YARN的老大(ResourceManager)的地址 -->

<property>

<name>yarn.resourcemanager.hostname</name>

<value>mini1</value>

</property>

<!-- reducer获取数据的方式 -->

<property>

<name>yarn.nodemanager.aux-services</name>

<value>mapreduce_shuffle</value>

</property>

分发到各个mini2 ,mini3 的机器上

scp -r /home/hadoop/apps mini2:/home/hadoop/

scp -r /home/hadoop/apps mini3:/home/hadoop/

3.3将hadoop添加到环境变量

sudo vi /etc/profile

export JAVA_HOME=/usr/java/jdk1.7.0_65

export HADOOP_HOME= /home/hadoop/apps/hadoop-2.6.4 

export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

source /etc/profile

分发到各个mini2 ,mini3 的机器上

sudo scp /etc/profile mini2:/etc/

sudo scp /etc/profile mini3:/etc/

3.4格式化namenode(是对namenode进行初始化)

hdfs namenode -format (hadoop namenode -format)

hdfs datanode -format

添加从节点

vi /home/hadoop/apps/hadoop-2.6.4/etc/Hadoop/slaves

localhost

mini2

mini3

3.5启动/关闭hadoop

#mini1:cd  /home/hadoop/apps/hadoop-2.6.4/sbin

启动: hadoop-daemon.sh  start namenode

关闭:hadoop-daemon.sh  stop namenode

#mini2: source /etc/profile

启动:hadoop-daemon.sh  start datanode

关闭:hadoop-daemon.sh  stop datanode

#mini3

启动:hadoop-daemon.sh  start datanode

关闭:hadoop-daemon.sh  stop datanode

先启动HDFS

sbin/start-dfs.sh

再启动YARN

sbin/start-yarn.sh

------------------------------------------------------------------------------

全部启动

路径: cd  /home/hadoop/apps/hadoop-2.6.4/sbin

./start-all.sh

./stop-all.sh

启动namenode

hadoop-daemon.sh start namenode

启动datanode

hadoop-daemon.sh start datanode

启动yarn

hadoop-daemon.sh start yarn

查看hdfs 状态

hdfs  dfsadmin  -report

3.6验证是否启动成功

使用jps命令验证

27408 NameNode

28218 Jps

27643 SecondaryNameNode

28066 NodeManager

27803 ResourceManager

27512 DataNode

http://192.168.1.101:50070 (HDFS管理界面)

http://192.168.1.101:8088 (MR管理界面)

4.配置ssh免登陆

系统重装后修改 ssh:

进入是vi /root/.ssh/known_hosts 删除对应的节点内容


#生成ssh免登陆密钥

#进入到我的home目录:cd ~/.ssh

(1) ssh-keygen (四个回车)

执行完这个命令后,会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)

将公钥拷贝到要免密登陆的目标机器上

(2) ssh-copy-id mini2


ssh免登陆:

生成key:

ssh-keygen

复制从A复制到B上:

ssh-copy-id B

验证:

ssh localhost/exit,ps -e|grep ssh

ssh A #在B中执行


本文转载自: https://blog.csdn.net/shanglin1122/article/details/135389724
版权归原作者 幸福巡礼 所有, 如有侵权,请联系我们删除。

“【大数据(一)】hadoop2.4.1集群搭建(重点)”的评论:

还没有评论