单节点伪分布式Hadoop部署笔记

单节点伪分布式Hadoop部署笔记

、准备工作,安装好虚拟机(VMware16),并安装一个linux系统(CentOS7.9)


1、创建用户hadoop
①创建用户
useradd hadoop

useradd -d /home/hadoop -m hadoop
②查看用户创建情况
cat /etc/passwd
③设置密码
passwd hadoop
④切换用户
su - hadoop
⑤退出
exit
2、为用户hadoop添加sudo权限
①编辑/etc/sudoers
vi /etc/sudoers

vim /etc/sudoers
建议使用vim,若没有vim,可以通过yum命令安装
yum install vim
②找到root ALL=(ALL) ALL,在下一行添加如下内容
hadoop ALL=(ALL) ALL
③强制保存退出
:wq!
因为文件没有写权限,这里使用强制保存退出命令。
当然也可以先给文件赋予写权限,操作完毕之后,撤回写权限。
用到chmod命令,条条大路通罗马,不再赘述。
④验证hadoop的sudo权限
su - hadoop
cd /
sudo mkdir /data
3、配置SSH本机免登录
①生成公私密钥对
ssh-keygen

ssh-keygen -t rsa
②切到家目录
cd
③查看是否生成了.ssh以及目录下的id_rsa、id_rsa.pub文件
④把公钥id_rsa.pub写入.ssh目录下的authorized_keys文件中
方法一(推荐)
ssh-copy-id -i id_rsa.pub hadoop@localhost
方法二
touch authorized_keys
cat id_rsa.pub >> authorized_keys
chmod 600 authorized_keys
方法三
vim authorized_keys
自己把id_rsa.pub的内容复制粘贴过来
chmod 600 authorized_keys
⑤测试
ssh localhost
exit


0、涉及到linux操作,没有特殊说明,使用hadoop用户
1、下载jdk
https://www.oracle.com/java/technologies/downloads/archive/
下载对应版本的jdk,这里选择jdk-8u371-linux-x64.tar.gz
2、在根目录创建 data和apps目录

cd /
sudo mkdir data
sudo mkdir apps
②设置目录的属主和属组
sudo chown hadoop:hadoop /data /apps
③通过ftp把jdk-8u371-linux-x64.tar.gz上传到/data目录
④解压到/apps目录
tar -zxvf jdk-8u371-linux-x64.tar.gz -C /apps
⑤更名
mv jdk1.8.0_371/ java
⑥设置java环境变量
cd
vim .bashrc

#JAVA
export JAVA_HOME=/apps/java
export PATH=$JAVA_HOME/bin:$PATH

⑦使配置文件生效
source .bashrc
⑧验证
java -version


1、下载对应版本的hadoop
https://archive.apache.org/dist/hadoop/common/
这里演示使用的版本是hadoop-2.7.5.tar.gz
2、通过ftp把hadoop-2.7.5.tar.gz上传到/data目录
3、解压到/apps目录
tar -zxvf hadoop-2.7.5.tar.gz -C /apps/
4、重命名
mv hadoop-2.7.5/ hadoop
5、配置HADOOP环境变量

cd
vim .bashrc

#HADOOP
export HADOOP_HOME=/apps/hadoop
export PATH=\$HADOOP_HOME/bin:$PATH

②使配置文件生效
source .bashrc
③验证
hadoop version
6、根据官方文档搭建单节点集群
①参考文档
https://hadoop.apache.org/docs/r2.7.5/hadoop-project-dist/hadoop-common/SingleCluster.html
② hadoop-env.xml
设置JAVA_HOME

export JAVA_HOME=/apps/java

③ core-site.xml
设置临时目录得基础目录,可以不设置,保持默认,默认为/tmp/hadoop-${user.name}

<property>
    <name>hadoop.tmp.dirname>
    <value>/data/tmp/hadoop/tmpvalue>
property>
<property>
  <name>fs.defaultFSname>
  <value>hdfs://192.168.40.103:9000value>
property>

注:1、若设置了hadoop.tmp.dir,需要提前创建好目录
mkdir -p /data/tmp/hadoop/tmp
2、fs.defaultFS配置中ip根据实际情况进行配置

④ hdfs-site.xml

<property>
	<name>dfs.replicationname>
	<value>1value>
property>

7、格式化文件系统
hdfs namenode -format
看到类似信息时,说明我们得文件系统格式化成功
INFO common.Storage: Storage directory /data/tmp/hadoop/tmp/dfs/name has been successfully formatted.
8、启动hdfs
cd /apps/hadoop/sbin/
./start-dfs.sh
9、使用jps查看进程情况
jps
看到NameNode DataNode SecondaryNameNode进程,说明启动成功
10、停止hdfs
./stop-dfs.sh
11、shell 命令
https://hadoop.apache.org/docs/r2.7.5/hadoop-project-dist/hadoop-common/FileSystemShell.html

、MapReduce

1、mapred-site.xml的配置
cd /apps/hadoop/etc/hadoop
cp mapred-site.xml.template mapred-site.xml
vim mapred-site.xml

<configuration>
    <property>
        <name>mapreduce.framework.namename>
        <value>yarnvalue>
    property>

2、yarn-site.xml 的配置
vim yarn-site.xml

<configuration>
    <property>
        <name>yarn.nodemanager.aux-servicesname>
        <value>mapreduce_shufflevalue>
    property>
configuration>

3、启动yarn
cd /apps/hadoop/sbin
./start-yarn
4、ResourceManager - http://ip:8088/
5、
hadoop jar /apps/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.5.jar wordcount /in /out
6、停止yarn
./stop-yarn

小尾巴~~
只要有积累,就会有进步

你可能感兴趣的:(BigData,1024程序员节,hadoop,linux,hdfs,mapreduce)