dew 发表于 2018-10-29 09:43:55

使用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]
查看完整版本: 使用Ambari来部署hadoop集群(搭建内网HDP源)