作者:EchoZenith Github
一、背景介绍
随着中国数字化转型战略的推进,传统通信行业正面临 着数字化转型的挑战和机遇;用户对通信服务的需求已经发 生了根本性的变化,通信运营商正在通过技术创新和服务升 级来满足这些需求;数字化转型涉及到网络建设、数据管理、 服务创新等方面,大数据技术成为关键驱动力之一。
为了应对这一转型,我们要求参赛者搭建通信行业大数 据分析平台,并利用 Hive 数仓技术和 Spark 计算引擎对通 信用户行为数据进行操作和分析;通过这样的平台,可以快 速处理和挖掘海量数据,得出有价值的洞察和分析结果。
同时,在展示数据分析结果方面,我们要求参赛者结合 前端可视化框架 ECharts 和 Python 可视化库 pyecharts,创建交互式的数据可视化图表;这些图表能够直观地展示数据分析结果,帮助管理者更好地决策企业的发展战略,并对销 售、营销、客服和技术等部门的目标策略进行全面部署;通 过数据可视化,销售部门可以了解产品销售趋势和市场份额;营销部门可以优化营销活动和广告投放策略;客服部门可以提供更好的客户服务;技术部门可以进行网络优化和故障排查。
二、模块一:平台搭建与运维
(一)任务一:大数据平台搭建
本模块需要使用 root 用户完成相关配置;所有组件均 在 /root/software 目录下。
1. 子任务一:基础环境准备
提示:master、slave1、slave2三台节点都需要安装JDK
(1) 将JDK安装包解压到/root/software目录下;
tar -zxvf /root/software/package/jdk-8u212-linux-x64.tar.gz -C /root/software
(2) 在“/etc/profile”文件中配置JDK环境变量JAVA_HOME和PATH的值,并让配置文件立即生效;
在/etc/profile文件末尾添加:
export JAVA_HOME=/root/software/jdk1.8.0_212
export PATH=$PATH:$JAVA_HOME/bin
保存退出后使用命令立即执行
source /etc/profile
(3) 查看JDK版本,检测JDK是否安装成功。 在master节点操作
javac 或 java -version
(4) 在master上生成SSH密钥对。
ssh-keygen -t rsa
(5) 将master上的公钥拷贝到slave1和slave2上; 在 master 上通过 SSH 连接 slave1 和 slave2 来验证。
先分别修改hostname
hostnamectl set-hostname master
hostnamectl set-hostname slave1
hostnamectl set-hostname slave2
使用命令exec bash
刷新终端
再修改/etc/hosts文件(注意修改各节点的ip)
分别将公钥复制到各节点:
ssh-copy-id master
ssh-copy-id slave1
ssh-copy-id slave2
scp -r ~/.ssh/ slave1:~/
scp -r ~/.ssh/ slave2:~/
ssh master # 测试免密登录 然后使用exit命令退出终端
ssh slave1
ssh slave2
2. 子任务二:Hadoop 完全分布式安装配置
master、slave1、slave2三台节点都需要安装Hadoop
(1) 在 主 节 点 将 Hadoop 安 装 包 解 压 到 /root/software 目录下;
tar -zxvf /root/software/package/hadoop-3.3.3.tar.gz -C /root/software
(2) 依次配置hadoop-env.sh、core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml和workers配置
hadoop-env.sh
:在文件中新增 JAVA_HOME
目录地址
export JAVA_HOME=/root/software/jdk1.8.0_212
core-site.xml
:在文件中的 configuration
标签中添加以下配置
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>fs.trash.interval</name>
<value>10080</value>
</property>
<property>
<name>io.file.buffer.size</name>
<value>131702</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/root/software/hadoop-3.3.3/hadoopDatas/tempDatas</value>
</property>
hdfs-site.xml
:在文件中的 configuration
标签中添加以下配置
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>master:50090</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/root/software/hadoop-3.3.3/hadoopDatas/namenodeDatas</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/root/software/hadoop-3.3.3/hadoopDatas/datanodeDatas</value>
</property>
mapred-site.xml
:在文件中的 configuration
标签中添加以下配置
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>master:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>master:19888</value>
</property>
yarn-site.xml
:在文件中的 configuration
标签中添加以下配置
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.auxservices.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>master:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>master:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>master:8031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>master:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>master:8088</value>
</property>
workers
:将文件中修改为以下内容
master
slave1
slave2
(3) 在master节点的Hadoop安装目录下依次创建
hadoopDatas/tempDatas
、 hadoopDatas/namenodeDatas
、 hadoopDatas/datanodeDatas
、 hadoopDatas/dfs/nn/edits
、 hadoopDatas/dfs/snn/name
和 hadoopDatas/dfs/nn/snn/edits
目录;
(4) 在master节点上使用scp命令将配置完的Hadoop安装目录直接拷贝至slave1和slave2;
分别执行下面两条命令
scp -r /root/software/hadoop-3.3.3/ slave1:~/software/
scp -r /root/software/hadoop-3.3.3/ slave2:~/software/
(5) 三台节点的“/etc/profile”文件中配置Hadoop环境变量HADOOP_HOME和PATH的值,并让配置文件立即生效;
在/etc/profile文件末尾添加:
export HADOOP_HOME=/root/software/hadoop-3.3.3/
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
保存退出后使用命令立即执行
source /etc/profile
(6) 在主节点格式化集群;
hdfs namenode -format
(7) 在主节点依次启动HDFS、YARN集群和历史服务
cd /root/software/hadoop-3.3.3/sbin
./start-all.sh
评论