“2021云+数:大数据赛道”的版本间的差异

来自CloudWiki
跳转至: 导航搜索
 
(未显示同一用户的9个中间版本)
第1行: 第1行:
  
 +
==Hadoop大数据基础==
 +
*【腾讯文档】模拟操作题
 +
https://docs.qq.com/doc/DUGpFWVpGTkhoWndh
  
Java安装及Hadoop完全分布式集群搭建
+
*[[2021云+数:Java安装及Hadoop完全分布式集群搭建]]
  
==实训目标==
+
*[[2021云+数:Spark搭建]]
(1) 掌握在Linux下安装Java。
 
  
(2) 掌握配置Hadoop完全分布式集群。
+
*[[2021云+数:编程网站爬取]]
  
(3) 掌握Hadoop集群的启动与关闭。
+
*[[2021云+数:电路数据挖掘]]
  
==实训环境==
+
*[[2021云+数:股票数据可视化]]
(1) 使用CentOS6.10以上版本的Linux操作系统虚拟节点3个。
 
  
(2) 使用1.8的JDK。
+
*[[2021云+数:模拟题1]]
  
(3) 使用2.6.4版本的Hadoop安装包。
+
*[[2021云+数:模拟题2-4]]
  
==实训内容==
+
*[[2021云+数:51job]]
(1) 在Linux下安装Java。
 
 
 
(2) 修改Hadoop配置文件。
 
 
 
(3) 启动关闭Hadoop集群。
 
 
 
==实训步骤==
 
===前置步骤===
 
(1) 在Linux终端执行命令“initnetwork”,或者双击桌面上名称为“初始化网络”的图标,初始化实训平台网络。
 
 
 
(2) 在Linux终端执行命令“wget -P /opt/software http://datasrc.tipdm.net:81/bigdata/hadoop/software/jdk-8u151-linux-x64.rpm”,下载jdk-8u151-linux-x64.rpm到Linux本地/opt/software目录。
 
 
 
(3) 在Linux终端执行命令“wget -P /opt/software http://datasrc.tipdm.net:81/bigdata/hadoop/software/hadoop-2.6.4.tar.gz”,下载hadoop-2.6.4.tar.gz到Linux本地/opt/software目录。
 
 
 
(4) 在Linux终端执行如代码 4-1所示命令,将Java安装包发送到子节点上。
 
 
 
代码 4-1 远程发送Java安装包
 
 
 
<nowiki>ssh slave1 "mkdir /opt/software"
 
 
 
ssh slave2 "mkdir /opt/software"
 
 
 
scp /opt/software/jdk-8u151-linux-x64.rpm slave1:/opt/software/
 
 
 
scp /opt/software/jdk-8u151-linux-x64.rpm slave2:/opt/software/</nowiki>
 
===在Linux下安装Java===
 
(1) 在命令终端输入命令“java -version”查看当前环境下是否有安装Java,若如图 4-1所示,则当前环境并没有安装Java。若如图 4-2所示,则表明当前环境已完成安装,为保证集群各节点的Java版本一致,此时可通过命令“rpm -e $(rpm -qa |grep java-1.8.0) --nodeps”将已有包卸载。
 
 
 
图 4-1 查看Java版本1
 
 
 
图 4-2查看Java版本2
 
 
 
(2) 使用命令“cd /opt/software/”进入/opt/software目录,执行命令“rpm –ivh jdk-8u151-linux-x64.rpm”安装JDK,如图 4-2所示。
 
 
 
图 4-4安装JDK
 
 
 
(3) 通过命令“vi /etc/profile”编辑/etc/profile文件,按G跳到文件末尾,按o进入编辑状态,在/etc/profile文件末尾添加Java的环境变量,如图 4-3所示。
 
 
 
图 4-5 配置Java环境变量
 
 
 
(4) 先按Esc,后输入“:wq”回车进行保存退出,回到终端,执行命令“source /etc/profile”使配置即时生效。
 
 
 
(5) 验证JDK是否配置成功,执行命令“java -version”,如图 4-4所示说明JDK配置成功。
 
 
 
图 4-6验证JDK配置成功
 
 
 
(6) 进入节点slave1配置Java,通过“ssh slave1”进入slave1节点,按照步骤(1)-(5)安装。
 
 
 
(7) 进入节点slave2配置Java,先通过“exit”退出slave1,回到master,再通过“ssh slave2”进入slave2节点,按照步骤(1)-(5)安装。
 
 
 
(8) 安装完毕后,通过命令“exit”退出slave2,回到master节点。
 
 
 
===修改Hadoop配置文件===
 
 
 
以下步骤均在之前创建的虚拟机master上操作。
 
 
 
(1) 在/opt/software有Hadoop的安装包,执行命令“tar -zxf /opt/software/hadoop-2.6.4.tar.gz -C /usr/local”将Hadoop安装包解压到虚拟机master的/usr/local目录下。
 
 
 
(2) 进入/usr/local/hadoop-2.6.4/etc/hadoop目录,
 
 
 
(3) 使用命令“vi”修改相关的配置的文件。
 
 
 
修改core-site.xml文件,添加如表 4-1所示的内容。
 
 
 
表 4-1 修改core-site.xml
 
 
 
<nowiki><configuration>
 
 
 
<property>
 
 
 
<name>fs.defaultFS</name> 
 
 
 
  <value>hdfs://master:8020</value> 
 
 
 
  </property> 
 
 
 
<property>
 
 
 
  <name>hadoop.tmp.dir</name>
 
 
 
  <value>/var/log/hadoop/tmp</value>
 
 
 
</property>
 
 
 
</configuration>
 
</nowiki>
 
 
 
修改hadoop-env.sh文件,该文件是Hadoop运行基本环境的配置,需要修改为JDK的实际位置。故在该文件中修改JAVA_HOME值为本机安装位置,如表 4-2所示。
 
 
 
表 4-2 修改hadoop-env.sh
 
 
 
export JAVA_HOME=/usr/java/jdk1.8.0_151
 
 
 
修改yarn-env.sh,在该文件中修改JAVA_HOME值为本机安装位置,如表 4-3所示。
 
 
 
表 4-3 修改yarn-env.sh文件
 
 
 
<nowiki># export JAVA_HOME=/home/y/libexec/jdk1.6.0/
 
 
 
export JAVA_HOME=/usr/java/jdk1.8.0_151</nowiki>
 
 
 
修改mapred-site.xml,该文件是从mapred-site.xml.template文件复制得到的,复制命令为“cp mapred-site.xml.template mapred-site.xml”,修改内容如表 4-4所示。
 
 
 
表 4-4 修改mapred-site.xml
 
 
 
<nowiki><configuration>
 
 
 
<property>
 
 
 
    <name>mapreduce.framework.name</name>
 
 
 
    <value>yarn</value>
 
 
 
</property>
 
 
 
<!-- jobhistory properties -->
 
 
 
<property>
 
 
 
    <name>mapreduce.jobhistory.address</name>
 
 
 
    <value>master:10020</value>
 
 
 
</property>
 
 
 
<property>
 
 
 
    <name>mapreduce.jobhistory.webapp.address</name>
 
 
 
    <value>master:19888</value>
 
 
 
</property>
 
 
 
</configuration></nowiki>
 
 
 
修改yarn-site.xml文件,修改内容如表 4-5所示。
 
 
 
表 4-5 修改yarn-site.xml
 
 
 
<nowiki><configuration>
 
 
 
<!-- Site specific YARN configuration properties -->
 
 
 
<property>
 
 
 
    <name>yarn.resourcemanager.hostname</name>
 
 
 
    <value>master</value>
 
 
 
  </property>   
 
 
 
  <property>
 
 
 
    <name>yarn.resourcemanager.address</name>
 
 
 
    <value>${yarn.resourcemanager.hostname}:8032</value>
 
 
 
  </property>
 
 
 
  <property>
 
 
 
    <name>yarn.resourcemanager.scheduler.address</name>
 
 
 
    <value>${yarn.resourcemanager.hostname}:8030</value>
 
 
 
  </property>
 
 
 
  <property>
 
 
 
    <name>yarn.resourcemanager.webapp.address</name>
 
 
 
    <value>${yarn.resourcemanager.hostname}:8088</value>
 
 
 
  </property>
 
 
 
  <property>
 
 
 
    <name>yarn.resourcemanager.webapp.https.address</name>
 
 
 
    <value>${yarn.resourcemanager.hostname}:8090</value>
 
 
 
  </property>
 
 
 
  <property>
 
 
 
    <name>yarn.resourcemanager.resource-tracker.address</name>
 
 
 
    <value>${yarn.resourcemanager.hostname}:8031</value>
 
 
 
  </property>
 
 
 
  <property>
 
 
 
    <name>yarn.resourcemanager.admin.address</name>
 
 
 
    <value>${yarn.resourcemanager.hostname}:8033</value>
 
 
 
  </property>
 
 
 
  <property>
 
 
 
    <name>yarn.nodemanager.local-dirs</name>
 
 
 
    <value>/hadoop/yarn/local</value>
 
 
 
  </property>
 
 
 
  <property>
 
 
 
    <name>yarn.log-aggregation-enable</name>
 
 
 
    <value>true</value>
 
 
 
  </property>
 
 
 
  <property>
 
 
 
    <name>yarn.nodemanager.remote-app-log-dir</name>
 
 
 
    <value>/tmp/yarn/logs</value>
 
 
 
  </property>
 
 
 
<property>
 
 
 
<name>yarn.log.server.url</name>
 
 
 
<value>http://master:19888/jobhistory/logs/</value>
 
 
 
<description>URL for job history server</description>
 
 
 
</property>
 
 
 
<property>
 
 
 
  <name>yarn.nodemanager.vmem-check-enabled</name>
 
 
 
    <value>false</value>
 
 
 
  </property>
 
 
 
<property>
 
 
 
    <name>yarn.nodemanager.aux-services</name>
 
 
 
    <value>mapreduce_shuffle</value>
 
 
 
  </property>
 
 
 
  <property>
 
 
 
    <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
 
 
 
      <value>org.apache.hadoop.mapred.ShuffleHandler</value>
 
 
 
      </property>
 
 
 
<property> 
 
 
 
        <name>yarn.nodemanager.resource.memory-mb</name> 
 
 
 
        <value>2048</value> 
 
 
 
</property> 
 
 
 
<property> 
 
 
 
        <name>yarn.scheduler.minimum-allocation-mb</name> 
 
 
 
        <value>512</value> 
 
 
 
</property> 
 
 
 
<property> 
 
 
 
        <name>yarn.scheduler.maximum-allocation-mb</name> 
 
 
 
        <value>4096</value> 
 
 
 
</property>
 
 
 
<property>
 
 
 
    <name>mapreduce.map.memory.mb</name>
 
 
 
    <value>2048</value>
 
 
 
</property>
 
 
 
<property>
 
 
 
    <name>mapreduce.reduce.memory.mb</name>
 
 
 
    <value>2048</value>
 
 
 
</property>
 
 
 
<property>
 
 
 
    <name>yarn.nodemanager.resource.cpu-vcores</name>
 
 
 
    <value>1</value>
 
 
 
</property>
 
 
 
</configuration></nowiki>
 
 
 
修改slaves文件,该文件里面保存有slave节点的信息,在slaves文件里面删除原先的localhost,添加如表 4-6所示的内容。
 
 
 
表 4-6 修改slaves文件
 
 
 
<nowiki>slave1
 
 
 
slave2</nowiki>
 
 
 
修改hdfs-site.xml文件,修改内容如表 4-7所示。
 
 
 
表 4-7 修改hdfs-site.xml文件
 
 
 
<nowiki><configuration>
 
 
 
<property>
 
 
 
    <name>dfs.namenode.name.dir</name>
 
 
 
    <value>file:///hadoop/hdfs/name</value>
 
 
 
</property>
 
 
 
<property>
 
 
 
    <name>dfs.datanode.data.dir</name>
 
 
 
    <value>file:///hadoop/hdfs/data</value>
 
 
 
</property>
 
 
 
<property>
 
 
 
    <name>dfs.namenode.secondary.http-address</name>
 
 
 
    <value>master:50090</value>
 
 
 
</property>
 
 
 
<property>
 
 
 
    <name>dfs.replication</name>
 
 
 
    <value>2</value>
 
 
 
</property>
 
 
 
</configuration>
 
</nowiki>
 
 
 
除了上述的7个文件,还需要修改/etc/hosts文件,该文件配置的是主机名与IP地址的映射。本次搭建的集群共有3个节点,其主机名及IP地址在实训环境中已配置完成,且各节点时间已同步。
 
 
 
==启动关闭集群==
 
===配置环境变量===
 
 
 
在master上修改/etc/profile文件,在文件末尾修改如表 4-10所示内容,文件修改完保存退出,执行命令“source /etc/profile”使配置生效。
 
 
 
表 4-10 设置环境变量
 
 
 
<nowiki>export HADOOP_HOME=/usr/local/hadoop-2.6.4
 
 
 
export PATH=$HADOOP_HOME/bin:$PATH</nowiki>
 
 
 
(2) 执行代码 4-1所示代码,将Hadoop安装包、/etc/profile文件复制传输到slave1、slave2节点。
 
 
 
代码 4-2 发送安装包到子节点
 
 
 
<nowiki>scp -r /usr/local/hadoop-2.6.4 slave1:/usr/local
 
 
 
scp -r /usr/local/hadoop-2.6.4 slave2:/usr/local
 
 
 
scp /etc/profile slave1:/etc/profile
 
 
 
scp /etc/profile slave2:/etc/profile
 
 
 
ssh slave1 "source /etc/profile"
 
 
 
ssh slave2 "source /etc/profile"</nowiki>
 
 
 
(3) 在master上执行命令“hdfs namenode -format”进行格式化,若出现“Storage directory hadoop/hdfs/name has been successfully formatted”提示,则格式化成功,如图 4-9所示。
 
 
 
图 4-8格式化成功提示
 
 
 
(4) 启动集群
 
 
 
在master节点,进入Hadoop安装目录,分别执行如代码 4-2所示的命令。
 
 
 
代码 4-3 启动集群
 
 
 
<nowiki>cd $HADOOP_HOME  // 进入Hadoop安装目录
 
 
 
sbin/start-dfs.sh    // 启动HDFS相关服务
 
 
 
sbin/start-yarn.sh    // 启动YARN相关服务
 
 
 
sbin/mr-jobhistory-daemon.sh start historyserver // 启动日志相关服务</nowiki>
 
 
 
集群启动之后,在主节点master,子节点slave1,slave2分别执行jps,出现如图 4-10所示的信息,说明集群启动没问题。
 
 
 
图 4-9 jps查看进程
 
 
 
(5) 同理,关闭集群也只需要在master节点,直接进入Hadoop安装目录,分别执行如代码 4-3所示的命令。
 
 
 
代码 4-4关闭集群
 
 
 
<nowiki>cd $HADOOP_HOME  // 进入Hadoop安装目录
 
 
 
sbin/stop-yarn.sh    // 关闭YARN相关服务
 
 
 
sbin/stop-dfs.sh    // 关闭HDFS相关服务
 
 
 
sbin/mr-jobhistory-daemon.sh stop historyserver // 关闭日志相关服务</nowiki>
 

2021年10月23日 (六) 06:32的最新版本

Hadoop大数据基础

  • 【腾讯文档】模拟操作题

https://docs.qq.com/doc/DUGpFWVpGTkhoWndh