ha集群的安装部署
HA的运作机制(1)hadoop-ha集群运作机制介绍所谓HA,即高可用(7*24小时不中断服务)实现高可用最关键的是消除单点故障
hadoop-ha严格来说应该分成各个组件的HA机制
(2)HDFS的HA机制
通过双namenode消除单点故障
双namenode协调工作的要点:
A、元数据管理方式需要改变:
内存中各自保存一份元数据,Edits日志只能有一份,只有Active状态的namenode节点可以做写操作,两个namenode都可以读取 edits,共享的edits放在一个共享存储中管理(qjournal和NFS两个主流实现)
B、需要一个状态管理功能模块,实现了一个zkfailover,常驻在每一个namenode所在的节点,每一个zkfailover负责监控自己所在的 namenode节点,利用zk进行状态标识,当需要进行状态切换时,由zkfailover来负责切换,切换时需要防止brain split现象 的发生
l上述过程的图示:
集群部署节点角色的规划(10节点):
#
server01namenode zkfc > start-dfs.sh
server02namenode zkfc
#
server03resourcemanager >start-yarn.sh
server04resourcemanager
#做运算
server05datanode nodemanager
server06datanode nodemanager
server07datanode nodemanager
#做日志管理
server08journal node zookeeper (192.168.0.200 H200)
server09journal node zookeeper (192.168.0.201 H201)
server10journal node zookeeper (192.168.0.202 H202)
1、环境准备
a/linux系统准备
hostname配置主机名字 vi /etc/sysconfig/network 执行命令 service network restart 验证:ifconfig
hosts映射配置 vi /etc/hosts
ip地址配置
vi /etc/sysconfig/network-scripts/ifcfg-eth0
vi /etc/resolv.conf#需和ifcfg-eth0中的一样 从启会更新
rm -rf /etc/udev/rules.d/70-persistent-net.rules#删除从新启动机器从新生成mack和ifcfg-eht0一样否则会出问题
shutdown -r now
防火墙关闭
执行命令 service iptables stop
验证: service iptables status
init启动级别修改 Linux系统有7个运行级别(runlevel)
运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动
运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆
运行级别2:多用户状态(没有NFS)
运行级别3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式
运行级别4:系统未使用,保留
运行级别5:X11控制台,登陆后进入图形GUI模式
运行级别6:系统正常关闭并重启,默认运行级别不能设为6,否则不能正常启动
vi /etc/inittab#修改为3即可
sudoers加入hadoop用户
添加用户
首先用adduser命令添加一个普通用户,命令如下:
adduser hadoop//添加一个名为tommy的用户
passwd hadoop//修改密码
Changing password for user tommy.
New UNIX password: //在这里输入新密码
Retype new UNIX password://再次输入新密码
passwd: all authentication tokens updated successfully.
赋予root权限
修改 /etc/sudoers 文件,找到下面一行,在root下面添加一行,如下所示:
root ALL=(ALL) ALL
hadoop ALL=(ALL) ALL
修改完毕,现在可以用hadoop帐号登录,然后用命令 su - ,即可获得root权限进行操作
ssh免密登陆配置 ssh-keygen-trsa (四个回车)
执行完这个命令后,会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)
将公钥拷贝到要免登陆的机器上
ssh-copy-id 到某太服务器的IP或IP绑定的名称
比如 ssh-copy-id 192.168.0.204或aaa
b/java环境的配置 上传jdk,解压,修改/etc/profile
/etc/zookeeper集群的部署
[*]上传zookeeper解压
[*]修改zookeeper conf目录下的zoo_xx.cfg名字为zoo.cfg
[*]修改数据目录dataDir=/opt/zookeeper-3.4.6/data
[*]在该文件下加入
server.1=H200:2888:3888
server.2=H201:2888:3888
server.3=H202:2888:3888
[*]创建/opt/zookeeper-3.4.6/data目录
[*]执行 echo 1 > data/myid指定该节点服务器的唯一标示ID集成几台zk就需要给每台zk创建myid并指定编号 1 2 3一次排下去
谢谢分享
页:
[1]