第一章:用为分布式搭建hadoop

    xiaoxiao2025-08-04  20

    第一章:用为分布式搭建hadoop

    1、Linux基本环境配置 1.1、首先修改主机名为自己虚拟机的主机名: vim /etc/sysconfig/network

    NETWORKING=yes HOSTNAME=zxy # 主机名 1.2、关闭防火墙 #查看防火墙状态 running/not running #关闭防火墙 firewall-cmd --state #关闭防火墙开机启动 systemctl disable firewalld 1.3、传输JDK和HADOOP压缩包 SecureCRT 【File】→【Connect SFTP Session】开启sftp操作 put 文件所在位置/jdk-8u121-linux-x64.tar.gz put 文件所在位置/hadoop-2.7.3.tar.gz 如上所示文件已经传输完毕 1.4、解压JDK、HADOOP 解压不能在SFTP里面执行 tar -zxvf jdk-8u121-linux-x64.tar.gz -C /opt/module 解压安装 tar -zxvf hadoop-2.7.3.tar.gz -C /opt/module 解压安装 1.5、配置JDK并生效 以下操作都在CRT内执行 vi /etc/profile文件添加: export JAVA_HOME=/opt/module/jdk1.8.0_121 export PATH=JAVAHOME/bin: JAVA_HOME/bin:JAVA H ​ OME/bin:PATH Esc :wq!保存并退出。不需要配置CLASSPATH。 source /etc/profile配置生效 最后javac,检验是否配置成功 1.6、配置HADOOP并生效 vi /etc/profile文件添加: export HADOOP_HOME=/opt/module/hadoop-2.7.3 export PATH=HADOOPHOME/bin: HADOOP_HOME/bin:HADOOP H ​ OME/bin:HADOOP_HOME/sbin:$PATH Esc :wq!保存并退出。 source /etc/profile配置生效 最后输入hadoop检验是否配置成功 1.7、修改Hadoop配置 sudo chown -R hadoop:hadoop ${HADOOP_HOME} 配置hadoop-env.sh的JAVA_HOME参数

    # 使用sudo命令,打开hadoop-env.sh文件 sudo vim ${HADOOP_HOME}/etc/hadoop/hadoop-env.sh # 修改JAVA_HOME的环境配置为如下所示: export JAVA_HOME=/java/jdk1.8.0_151

    配置core-site.xml文件`

    # 创建一个tmp目录 mkdir ${HADOOP_HOME}/tmp # 设置权限 sudo chown hadoop:hadoop ${HADOOP_HOME}/tmp # 打开core-site.xml文件 sudo vim ${HADOOP_HOME}/etc/hadoop/core-site.xml # 在<configuration>中添加配置 <configuration> <!-- 指定HADOOP所使用的文件系统schema(URI),HDFS的老大(NameNode)的地址 --> <property> <name>fs.defaultFS</name> <value>hdfs://zhang:9000</value> </property> <!-- 指定hadoop运行时产生临时文件的存储目录 --> <property> <name>hadoop.tmp.dir</name> <value>/hadoop/hadoop-2.7.5/tmp</value> </property> </configuration>

    配置hdfs-site.xml文件`

    <configuration> <!-- 指定HDFS副本的数量 --> <property> <name>dfs.replication</name> <value>1</value> </property> <property> <name>dfs.secondary.http.address</name> <value>192.168.108.99:50090</value> </property> </configuration>

    1.8、运行自带程序wordcountcd /opt/module/hadoop-2.7.3/share/hadoop/mapreduce 转入wordcount所在路径 touch in.txt 创建In.txt文件 vi in.txt 输入要统计词频的文字 hadoop jar hadoop-mapreduce-examples-2.7.3.jar wordcount in.txt output/ 运行wordcount,output目录必须不存在,程序运行之后自动创建。 2、Hadoop伪分布式模式配置

    1.core-site.xml <!--配置HDFS主节点,namenode的地址,9000是RPC通信端口--> <property> <name>fs.defaultFS</name> <value>hdfs://bigdata128:9000</value> </property> <!--配置HDFS数据块和元数据保存的目录,一定要修改--> <property> <name>hadoop.tmp.dir</name> <value>/opt/module/hadoop-2.7.3/tmp</value> </property> 2.hdfs-site.xml <!--注释配置数据块的冗余度,默认是3--> <property> <name>dfs.replication</name> <value>1</value> </property> <!--secondaryNameNode的主机地址--> <property> <name>dfs.namenode.secondary.http-address</name> <value>bigdata129:50090</value> </property> 3. mapred-site.xml(该配置文件不存在,先复制) cp mapred-site.xml.template mapred-site.xml <!--配置MR程序运行的框架--> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> 4. yarn-site.xml <!--配置Yarn的节点--> <property> <name>yarn.resourcemanager.hostname</name> <value>bigdata128</value> </property> <!--NodeManager执行MR任务的方式是Shuffle洗牌--> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property>

    格式化: hdfs namenode -format 启动: start-all.sh 最后出现如下图所示则说明配置成功:

    最新回复(0)