CentOS 7部署Hadoop伪分布式环境
说明Hadoop能正常运行本地模式,也就是环境配置好了,相当于Hadoop的Hello World。运行模式主要用来debug。接下来配置伪分布式环境。伪分布式是只在一个节点上,运行三大组件。 hadoop101会将所有公钥放入authorized_keys文件中。author…
后端1分钟阅读
cd /opt/module/hadoop-3.2.1/ # 进入Hadoop的目录vim etc/hadoop/hadoop-env.sh # 修改环境:/java\c # 搜索Java,\c是不区分大小写
找到这一行后在下面加上JDK路径:
![]()
测试:

mkdir inputcp etc/hadoop/*.xml inputbin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.2.1.jar grep input ouput 'dfs[a-z,]+'![]()
说明Hadoop能正常运行本地模式,也就是环境配置好了,相当于Hadoop的Hello World。运行模式主要用来debug。接下来配置伪分布式环境。伪分布式是只在一个节点上,运行三大组件。
ssh-keygen -t rsa # 所有机器都要生成公私钥对。ssh-copy-id hadoop101 # 所有机器将公钥拷贝给Hadoop101,包括101本身hadoop101会将所有公钥放入authorized_keys文件中。authorized_keys中存有其它主机的公钥,其他主机就可以无密访问存放authorized_keys文件的主机。
scp ~/.ssh/authorized_keys hadoop102:~/.ssh/scp ~/.ssh/authorized_keys hadoop103:~/.ssh/现在hadoop101有所有机器的公钥了,直接将authorized_keys文件拷贝到其它主机就很方便的访问发送过公钥的机器。
如果启动集群时报以下错误说明免密码登录没配置好
Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).
rpm -qa | grep ntp没有的话就安装sudo yum install -y ntp修改配置文件如下图
sudo vim /etc/ntp.conf
让硬件时间与系统时间一起同步
sudo vim /etc/sysconfig/ntpdSYNC_HWCLOCK=yes # 添加这句开启ntpd
chkconfig ntpd on 将ntpd永久开启systemctl start ntpd.service # 启动ntpdsystemctl status ntpd.service # 查看ntpd状态所有机器上设置定时同步
crontab -e # 编辑定时任务0-59/10 * * * * /usr/sbin/ntpdate hadoop101 # 每10分钟和hadoop101同步一次时钟,所有机器都加上这一句cd etc/hadoopvim core-site.xml
<configuration><!-- 指定HDFS中NameNode的地址 --> <property> <name>fs.defaultFS</name> <value>hdfs://hadoop101:8020</value> </property>
<!-- 指定Hadoop运行时产生文件的存储目录 --> <property> <name>hadoop.tmp.dir</name> <value>/opt/module/hadoop-</value> </property></configuration>vim hdfs-site.xml
<name>dfs.replication</name><value>1</value>单一节点至多存储一份副本第一次启动必须要先格式化HDFS,以后不要格式化。HDFS需要通过格式化的过程来创建元数据的目录。
bin/hdfs namenode -format
sbin/start-dfs.sh
jps查看进程
