hadoop平台部署与运维,hadoop常见问题
终极管理员 知识笔记 75阅读
初始化失败HDFS初始化操作如下
hdfs namenode -format
然后我运行后报错error parsing conf core-site.xml
出现这个信息就说明core-site.xml配置文件出错了用vim命令可以再修改。这里插入一个小tipvim命令打开文件后输入i表示Insert才能编辑文本编辑好后摁Esc后输入wq保存并退出即可。这里出错可以看一下日志报告的什么错误比如我的这个就是name打错成了neme修改过后就初始化成功了。
初始化成功会显示如下图片内容Storage。。。。successfully formatted

格式化操作如下
hdfs bin/hdfs namenode -format
不要多次格式化后面会出问题。多次格式化需要删除/usr/hadoop/hadoopdata目录后再重新格式化

因为前面只配置了hadoop用户的环境变量不登录启动不了HDFS。
1.需要创建hadoop用户
sudo useradd hadoop
2.设置hadoop用户密码
sudo passwd hadoop
3.添加 Hadoop 用户到 Hadoop 组
sudo usermod -a -G hadoop hadoopuser
注意空格
4.切换登录账户
su - hadoop
这时候又报错了-bash-4.2$
将/etc/skel目录下的环境变量文件拷贝到当前用户根目录然后重新登录
操作方法如下
1.创建根目录
mkdir /home/hadoop
2.修改权限
chown hadoop:hadoop /home/hadoop
3.拷贝文件
bash-4.2$ cp /etc/skel/.bash* ~/
注意空格
4.重新登录
bash-4.2$ bash
这里又有新问题因为使用了sudo命令错误hadoop 不在 sudoers 文件中。此事将被报告。
我从网上查了一些解决方案但是我没有管。我是直接转到初始目录下操作上面1,2,3步以后登录登录后依然是bash-4.2$直接bash就登录上了。
启动HDFS和YARN时又报错了Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password)Starting datanodes这时候我登陆了hadoop账户但是我忽略了一个重要问题那就是格式化的时候用的是root这时候使用hadoop启动权限是不够的一开始的时候只配置了hadoop用户的环境变量再加一个root变量就可以解决问题了。
登录用户错误添加root变量
vim /etc/profile
添加root环境变量到最后
export HDFS_NAMENODE_USERrootexport HDFS_DATANODE_USERrootexport HDFS_SECONDARYNAMENODE_USERrootexport YARN_RESOURCEMANAGER_USERrootexport YARN_NODEMANAGER_USERroot
然后source /etc/profile
使配置文件生效即可。
用户权限解决了又出现了新的问题
Java路径问题
解决方法vim /app/hadoop-3.2.2/etc/hadoop/hadoop-env.sh加粗部分是本人安装hadoop的路径因人而异。
添加export JAVA_HOME/usr/local/java/jdk1.8.0_341/自己的Java路径注意不要添加到注释后面。
最后启动HDFS和YARN终于成功。