分布式部署
机器准备
ip : hostname: Memory Core:
192.168.59.162 bigdata-hpsk02.huadian.com bigdata-hpsk02 2G 1
192.168.59.163 bigdata-hpsk03.huadian.com bigdata-hpsk03 2G 1
192.168.59.164 bigdata-hpsk04.huadian.com bigdata-hpsk04 2G 1
要求:
多台机器之间,
目录结构一致,用户名,权限等一致
防火墙关闭,selinux
克隆之后,只用root用户操作
vi /etc/udev/rules.d/70-persistent-net.rules
vi /etc/sysconfig/network-scripts/ifcfg-eth0
vi /etc/sysconfig/network
vi /etc/hosts
安装方式:在Linux上安装软件
不使用批量安装工具
手动将配置好的Hadoop分发给其他机器
传统的Apache版本可以使用该方法
使用批量工具:大数据集群运维管理工具
cm (cloudera manager),
cloudera公司提供
CDH版本:
框架多了,兼容性问题就出现了,CDH版本帮你解决了这个问题。
修改了很多bug
比Apache的版本稳定性好
用的比较多的版本:5.7.6
机器选型:
硬件服务器
云服务器
配置
一般配置
16core 32GB
32core 64G spark,用户画像
硬盘:8~16T 12T
数据问题
中小型企业
80 * 5 * 24 *30 *12 *3 *3 = 300t
80 * 24 * 5 = 10G
一条记录600字节 ,2000W
Linux环境配置 :
ip,主机名、本地映射、DNS
防火墙,selinux:(/ect/selinux/config)
----------------------
hadoop启动的过程方式
单个进程启动
sbin/hadoop-daemon.sh start XX
分别启动hdfs和yarn
sbin/start-dfs.sh
DataNode
NameNode
SecondaryNameNode
sbin/start-yarn.sh
一次性启动所有
sbin/start-all.sh
----------------------
ssh免密钥登录:
ssh远程登录
ssh bigdata-hpsk03.huadian.com
第一步:为每台机器生产自己公私钥
ssh-keygen -t rsa
/home/huadian/.ssh
第二步:共公钥发给每台机器,包括自己
ssh-copy-id bigdata-hpsk02.huadian.com
ssh-copy-id bigdata-hpsk03.huadian.com
ssh-copy-id bigdata-hpsk04.huadian.com
---测试---
用ssh登录到其他机器,包括自己
NTP时间同步
Linux中,我们可以通过ntp服务实现每台机器的时间一致
实现方式
通过Linux crotab实现
让我们的系统每1分钟和时间服务器进行同步
crotab -e
* * * * * command
分 时 日 月 周
*/1 * * * * ntpdate ntp_server_ip
世界使用ntp服务同步外网 时间服务器
选择一台机器作为中间同步服务A,A和外网进行同步,
B,C同步A
配置A:
sudo vi /etc/ntp.conf
删除
restrict default kod nomodify notrap nopeer noquery
restrict -6 default kod nomodify notrap nopeer noquery
restrict 127.0.0.1
restrict -6 ::1
server 0.centos.pool.ntp.org
server 1.centos.pool.ntp.org
server 2.centos.pool.ntp.org
添加
A和谁同步
server 202.112.10.36
允许谁可以和我同步
restrict 192.168.59.0 mask 255.255.255.0 nomodify notrap
配置本地同步
server 127.127.1.0
fudge 127.127.1.0 stratnum 10
启动ntp服务
sudo service ntpd start
配置B,C和A同步
sudo vi /etc/ntp.conf
删除:
添加:
server 192.168.59.162
开启ntp服务
sudo service ntpd start
手动同步
sudo ntpdate 192.168.59.162
查看当前主机和谁同步:ntpq -p
偷懒:
sudo date -s "2018-06-16 16:58:00"
安装部署Hadoop:
节点分布情况
node2 datanode nodemanager NameNode(工作)
node3 datanode nodemanager
node4 datanode nodemanager resourceManager(工作)
安装JDK:
node2上面
tar -zxcf
scp -r jdk1.8.0_91/ [email protected]:/opt/modules/
scp -r jdk1.8.0_91/ [email protected]:/opt/modules/
下载:scp -r [email protected]:/opt/modules/ jdk1.8.0_91/
环境变量配置
Hadoop:
上传解压
修改配置文件
-》-env.sh 环境变量
JAVA_HOME:
Hadoop-env.sh
mapred-env.sh
yarn-env.sh
-》-site.xml:配置用户自定义需求:
core-site:配置Hadoop全局的一致属性
fs.defaultFS:hdfs入口
hadoop.tmp.dir:临时存储目录
<property>
<name>fs.defaultFS</name>
<value>hdfs://bigdata-hpsk02.huadian.com:8020</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/modules/hadoop-2.7.3/data/tmpData</value>
</property>
hdfs-site:HDFS的属性
dfs.replication:文件副本数
dfs.namenode.secondary.http-address:bigdata-hpsk02.huadian.com:50090(配置secondarynamenode)
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>bigdata-hpsk02.huadian.com:50090</value>
</property>
mapred-site:配置MapReduce属性
mapreduce.framework.name:MapReduce运行在YARN上
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
# 下面的是配置历史服务器,可以不配置,看需要:
<property>
<name>mapreduce.jobhistory.address</name>
<value>bigdata-hpsk02.huadian.com:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>bigdata-hpsk02.huadian.com:19888</value>
</property>
yarn-site:用户配置YARN属性
yarn.resourcemanager.hostname
yarn.nodemanager.aux-services
resourceManager入口
告知yarn ,mapreduce程序将在你这里运行
<property>
<name>yarn.resourcemanager.hostname</name>
<value>bigdata-hpsk04.huadian.com</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
#下面的是配置log日志文件,用于方便查看出错信息日志文件(可以不配置,看需要):
<property>
<name>yarn.log-aggregation-enable</name>
<value>true</value>
</property>
<property>
<name>yarn.log-aggregation.retain-seconds</name>
<value>604800</value>
</property>
分发:
scp -r hadoop-2.7.3/ [email protected]:/opt/modules/
scp -r hadoop-2.7.3/ [email protected]:/opt/modules/
启动测试:
-》node2:格式化(bin/hdfs namenode -format),启动NameNode
-》3个节点中,启动dataNode
-》sbin/stop-dfs.sh sbin/stop-yarn.sh
-》sbin/start-dfs.sh sbin/strat-yarn.sh
启动对应进程:
在hpsk02启动HDFS
在hpsk04启动YARN