环境准备
- 安装好java环境
- 关闭防火墙
- 安装ssh
执行下述命令,生成密钥
ssh-keygen -t rsa
一直回车执行,直到生成完毕
Your identification has been saved in /Users/dengwenjing/.ssh/id_rsa.
Your public key has been saved in /Users/dengwenjing/.ssh/id_rsa.pub.
执行下述命令
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod og-wx ~/.ssh/authorized_keys
- 给所有用户远程登录权限
- 尝试登陆localhost
ssh localhost
安装hadoop
- 使用brew安装hadoop
brew install hadoop
(如果没有装过brew,参考另一篇brew安装文章)
- 修改hadoop配置
- 修改core-site.xml,配置集群全局参数,如临时文件夹,文件系统主机和端口
vi /usr/local/Cellar/hadoop/3.2.1/libexec/etc/hadoop/core-site.xml
向configuration中增加下述内容
此处修改的hadoop.tmp.dir是hadoop文件存放的目录,一般在这个目录下dfs文件夹里存放namenode和datanode数据
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/usr/local/Cellar/hadoop/3.2.1/libexec/tmp</value>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:8020</value>
</property>
</configuration>
- 配置hdfs-site.xml,指定NameNode的一些信息。同目录下执行
vi hdfs-site.xml
更新为下面的文件
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/local/Cellar/hadoop/3.2.1/libexec/tmp/dfs/name</value>
</property>
<property>
<name>dfs.namenode.data.dir</name>
<value>file:/usr/local/Cellar/hadoop/3.2.1/libexec/tmp/dfs/data</value>
</property>
</configuration>
- 配置 mapred-site.xml,指定yarn作为资源管理
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
- 配置yarn-site.xml,指定资源管理的参数
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.env-whitelist</name>
<value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>
</property>
</configuration>
- 把hadoop加入系统环境变量
vi ~/.bash_profile
export HADOOP_HOME=/usr/local/Cellar/hadoop/3.2.1/libexec
export HADOOP_ROOT_LOGGER=DEBUG,console
export PATH=$PATH:${HADOOP_HOME}/bin
source ~/.bash_profile
- 格式化HDFS
cd /usr/local/Cellar/hadoop/3.2.1/bin
./hdfs namenode -format
- 启动hadoop
脚本在sbin文件夹中,下面启动所有服务
start-all.sh
停止可使用
stop-dfs.sh
查看服务
jps
看看服务是否全了
67059 NameNode
67636 NodeManager
67303 SecondaryNameNode
64919
67160 DataNode
68619 Jps
12829 Main
67534 ResourceManager
查看NameNode
http://localhost:9870/
查看资源管理器
http://localhost:8088
参考文章
https://blog.csdn.net/vbirdbest/article/details/88189753
https://www.jianshu.com/p/af8a50f5a653