赞
踩
前言
记录 在学习大数据技术中的学习笔记
目录
Hadoop适合海量数据分布式存储和分布式计算
Hadoop的作者是Doug Cutting ,Hadoop这个作者的孩子给他的毛绒象玩具起的名字
Apache Hadoop:官方版本,开源
Cloudera Hadoop(CDH):商业版本,对官方版本做了一些优化,提供收费的技术支持,提供界面操作,方便集群运维管理
HortonWorks(HDP):开源,提供界面操作,方便运维管理
建议在实际工作中搭建大数据平台时选择CDH或者HDP,方便运维管理
Hadoop1.x
MapReduce(分布式计算),HDFS(分布式存储)
Hadoop2.x
MapReduce,Others,YARN(资源管理),HDFS
Hadoop3.x
MapReduce,Others,YARN,HDFS
Hadoop主要包含三大组件:HDFS+MapReduce+YARN
HDFS负责海量数据的分布式存储
MapReduce是一个计算模型,负责海量数据的分布式计算
YARN主要负责集群资源的管理和调度
伪分布式集群安装:使用一台Linux机器【建议在后续学习阶段使用伪分布式集群】
这里我使用的是hadoop3.2.0这个版本,下面是官网下载链接
vi /etc/sysconfig/network-scripts/ifcfg-ens33
- 零时设置
- hostname 主机名
-
- 永久设置
- vi /etc/hostname
- 零时关闭
- systemctl stop firewalld
- 查看防火墙状态
- systemctl status firewalld
- 永久关闭
- systemctl disable firewalld
ssh-keygen -t rsa
一直回车就行
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
登录时就不需要密码了
找到自己下载的jdk安装包,并通过Xshell上传至Linux中,解压jdk安装包
tar -zxvf jdk-8u202-linux-x64.tar.gz
重命名一下
mv jdk-8u202-linux-x64.tar.gz jdk1.8
配置环境
vi /etc/profile
在文件最后添加(后面的路径根据自己jdk所在位置)
- xport JAVA_HOME=/data/soft/jdk1.8
- export PATH=.:$JAVA_HOME/bin:$PATH
重新加载一下,使环境变量生效
source /etc/profile
测试是否配置成功
java -version
tar -zxvf hadoop-3.2.0.tar.gz
vi /etc/profile
在文件最后面添加
cd /data/soft/hadoop-3.2.0/etc/hadoop
vi hadoop-env.sh
在文件末尾添加
- export JAVA_HOME=/data/soft/jdk1.8
- export HADOOP_LOG_DIR=/data/hadoop_repo/logs/hadoop
vi core-site.xml
- <configuration>
- <property>
- <name>fs.defaultFS</name>
- <value>hdfs://主机名:9000</value>
- </property>
- <property>
- <name>hadoop.tmp.dir</name>
- <value>存放日志的路径</value>
- </property>
- </configuration>
vi hedf-site.xml
- <configuration>
- <property>
- <name>dfs.replication</name>
- <value>副本数</value>
- </property>
- </configuration>
vi mapred-site.xml
- <configuration>
- <property>
- <name>mapreduce.framework.name</name>
- <value>指定执行引擎</value>
- </property>
- </configuration>
vi yarn-site.xml
- <configuration>
- <property>
- <name>yarn.nodemanager.aux-services</name>
- <value>指定mapreduce计算框架</value>
- </property>
- <property>
- <name>yarn.nodemanager.env-whitelist</name>
- <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>
- </property>
- </configuration>
vi workers
将所有内容删除,改成自己的主机名
bin/hdfs namenode -format
cd /data/soft/hadoop-3.2.0/sbin
vi start-dfs.sh
尽量加在文件上面点,因为后面的代码会使用到这些
- HDFS_DATANODE_USER=root
- HDFS_DATANODE_SECURE_USER=hdfs
- HDFS_NAMENODE_USER=root
- HDFS_SECONDARYNAMENODE_USER=root
vi stop-dfs.sh
- HDFS_DATANODE_USER=root
- HDFS_DATANODE_SECURE_USER=hdfs
- HDFS_NAMENODE_USER=root
- HDFS_SECONDARYNAMENODE_USER=root
vi start-yarn.sh
- YARN_RESOURCEMANAGER_USER=root
- HADOOP_SECURE_DN_USER=yarn
- YARN_NODEMANAGER_USER=root
vi stop-yarn.sh
- YARN_RESOURCEMANAGER_USER=root
- HADOOP_SECURE_DN_USER=yarn
- YARN_NODEMANAGER_USER=root
start-all.sh
jps
看到这6个进程则为启动成功
hdfs 服务 端口号 : 9870
可以通过浏览器来进行访问
主机IP:9870
yarn 服务 端口号:8088
可以通过浏览器来访问
主机IP:8088
在最后添加
stop-all.sh
使用三台Linux机器
master(主节点)
NamNode ,Secondary namenode ,Resource Manager
slave(从节点1)
DataNode ,NodeManage
slave(从节点2)
DataNode ,NodeManager
通过克隆之前的bigdatao2,来创建第三台机器
更改第三台机器的ip地址
第二台机器的配置
更改ip
vim /etc/sysconfig/network-scripts/ifcfg-ens33
更改主机名
- 零时设置
- hostname 主机名
- 永久设置
- vi /etc/hostname
- 主机名
防火墙
- 零时关闭
- systemctl stop firewalld
- 查看防火墙状态
- systemctl status firewalld
- 永久关闭
- systemctl disable firewalld
免密登录
ssh-keygen -t rsa
一直回车
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
解压jdk
tar -zxvf jdk安装包名
配置环境变量
vi /etc/profile
- export JAVA_HOME=/data/soft/jdk1.8
- export .:$JAVA_HOME/bin:$PATH
第三台机器的配置和第二台机器的配置是一样的
vi /etc/hosts
- 192.168.10.100 bigdata01
- 192.168.10.101 bigdata02
- 192.168.10.102 bigdata03
- 192.168.10.103 bigdata04
- 192.168.10.104 bigdata05
三台机器都要修改,内容都是一样的
yum install -y netdate
ntpdata -u ntp.sjtu.edu.cn
添加到定时任务中
vi /etc/crontab
* * * * * root /usr/sbin/ntpdate -u ntp.sjtu.edu.cn
三台机器都要执行
先拷贝到家目录下
到主节点
- scp ~/.ssh/authorized_keys bigdata02:~/
-
- scp ~/.ssh/authorized_keys bigdata03:~/
到从节点1
cat ~/authorized_keys >> ~/.ssh/authorized_keys
到从节点2
cat ~/authorized_keys >> ~/.ssh/authorized_keys
tar -zxvf hadoop安装包名
/data/soft/hadoop-3.2.0/etc/hadoop
vi hadoop-env.sh
- export JAVA_HOME=/data/soft/jdk1.8
- export HADOOP_LOG_DIR=/data/hadoop_repo/logs/hadoop
vi core-site.xml
- <configuration>
- <property>
- <name>fs.defaultFS</name>
- <value>hdfs://主节点主机名:9000</value>
- </property>
- <property>
- <name>hadoop.tmp.dir</name>
- <value>日志目录</value>
- </property>
- </configuration>
vi hdfs-site.xml
- <configuration>
- <property>
- <name>dfs.replication</name>
- <value>副本数</value>
- </property>
- <property>
- <name>dfs.namenode.secondary.http-address</name>
- <value>bigdata01:50090</value>
- </property>
- </configuration>
vi mapred-site.xml
- <configuration>
- <property>
- <name>mapreduce.framework.name</name>
- <value>yarn</value>
- </property>
- </configuration>
vi yarn-site.xml
- <configuration>
- <property>
- <name>yarn.nodemanager.aux-services</name>
- <value>mapreduce_shuffle</value>
- </property>
- <property>
- <name>yarn.nodemanager.env-whitelist</name>
- <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>
- </property>
- <property>
- <name>yarn.resourcemanager.hostname</name>
- <value>指定resourcemanager节点在那个机器上执行</value>
- </property>
- </configuration>
- vi workers
-
- bigdata02
- bigdata03
修改启动脚本
vi start-dfs.sh
- HDFS_DATANODE_USER=root
- HDFS_DATANODE_SECURE_USER=hdfs
- HDFS_NAMENODE_USER=root
- HDFS_SECONDARYNAMENODE_USER=root
stop-dfs.sh
- HDFS_DATANODE_USER=root
- HDFS_DATANODE_SECURE_USER=hdfs
- HDFS_NAMENODE_USER=root
- HDFS_SECONDARYNAMENODE_USER=root
start-yarn.sh
- YARN_RESOURCEMANAGER_USER=root
- HADOOP_SECURE_DN_USER=yarn
- YARN_NODEMANAGER_USER=root
stop-yarn.sh
- YARN_RESOURCEMANAGER_USER=root
- HADOOP_SECURE_DN_USER=yarn
- YARN_NODEMANAGER_USER=root
scp -rq Hadoop文件名 bigdat02:/data/soft
scp -rq hadoop-3.2.0 bigdata03:/data/soft
hdfs namenode -format
start-all.sh
stop-all.sh
在实际工作中不建议直接连接集群中的节点来操作集群,直接把集群中的节点暴露给普通开发人员是不安全的
建议在业务机器上安装Hadoop,这样就可以在业务机器上操作Hadoop机器了,此机器就称为Hadoop的客户端节点
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。