阿里云服务器16.04安装Hadoop 完美解决方案,16.04hadoop
ubuntu16.04 阿里云服务器安装 hadoop
一、准备
$ sudo useradd -m hadoop -s /bin/bash #创建hadoop用户,并使用/bin/bash作为shell
$ sudo passwd hadoop #为hadoop用户设置密码,之后需要连续输入两次密码
$ sudo adduser hadoop sudo #为hadoop用户增加管理员权限
$ su - hadoop #切换当前用户为用户hadoop
$ sudo apt-get update #更新hadoop用户的apt,方便后面的安装
-
安装SSH,设置SSH无密码登陆(有必要,不然你就使劲输入密码吧)
$ sudo apt-get install openssh-server #安装SSH server
$ ssh localhost #登陆SSH,第一次登陆输入yes
$ exit #退出登录的ssh localhost
$ cd ~/.ssh/ #如果没法进入该目录,执行一次ssh localhost
$ ssh-keygen -t rsa
输入完 $ ssh-keygen -t rsa 语句以后,需要连续敲击三次回车
之后再输入:
$ cat ./id_rsa.pub >> ./authorized_keys #加入授权
$ ssh localhost #此时已不需密码即可登录localhost,并可见下图。如果失败则可
然后安装Java,设置Java环境变量
然后安装 hadoop ,设置环境变量和相关内容
相关内容可以参考这篇博客,传送门
我的相关配置 vim ~/.bashrc
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
export HADOOP_HOME=/usr/local/hadoop
export CLASSPATH=$($HADOOP_HOME/bin/hadoop classpath):$CLASSPATH
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
相关操作
1. 先到hadoop主目录 跳转到sbin
2. 启动服务
start-all.sh
3.关闭服务
stop-all.sh
1、通过
http://127.0.0.1:8088/
即可查看集群所有节点状态:
2、访问 http://localhost:9870/
即可查看文件管理页面:
3、通过hadoop命令行进行文件操作:
mkdir命令创建目录:hadoop fs -mkdir hdfs://localhost:9000/user
4 、 ls命令查看指定目录文件列表:hadoop fs -ls hdfs://localhost:9000/user/
hadoop 测试
1 先启动服务
start-all.sh
2. 查看文件夹
hdfs dfs -ls /
3.创建文件夹
hdfs dfs -mkdir /test
hdfs dfs -mkdir /test2
4. 复制文件从本地
hdfs dfs -copyFromLocal /usr/local/1.txt /test/
5. hdfs dfs -copyToLocal /test/1.txt /home/a
hdfs dfs -copyToLocal /test/1.txt /usr/local/src/
6. 查看文件
hdfs dfs -cat /test/s.txt
7. 从HDFS下载到复制到本地,并且还可以重命名
hdfs dfs -copyToLocal /test/1.txt /usr/local/src/3.txt
8. 更改权限
hdfs dfs -chmod 777
ubuntu 16.04搭建hadoop
这是我要是的重点,问题的解决
问题 一、 Hadoop之—— WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform…
解决方案
问题二、hadoop上传文件错误org.apache.hadoop.ipc.RemoteException(java.io.IOException)
解决方案
使用 `hadoop dfsadmin -report` 命令查看磁盘使用情况
怎么在浏览器中找到阿里云服务器对应的HDFS在线查看网址?
1- 用jps 查看
其作用是显示当前系统的java进程情况,及其id号
root@yan:/# jps
12066 ResourceManager
11914 SecondaryNameNode
24330 Jps
11596 NameNode -----------------------------------》》》》》11596
11740 DataNode -----------------------------------》》》》》11740
12175 NodeManager
root@yan:/#
2. netstat -ntlp 查看端口号
root@yan:/# netstat -ntlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:8040 0.0.0.0:* LISTEN 12175/java
tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 11596/java
tcp 0 0 0.0.0.0:8009 0.0.0.0:* LISTEN 1161/java
tcp 0 0 0.0.0.0:8042 0.0.0.0:* LISTEN 12175/java
tcp 0 0 0.0.0.0:50090 0.0.0.0:* LISTEN 11914/java
tcp 0 0 0.0.0.0:35691 0.0.0.0:* LISTEN 12175/java
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 1161/java
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 848/nginx -g daemon
tcp 0 0 127.0.0.1:38230 0.0.0.0:* LISTEN 11740/java ------------》》》38230
tcp 0 0 0.0.0.0:50070 0.0.0.0:* LISTEN 11596/java ----------------》》》50070
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1068/sshd
tcp 0 0 0.0.0.0:8088 0.0.0.0:* LISTEN 12066/java
tcp 0 0 127.0.0.1:6010 0.0.0.0:* LISTEN 13067/0
tcp 0 0 0.0.0.0:50010 0.0.0.0:* LISTEN 11740/java
tcp 0 0 0.0.0.0:8090 0.0.0.0:* LISTEN 848/nginx -g daemon
tcp 0 0 127.0.0.1:6011 0.0.0.0:* LISTEN 12681/3
tcp 0 0 0.0.0.0:50075 0.0.0.0:* LISTEN 11740/java
tcp 0 0 127.0.0.1:6012 0.0.0.0:* LISTEN 13631/1
tcp 0 0 0.0.0.0:8030 0.0.0.0:* LISTEN 12066/java
tcp 0 0 0.0.0.0:8031 0.0.0.0:* LISTEN 12066/java
tcp 0 0 0.0.0.0:8032 0.0.0.0:* LISTEN 12066/java
tcp 0 0 0.0.0.0:8033 0.0.0.0:* LISTEN 12066/java
tcp 0 0 0.0.0.0:50020 0.0.0.0:* LISTEN 11740/java
tcp 0 0 127.0.0.1:8005 0.0.0.0:* LISTEN 1161/java
tcp6 0 0 :::3306 :::* LISTEN 786/mysqld
tcp6 0 0 :::80 :::* LISTEN 848/nginx -g daemon
3. 找到11596 11740对应的端口号分别是50070 38230
4. 开放云服务器端口号(添加安全组规则)
下面是我的端口号(端口号不开放,是访问不到的)
5.浏览器输入http:61.135.169.121:50070
其中端口号之前的是你的阿里云IP地址,当然你完全不必开放,因为一旦开放,别人就能访问,对你的数据是极其不安全的
本站文章为和通数据库网友分享或者投稿,欢迎任何形式的转载,但请务必注明出处.
同时文章内容如有侵犯了您的权益,请联系QQ:970679559,我们会在尽快处理。