hadoop的安装和配置--伪分布模式

一:ssh的免密登陆

伪分布式模式下工作时必须必须启动守护进程,启动守护进程:SSH连接到相关的主机并启动一个守护进程。

基于空口令生成一个新的SSH密钥,以实现无密码登录

# ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
# cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
# chmod 0600 ~/.ssh/authorized_keys

# ls ~/.ssh/
authorized_keys  id_rsa  id_rsa.pub  known_hosts

使用以下指令测试是否能够成功,如果能成功则无需键入密码

# ssh localhost

二:配置文件

在hadoop安装目录的etc/hadoop有相关的配置文件:

# cd /usr/local/hadoop/etc/hadoop/

core-site.xml配置修改:

<configuration>
 <property>
  <name>fs.defaultFS</name>
  <value>hdfs://localhost</value>
 </property>
</configuration>

fs.defaultFS: 设置Hadoop的默认文件系统

hdfs-site.xml配置修改:

<configuration>
 <property>
  <name>dfs.replication</name>
  <value>1</value>
 </property>
</configuration>

备注:dfs.replication参数表示hdfs中文件的副本数

mapred-site.xml配置修改:

若没有mapred-site.xml,选择以下方法复制

# cp mapred-site.xml.template mapred-site.xml

<configuration>
 <property>
  <name>mapreduce.framework.name</name>
  <value>yarn</value>
 </property>
</configuration>

mapreduce.framework.name:指定mapreduce 编程模型运行在yarn上

yarn-site.xml配置修改:

<configuration>

<!-- Site specific YARN configuration properties -->
<property>
  <name>yarn.resourcemanager.hostname</name>
  <value>localhost</value>
</property>

<property>
  <name>yarn.nodemanager.aux-services</name>
  <value>mapreduce_shuffle</value>
</property>
</configuration>

yarn.resourcemanager.hostname: 指定resource manager的主机host

yarn.nodemanager.aux-services:节点管理器运行的附加服务列表

hadoop-env.sh修改

把export JAVA_HOME=${JAVA_HOME}改成实际的JAVA_HOME地址

如export JAVA_HOME=/opt/jdk1.8.0_121

否则会在启动hadoop出现如下报错:

JAVA_HOME is not set and could not be found

三:格式化hdfs文件系统

# hdfs namenode -format

四:启动hadoop

分别启动HDFS、YARN和MapReduce守护进程

# start-dfs.sh 

# start-yarn.sh

# mr-jobhistory-daemon.sh start historyserver

备注:如果配置文件不在默认的conf目录中,则需要在启动守护进程时通过--config选项指向配置目录

例如: start-dfs.sh --config /opt/config

想要确定hadoop是否配置成功,可使用jps来查询进程

# jps
15920 NameNode
21298 Jps
15219 ResourceManager
16580 JobHistoryServer
13078 Kafka
12716 QuorumPeerMain
16204 SecondaryNameNode
16444 NodeManager
16045 DataNode

五:HDFS集群的简单操作命令

# hdfs dfs -ls /
Found 1 items
drwxrwx---   - root supergroup          0 2018-12-29 03:13 /tmp
 
# hdfs dfs -mkdir -p /user/test

猜你喜欢

转载自blog.csdn.net/vincent_yuan89/article/details/85335091
今日推荐