使用Ambari来部署hadoop集群(搭建内网HDP源)
规划OS:centos6.5
Ambari-yumrepo 10.10.10.20公网
Ambari-server10.10.10.10内网
hadoop-master1 10.10.10.1 内网
hadoop-master2 10.10.10.2内网
hadoop-slave110.10.10.3内网
hadoop-slave210.10.10.4内网
hadoop-slave310.10.10.5内网
准备工作
(1)修改主机名
[*] Ambari-server、master1、master2、slave1、slave2、slave3
$ hostname XXX && echo XXX >/etc/hostname
$ cat >> /etc/hosts >/etc/hosts.allow
[*] master1、master2
$ ssh-keygen -t rsa
$ ssh-copy-id -i ~/.ssh/id_rsa.pub root@slave1
$ ssh-copy-id -i ~/.ssh/id_rsa.pub root@slave2
$ ssh-copy-id -i ~/.ssh/id_rsa.pub root@slave3
(4)安装jdk
[*] Ambari-server、master1、master2、slave1、slave2、slave3
$ wget http://download.oracle.com/otn-pub/java/jdk/8u111-b14/jdk-8u111-linux-x64.rpm
$ rpm -ivh jdk-8u111-linux-x64.rpm
(5)格式化硬盘
[*] Ambari-server、master1、master2、slave1、slave2、slave3
$ yes|mkfs.ext4 /dev/sdb
$ mkdir /data
$ mount /dev/sdb /data
$ echo "mount /dev/sdb /data" >>/etc/rc.local
(6)系统参数调优
[*] Ambari-server、master1、master2、slave1、slave2、slave3
$ cat >>/etc/sysctl.conf/etc/security/limits.conf /etc/hosts.allow
[*] Ambari-server
$ ssh-keygen -t rsa
$ ssh-copy-id -i ~/.ssh/id_rsa.pub root@master1
$ ssh-copy-id -i ~/.ssh/id_rsa.pub root@master2
$ ssh-copy-id -i ~/.ssh/id_rsa.pub root@slave1
$ ssh-copy-id -i ~/.ssh/id_rsa.pub root@slave2
$ ssh-copy-id -i ~/.ssh/id_rsa.pub root@slave3
(3)安装ambari
[*] Ambari-server
$ yum -y install ambari-server
(4)初始化ambari
[*] Ambari-server
下载需要的jdk文件(必须用这个文件)
$ wget http://public-repo-1.hortonworks.com/ARTIFACTS/jdk-6u31-linux-x64.bin
$ mv jdk-6u31-linux-x64.bin /var/lib/ambari-server/resources/
$ ambari-server setup#初始化配置
(5)启动ambari
[*] Ambari-server
$ ambari-server start
(6)给ambari配置本地的hadoop源
[*] Ambari-server
$ cd /var/lib/ambari-server/resources/stacks/HDPLocal/2.0.6/repos/
$ vim repoinfo.xml
将centos6的
http://public-repo-1.hortonworks.com/HDP/centos6/2.x/updates/2.0.6.0
替换成
http://10.10.10.20/hdp/centos6/2.x/updates/2.0.6.0
(7)进入ambari
[*] 访问:http://10.10.10.10:8080进入ambari,user:admin,passwd:admin
[*] 输入集群名
[*] 选择 stack 版本
[*] Target Hosts输入hadoop机器的列表,需要添加ambari-server这台机器的/root/.ssh/id_rsa文件。
[*] 会自动安装ambari-agent
[*] 选择那个服务安装在哪个机器上。
[*] 配置客户端和slaves
[*] 配置各个系统
[*] 开始安装
通过Ambari部署hadoop集群成功!
部署过程中遇到的问题:
1:执行os_type_check.sh脚本执行失败导致的Local OS is not compatible with cluster primary OS报错,这是一个BUG,可以直接修改该os_type_check.sh,输出正确的结果。
2:ambari没有复制过去正确的hdp源,所以手动将hdp源配置到hadoop的集群
$ vim hdp.repo
name=HDP
baseurl=http://10.10.10.20/hdp
path=/
enabled=1
gpgcheck=0
3:nagios输入正确密码和用户名无法登陆,密码文件httpd用户没有权限,设置777后可以正常访问。
-rw-r----- 1 nagios nagios 26 Jun9 11:54 /etc/nagios/htpasswd.users
4:jourenode无法启动报错
直接执行yum会报错
$ yum-d 0 -e 0 -y install net-snmp-utils
rpmdb: Thread/process 12500/139757427676928 failed: Thread died in Berkeley DB library
error: db3 error(-30974) from dbenv->failchk: DB_RUNRECOVERY: Fatal error, run database recovery
error: cannot open Packages index using db3 -(-30974)
error: cannot open Packages database in /var/lib/rpm
CRITICAL:yum.main:
解决办法:
$ rm -rf /var/lib/rpm/__db.*
页:
[1]