hadoop伪分布式搭建*
1、首先你要准备一台虚拟机(这里推荐使用vmware)并且里面安装了Linux系统。我这里用的Cent os7
安装完了Linux系统之后,建议先给你的Linux系统设置静态ip,这里在我刚学的时候觉得是最难的一块,大部分人都会在这不知所措,他们都知道要配置静态ip,但就是配置不好,所以这里请认真仔细的看。
一般如果你去网上搜索如何配置静态IP,他都只会告诉去你的网卡设置里面设置你ip、网关、子网掩码和dns,但是他并不会告诉你该怎么设置你的这些东西
每个人设置自己的ip时都应该是不一样的,所以你完全按照网上的来肯定是不行的,所以这里教你怎么设置自己的IP和子网等。
1、首先点开虚拟网络编辑器,查看里面的ip地址范围以及子网掩码,、网关和dns,dns一般和网关是一样的。
我这里的ip是192.168.8.0,所以当我在Linux里面配置时我就需要配置192.168.8.0~192.168.8.255之间的IP地址,记住是在它们之间的IP地址。
当我们root登录进Linux系统时,输入vi /etc/sysconfig/network-scripts/ifcfg-你的网卡名字
我的网卡名字是ens33,所以我就要输入vi /etc/sysconfig/network-scripts/ifcfg-ens33
按“i”进行输入,按esc 然后shift+:输入wq保存退出,修改完了以后记得重启网络服务service network restart;重启之后输入ping www.baidu.com验证是否配置正确。
出现上图则表示配置成功。然后从网上下载djk和hadoop的安装包,至于版本就看自己下的了。
下载好了安装包之后,就用winscp或者其他传输软件把这两个安装包传到你的Linux系统里去
并解压两个文件
配置jdk环境
输入:vi /etc/profile.d/java.sh这里的profile.d是设置所属用户变量,而profile文件是全局变量,即所有用户都可以用,学习阶段推荐profile
红线的地方要写上你刚刚解压的jdk路径。然后reboot重启,重启之后Java -version,若出现版本号则表示配置成功,否则请检查上面的步骤。
修改主机名,让主机名与IP映射
vim /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=Hadoop01 ### //不能以数字开头,标点只能用减号-
这个network文件可能会有一些字符,删掉写上面的就行
vim /etc/hosts
192.168.8.77 Hadoop01
设置ssh免密登录
1、生成密钥:ssh-keygen -t rsa
2、生成认证库:cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
3、修改权限:chmod 600 ~/.ssh/authorized_keys
4、验证是否成功:ssh localhost第一次会让你输入yes,后面就不用输入了
关闭防火墙
关闭防火墙命令 :systemctl stop firewalld.service
配置Hadoop
1、修改env.sh文件:vi hadoop/hadoop-2.7.2/etc/hadoop/hadoop-env.sh(注意这里的路径是你的Hadoop路径,别照抄我的)修改export JAVA_HOME={$JAVA_HOME}
为 export JAVA_HOME=/usr/java/jdk1.8.0_162/
2、修改vi yarn-env.sh
找到#export JAVA_HOME=/home/y/libexec/jdk.1.6.0/
去掉#,改为
export JAVA_HOME=/jdk/jdk1.7.0_07
3、修改vi core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/wj/hadoopdata</value>
</property>
</configuration>
4、 c.修改 vi hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
5、配置hadoop环境变量:vi /etc/profile
#JAVA
export JAVA_HOME=/usr/java/jdk1.8.0_162
export PATH=$JAVA_HOME/bin:$PATH
#hadoop
export HADOOP_HOME=/home/wj/hadoop2.7.2
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
然后source /etc/profile是变量生效
6、格式化hdfs namenode -format
7、最后你就可以start-all.sh,然后jps看下进程,要6个才成功