利用ambari搭建Hadoop、Hbase集群
利用ambari搭建hadoop集群
1. hadoop环境支持
1.1. 搭建六台配置相同的虚拟机,配置如下
操作系统:centos6.5,内存8G,硬盘200G。
主机名:hadoopxg-master(安装ambari),hadoopxgserver01, hadoopxgserver02, hadoopxgserver03, hadoopxgserver04, hadoopxgserver05。
1.2. centos虚拟机网卡配置
第一步,找到网卡配置文件,修改/etc/sysconfig/network-scripts下的ifcfg-eth0
第二步,编辑ifcfg-eth0。vi ifcfg-eth0 >> insert >>修改配置文件如下
第三步,保存并退出,按下ESC后输入“:wq!”(不包括影号)并回车。
第四步,启用网卡。service network restart后看是否重新启动。
最后,按照同样的方法配置另外五台虚拟机,不多描述。用ifconfig命令查看当前ip地址是否为刚刚配置的静态ip。
1.3. 配置动态DNS
修改etc下的resolv.conf文件,配置动态DNS(在后面执行yum命令时需要用到)
第一步,先查看当前是否能够执行yum命令,以yum install gcc-c++为例。
第二步,修改文件。vi /etc/resolv.conf。配置如下。如果在vmware上安装的虚拟机则应该再添加一条:nameserver 8.8.4.4
第三步,保存并退出。:wq!命令。
第四步,测试yum 是否成功,安装时编辑y回车即可。
1.4. 修改hosts文件和network文件
第一步,修改hosts文件
第二步,修改配置如下,将本机以及其他五台虚拟机的ip和主机名写入到文件中来
第三步,wq!保存并退出。
第四步,其他虚拟机按照相同配置hosts文件,ip以及主机名结合实际修改。
修改network文件
第一步,vi /etc/network
第二步,修改如图
第三步,保存并退出。:wq!。
1.5. 配置ssh免密码登录。
需要配置安装ambari的hadoopxg-master到其他五台虚拟机上的免密码登录。
第一步,在root用户下执行ssh-keygen,一直回车。
第二步,查看当前生成的文件。cd ~/.ssj , ls
第三步,配置本地免密码登录
第四步,文件授权,chmod 700 ~/.ssh ,chmod 600 ~/.ssh/authorized_keys
第五步,在其他虚拟机上建文件夹~/.ssh,命令为mkdir ~/.ssh
第六步,配置其他虚拟机免密码登录
scp ~/.ssh/authorized_keys hadoopxgserver01:/root.ssh/
scp ~/.ssh/authorized_keys hadoopxgserver02:/root.ssh/
scp ~/.ssh/authorized_keys hadoopxgserver03:/root.ssh/
scp ~/.ssh/authorized_keys hadoopxgserver04:/root.ssh/
scp ~/.ssh/authorized_keys hadoopxgserver05:/root.ssh/
依次在hadoopxg-master上执行。
如果在此过程中出错原因只有两种,第一个,查看其他虚拟机是否已经创建~/.ssh文件夹,第二个,是否该虚拟机或者其他虚拟机中的hosts文件里面的ip和主机名写错了。
第七步,安装上传下载包yum install -y lrzsz
第八步,下载~/.ssh中的id_rsa到本地,以后会用到。命令:sz id_rsa
`
第九步,安装完成。
1.6. 安装ntp包并启用ntpd服务。Hadoop集群需要时间同步。
第一步,安装ntp包,yum install ntp
第二步,启用ntp服务,命令:chkconfig ntp,service ntpd start。)(cenos7.0以上命令不同,注意centos版本)
第三步,在其他虚拟机上安装ntp服务并启用
第五步,安装完成。
1.7. 关闭防火墙,selinux和PackageKit
第一步,所有虚拟机关闭防火墙:使用service iptables stop
第二步,关闭selinux并重启。命令:vi /etc/sysconfig/selinux,里面配置如下。保存并退出,然后使用reboot命令重启机器。
注意重新启动下上一步的ntpd服务。
第三步,关闭PackageKit。命令:vi /etc/yum/pluginconf.d/refresh-packagekit.conf ,我在这里没有找到这个文件,因此不用配置。如果有尽量关闭。
第四步,在其他虚拟机上均执行以上操作,确保一致。
2. 安装ambari
2.1. 安装epel,epel是一个提供高质量软件包的项目。
第一步,先检查主机上是否安装
第二步,没有安装,使用rpm安装
rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm。
第三步,查看所依附的软件包
第四步,导入key, rpm –import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6.
第五步,安装yum-priority,yum install yum-priorities。
第六步,在主机仓库目录中可以查到epel.repo,命令:cd /etc/yum.repos.d ;ls | grep epel。
第七步,安装pdsh
2.2. 下载ambari仓库
第一步,进入yum.repos.d目录下
cd /etc/yum.repos.d
第二步,下载ambari仓库的资源清单文件
wget http://public-repo-1.hortonworks.com/ambari/centos6/2.x/updates/2.4.1.0/ambari.repo
这里报错是因为没有安装wget所依赖的包
使用命令:yum install wget即可
继续安装ambari资源库
2.3. 安装epel respository
第一步:安装epel
yum install epel-release
第二步,成功后使用命令yum repolist
如图所示,即为成功。
2.4. 安装ambari
第一步,安装使用命令yum install ambari-server,使用yum安装时会自动安装PostgreSQL数据库。(网速差的话等待时间较长)
一路y回车就可以了
第二步,配置ambari-server。执行ambari-server setup。如果还没有关闭SELinux,执行这个命令的过程中会提示,选择y。然后会配置PostgreSQL,选择y自动下载安装jdk。之后配置数据库,选n使用默认数据库用户名ambari-server和密码bigdata,选y自己创建用户名密码。
2.5. 启动ambari(使用默认数据库PostgerSQL)
如果刚刚配置ambari选择了mysql则需另外安装并自行配置ambari用户。这里为了方便使用默认数据库。
2.6. 启动ambari,命令:ambari-servet start
如图,即显示成功,此时在各个虚拟机上安装openssl包,使用命令:yum install openssl openssl-devel 即可。
访问http://192.168.1.92:8080如图
如图所示,即配置成功。
3. 搭建hadoop集群
Ambari默认登陆的用户名和密码是admin/admin。
第一步,使用admin/admin登入,如图所示
第二步,选择Launch install wizard.,如图
点击Next之后选择HDP2.5版本。
第三步,添加主机以及之前下载的id_rsa密钥文件。如图所示,点击Register and
Confirm。
第四步,注册并安装,
如图即显示成功。
第五步,选择所需要的service之后,在下一步下一步之后,点不动时,在Customize services里面配置一下Hive中数据库密码,这里是123456。
第六步,等待安装
第七步,等待安装成功
如上所示,即为安装成功。