hadoop 3.x版本出来已经很久了,之前应为工作需求的原因是安装并使用了spark 3.2.1的版本,现在将之前安装使用过程中遇到的问题总结记录一下。
主要是以下的安装过程:
- hadoop user以及相关文件的权限配置
- gpu资源的支持
- docker容器的支持
hadoop user以及相关文件权限配置
- 确保所有的服务器用户可以相互ssh without passwd
- 创建hadoop group, 然后添加所有使用hadoop服务的用户到hadoop group中
- hadoop目录的权限确保:u=rwx,g=xr,o=x 并且owner=root group=hadoop
- container-executor的权限确保:6050,比如:chmod 6050 /hadoop_home/bin/container-executor
- hadoop 配置文件的权限确保:u=rw,g=r,o=r 并且owner=root group=hadoop
- 配置文件 container-executor.cfg需要特殊配置:u=-,g=rx,o=- 并且owner=root group=hadoop
GPU的支持
- 因为GPU的调度支持依赖cgroups,所以要确保cgroups的root=/sys/fs/cgroup
- 配置container-executor.cfg 中的yarn-hierarchy, 这个很重要, 而且要确保以下两个路径存在:/sys/fs/cgroup/cpu,cpuacct/hadoop-yarn/和/sys/fs/cgroup/devices/hadoop-yarn
docker容器的支持
- yarn运行docker容器的时候,是按照host user运行docker 容器的程序的, 所以必须确保docker容器中也存在同样的用户, 不然会报错,这里使用的方案是直接在的docker 容器中mount hosts的/etc/passed以及/etc/group。
![](https://i-blog.csdnimg.cn/blog_migrate/67b9168380deadb1cec496e27e0cf9c4.png)