下面给你一份在 Linux 上安装 Hadoop(单机/伪分布式)的通用教程,适合学习、开发、测试环境。如果你需要 完全分布式集群 或 生产环境配置,可以再告诉我。
sudo useradd -m hadoop
sudo passwd hadoop
su - hadoop
sudo apt update
sudo apt install openjdk-8-jdk -y
sudo yum install java-1.8.0-openjdk java-1.8.0-openjdk-devel -y
验证:
java -version
以 Hadoop 3.3.6 为例:
cd /opt
sudo wget https://downloads.apache.org/hadoop/common/hadoop-3.3.6/hadoop-3.3.6.tar.gz
sudo tar -zxvf hadoop-3.3.6.tar.gz
sudo mv hadoop-3.3.6 hadoop
sudo chown -R hadoop:hadoop hadoop
编辑 ~/.bashrc 或 /etc/profile:
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export HADOOP_HOME=/opt/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
生效:
source ~/.bashrc
验证:
hadoop version
hadoop-env.shcd $HADOOP_HOME/etc/hadoop
vi hadoop-env.sh
添加或修改:
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
core-site.xml<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
hdfs-site.xml<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
mapred-site.xml<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>
</configuration>
ssh-keygen -t rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
测试:
ssh localhost
⚠️ 只执行一次
hdfs namenode -format
start-dfs.sh
start-yarn.sh
查看进程:
jps
应看到:
NameNode
DataNode
SecondaryNameNode
ResourceManager
NodeManager
hdfs dfs -mkdir /test
hdfs dfs -put /opt/hadoop/LICENSE.txt /test
hdfs dfs -ls /test
stop-yarn.sh
stop-dfs.sh
如果你需要:
告诉我你的 Linux 版本 + 机器数量,我可以给你定制方案。