使用hadoop-3.1.0版本
添加用户hadoop
useradd hadoop
设置hadoop用户免密登录
切换到hadoop用户操作
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 0600 ~/.ssh/authorized_keys
测试hadoop用户可以免密登录
切换到hadoop用户操作
ssh localhost直接登录成功
以下操作使用hadoop用户
官网下载hadoop-3.1.0安装包
https://archive.apache.org/dist/hadoop/common/hadoop-3.1.0/hadoop-3.1.0.tar.gz
官网hadoop-3.1.0文档
https://hadoop.apache.org/docs/r3.1.0/hadoop-project-dist/hadoop-common/SingleCluster.html#Pseudo-Distributed_Operation
配置环境变量/etc/profile
export HADOOP_HOME=/opt/hadoop/hadoop-2.10.1
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
重新生效:source /etc/profile
解压后进入目录hadoop-3.1.0
修改配置etc/hadoop/hadoop-env.sh
# set to the root of your Java installation
export JAVA_HOME=jdk地址
修改配置etc/hadoop/core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>设置数据存储目录</value>
</property>
</configuration>
修改配置etc/hadoop/hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
格式化namenode
bin/hdfs namenode -format
启动
sbin/start-dfs.sh
hadoop访问界面
http://IP:9870
执行操作命令
显示目录列表
bin/hdfs dfs -ls /
创建单机目录
bin/hdfs dfs -mkdir /a
创建多级目录
bin/hdfs dfs -mkdir -p /a/b/c
删除目录
bin/hdfs dfs -rm -r /a
上传文件
bin/hdfs dfs -put a.txt /
查看文件内容
bin/hdfs dfs -cat /a.txt
下载文件
bin/hdfs dfs -get /a.txt
删除文件
bin/hdfs dfs -rm /a.txt
停止
sbin/stop-dfs.sh
Hadoop命令
hdfs dfs -mkdir /tmp 创建目录
hdfs dfs -mkdir -p /tmp/a/b/c/d 创建多级目录
hdfs dfs -rm -r /tmp/a/b 删除目录
hdfs dfs -ls / 查看目录内容
hadoop fs -ls /
hdfs dfs -ls -R /tmp 递归显示目录
hdfs dfs -put aa.txt /tmp 上传文件
hdfs dfs -rm /tmp/aa.txt 删除文件
hdfs dfs -mv /tmp/aa.txt /tmp/a 文件移动
hdfs dfs -cat /tmp/a/aa.txt 查看文件内容
hdfs dfs -get /tmp/aa.txt 下载文件
hdfs dfs -get /tmp/aa.txt bb.txt 下载文件并且改名字
hdfs dfs -chown aa:bb /tmp 修改目录所有者、所属组
hdfs dfs -chown -R root:supergroup /tmp 修改目录及文件所有者所属组
代码连接
public class test {
public static void main(String[] args) {
try {
Configuration configuration = new Configuration();
configuration.set("fs.defaultFS","hdfs://localhost:8080");
configuration.set("HADOOP_USER_NAME","root");
// System.setProperty("hadoop.home.dir", "/usr/hadoop");
// 获取文件系统
FileSystem fileSystem = FileSystem.get(configuration);
fileSystem.close();
log.info("连接成功");
} catch (Exception e) {
}
}
}
版权声明:本文为rbcd原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。