Hadoop 发行版本 Hortonworks 安装详解(一) 准备工作

一、前言

目前Hadoop发行版非常多,所有这些发行版均是基于Apache Hadoop衍生出来的,之所以有这么多的版本,完全是由Apache Hadoop的开源协议决定的:任何人可以对其进行修改,并作为开源或商业产品发布/销售。

Hortonworks这个名字源自儿童书中一只叫Horton的大象。雅虎主导Hadoop开发的副总裁,带领二十几个核心成员成立Hortonworks。

Hortonworks有两款核心产品:HDP和HDF

Hortonworks没有对产品收费,而是将这两款产品完全开放,将核心技术放在Hadoop开源社区中,每个人都可以看到并使用这两款产品

企业客户自己开发难度较大的话,就会选择合作。这就是Hortonworks的盈利模式,通过提供支持服务和后期维护,向企业级客户收费。

支持服务主要是通过订阅的方式,客户需要就某些功能预定一年或者几年的服务,提前付费。支持服务覆盖整个周期,从最初的开发和POC阶段,到中间的质量测试,直至产品交付。维护服务主要是对企业级客户的培训和一些咨询业务。

二、相关文档

Cluster Planning
Ambari
HDP

Hortonworks集群的安装过程说难不难说简单也不简单,中间稍有失误基本就得重装系统从头来过,所以实施安装前建议把官方的文档都过一遍,对于后续顺利完成集群安装很有帮助。

三、集群规划

截止当前,Hortonworks官方最新版本是Ambari 2.6.0.0、HDP 2.6.3,不过从之前我曾多次尝试安装Ambari 2.6.0.0+HDP 2.6.3失败的情况来看,基本确定最新版本存在BUG会导致无法顺利完成安装,初步定位BUG应该在包名称不匹配上面。

介于上述情况,我这里选择Ambari 2.5.2.0+HDP 2.6.2的组合经行安装。

操作系统我这里选择CentOS 6.9(2.6.2的支持列表只到6.8,不过2.6.3的支持列表已经更新到6.9),JDK使用的Oracle 1.8,其余组件都是系统自带或者yum安装。

写这篇的时候正好有个生产集群需要部署,故直接使用生产集群作为例子,如果仅仅是想安装测试集群的话可以选择1头节点4数据节点的规划。

   头结点  备用头结点  数据节点1  数据节点2  数据节点3
namenode  是  是      
datanode      是  是  是
 resourcemanager  是  是      
 journalnode  是  是      
 zookeeper  是  是  是    

四、系统安装

除了需要注意系统语言和磁盘格式,其它注意事项官方文档里面都有,自行查阅。
系统语言必须是en_US,否则添加节点安装必备环境的时候就会卡在下图的步骤。

头结点的磁盘需要使用RAID 10,数据节点的磁盘不需要使用RAID,如果部分服务器走了RAID卡无法关闭,那么可以为每个磁盘做一个RAID 0。

磁盘格式官方建议使用ext3而不建议使用ext4,但是从各位运Hadoop维大佬实际运维经验来看,使用ext4比ext3有利,具体怎么抉择各位仁者见仁智者见智。

五、系统级别的基础配置

为了后续能顺利安装Hortonworks集群安装,完系统之后需要进行诸多系统层面的配置和调整,想要了解细节参见官方文档

我这里提供一个基于各方资料汇集而成的自动配置脚本,针对Centos 6.9 Base Server安装方式。

#!/usr/bin/env bash

SetConfig()
{
    #主机名
    input_hostname=$1    

    #切换默认软件源为阿里云
    tar -zcvf /etc/yum.repos.d/${starDate}_bak.tgz /etc/yum.repos.d/*.repo
    rm -rf /etc/yum.repos.d/*.repo
    wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-6.repo
    rpm --import https://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-6
    yum makecache

    #安装YUM源优先级插件
    yum install -y yum-priorities
    echo "[info] update yum repo end."

    #关闭IPV6
    echo "alias net-pf-10 off" >> /etc/modprobe.d/dist.conf
    echo "alias ipv6 off" >> /etc/modprobe.d/dist.conf
    echo "[info] disabled ipv6 end."    

    #关闭桌面版网络管理程序
    service NetworkManager stop
    chkconfig NetworkManager off
    echo "[info] disabled NetworkManager end."

    #修改ulimit
    echo "* soft nofile 10000" >> /etc/security/limits.conf
    echo "* hard nofile 32832" >> /etc/security/limits.conf
    echo "* soft nproc 10000" >> /etc/security/limits.conf
    echo "* hard nproc 32832" >> /etc/security/limits.conf

    sed -i ‘s/1024/10000/g‘ /etc/security/limits.d/90-nproc.conf
    echo "*          hard    nproc     32832" >> /etc/security/limits.d/90-nproc.conf
    echo "[info] set ulimit end."

    #关闭iptables
    chkconfig iptables off
    /etc/init.d/iptables stop
    chkconfig ip6tables off
    /etc/init.d/ip6tables stop
    echo "[info] disabled iptables end."

    #关闭 SELinux
    setenforce 0
    sed -i "/^SELINUX=/ c SELINUX=disabled" /etc/selinux/config
    echo "[info] disabled SELinux end."

    #关闭 PackageKit
    sed -i "/^enabled=/ c enabled=0" /etc/yum/pluginconf.d/refresh-packagekit.conf
    echo "[info] disabled PackageKit end."

    #关闭 HUP
    #sed -i "s/quiet/quiet transparent_hugepage=never/" /etc/grub.conf
    echo "" >> /etc/rc.local
    echo "echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag" >> /etc/rc.local
    echo "echo never > /sys/kernel/mm/redhat_transparent_hugepage/enabled" >> /etc/rc.local
    echo "echo never > /sys/kernel/mm/transparent_hugepage/enabled" >> /etc/rc.local
    echo "echo never > /sys/kernel/mm/transparent_hugepage/defrag" >> /etc/rc.local
    echo "[info] disabled HUP end."

    #打开从节点时间同步(所有的主机都需要打开)
    sed -i "s/0.centos.pool.ntp.org iburst/time.pool.aliyun.com prefer/" /etc/ntp.conf
    chkconfig ntpd on
    service ntpd start
    echo "[info] enabled ntpd end."

    #设置net.core.somaxconn和vm.swappiness参数
    echo "net.core.somaxconn = 32768" >> /etc/sysctl.conf
    echo "vm.swappiness = 0"  >> /etc/sysctl.conf

    #修改节点HostName名称
    echo "......InputHostName:${input_hostname}......"
    hostname ${input_hostname}
    sed -i "/^HOSTNAME=/ c HOSTNAME=${input_hostname}" /etc/sysconfig/network
    #写入所有节点HostName到hosts文件
    sed -i "1i\节点1IP地址 节点1hostname" /etc/hosts
        sed -i "1i\节点2IP地址 节点2hostname" /etc/hosts
        sed -i "1i\节点3IP地址 节点3hostname" /etc/hosts
        sed -i "1i\节点4IP地址 节点4hostname" /etc/hosts
        sed -i "1i\节点5IP地址 节点5hostname" /etc/hosts
}

#没有参数
if [ x$1 == x ] ; then
    echo "[error] please enter the parameters."
    exit -1
fi

SetConfig $1

reboot

使用方法:./666.sh 当前节点hostname

六、配置SSH免密登陆

通过Ambari安装各节点的时候,需要让运行Ambari的节点能SSH免验证登陆到各节点(包括它本身)。

#登录头节点利用以下命令生成RSA密钥
ssh-keygen -t rsa

#登录数据节点从头节点复制秘钥,并继续执行后续操作(头节点也需要执行此步骤)
mkdir /root/.ssh
scp [email protected]头结点hostname:/root/.ssh/id_rsa.pub /root/.ssh/
cat /root/.ssh/id_rsa.pub > /root/.ssh/authorized_keys
#启动公钥登录配置
sed -i "s/#PubkeyAuthentication/PubkeyAuthentication/"
/etc/ssh/sshd_config
sed -i "s/#AuthorizedKeysFile/AuthorizedKeysFile/" /etc/ssh/sshd_config
service sshd restart

七、搭建本地源

由于部署Ambari+HDP过程中需要安装大量组件,而且体积都比较大,因此选择在头节点搭建源服务器。

安装Apache
yum install -y httpd
service httpd start
chkconfig httpd on

手动下载下面几个压缩包到 /var/www/html/ 目录:
http://public-repo-1.hortonworks.com/ambari/centos6/2.x/updates/2.5.2.0/ambari-2.5.2.0-centos6.tar.gz
http://public-repo-1.hortonworks.com/HDP/centos6/2.x/updates/2.6.2.14/HDP-2.6.2.14-centos6-rpm.tar.gz
http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.21/repos/centos6/HDP-UTILS-1.1.0.21-centos6.tar.gz

解压缩
cd /var/www/html/
tar -zxvf ambari-2.5.2.0-centos6.tar.gz
tar -zxvf HDP-2.6.2.14-centos6-rpm.tar.gz
mkdir HDP-UTILS-1.1.0.21
tar -zxvf HDP-UTILS-1.1.0.21-centos6.tar.gz -C HDP-UTILS-1.1.0.21

配置repo源,把ambari.repo里面的源地址改成实际地址
cp /var/www/html/ambari/centos6/ambari.repo /etc/yum.repos.d/
vi /etc/yum.repos.d/ambari.repo

配置完成之后运行 yum repolist 检查一下

准备工作到此结束,下一步就是安装Ambari+HDP了。

原文地址:https://www.cnblogs.com/pandalee-oct/p/8215298.html

时间: 2024-10-31 04:03:44

Hadoop 发行版本 Hortonworks 安装详解(一) 准备工作的相关文章

Hadoop 发行版本 Hortonworks 安装详解(四) 开启Kerberos集群安全验证

一.安装KDC Server 需要选择一个节点安装KDC服务器,这里选择备用头结点 yum install -y krb5-server krb5-libs krb5-workstation 修改配置文件 vi /etc/krb5.conf 把 EXAMPLE.COM 改为 自己想要的名字,[realms]配置段也需要根据实际情况修改 创建数据库 kdb5_util create -s -r EXAMPLE.COM(改成实际名称) 耐心等待一会,创建数据库有点慢 随后会要求你输入数据库主密钥并完

社区OpenStack Queens版本部署安装详解

一.部署软件环境 操作系统: Centos7 内核版本: [[email protected] ~]# uname -m x86_64 [[email protected] ~]# uname -r 3.10.0-693.21.1.el7.x86_64 节点间以及网卡配置 controller节点 [[email protected] ~]# ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qle

Storm集群安装详解

Storm集群安装详解 storm有两种操作模式: 本地模式和远程模式. 本地模式:你可以在你的本地机器上开发测试你的topology, 一切都在你的本地机器上模拟出来; 远端模式:你提交的topology会在一个集群的机器上执行. 本文以Twitter Storm官方Wiki为基础,详细描述如何快速搭建一个Storm集群,其中,项目实践中遇到的问题及经验总结,在相应章节以“注意事项”的形式给出. 1.   Strom集群组件 Storm集群中包含两类节点:主控节点(Master Node)和工

Hadoop发行版本介绍

前言 从2011年开始,中国进入大数据风起云涌的时代,以Hadoop为代表的家族软件,占据了大数据处理的广阔地盘.开源界及厂商,所有数据软件,无一不向Hadoop靠拢.Hadoop也从小众的高富帅领域,变成了大数据开发的标准.在Hadoop原有技术基础之上,出现了Hadoop家族产品,通过“大数据”概念不断创新,推出科技进步. 目录 Hadoop的发展史 Hadoop的发行版本的选择和介绍 1. Hadoop发展史 1.1Hadoop产生背景 Hadoop 最早起源于Nutch .Nutch 是

CentOS程序包管理器rpm、yum以及程序包编译安装详解

一.程序包管理器RPM和Yum简介 程序包管理器:将编译好的应用程序的各组成文件打包成一个或几个程序包文件,可以更方便地实现程序包的安装.升级.卸载和查询等管理操作. rpm软件包管理器(RPM Package Manager):rpm包存在依赖关系,依赖关系复杂,安装时间很长,虽然可以忽略依赖关系,但是可能会导致程序包安装后无法正常使用. yum程序包管理器( Yellow dog Updater, Modified):yum是基于RPM包管理,自动解决程序包间的依赖关系.根据配置文件的资源地

Phoenix和SQuirrel安装详解

Phoenix安装详解 描述 现有hbase的查询工具有很多如:Hive,Tez,Impala,Shark/Spark,Phoenix等.今天的主角是Phoenix. phoenix,中文译为“凤凰”,很美的名字.Phoenix是由saleforce.com开源的一个项目,后又捐给了Apache基金会.它相当于一个Java中间件,提供jdbc连接,操作hbase数据表. 但是在生产环境中,不可以用在OLTP中.在线事务处理的环境中,需要低延迟,而Phoenix在查询HBase时,虽然做了一些优化

Cloudera impala简介及安装详解

一.Impala简介 Cloudera Impala对你存储在Apache Hadoop在HDFS,HBase的数据提供直接查询互动的SQL.除了像Hive使用相同的统一存储平台,Impala也使用相同的元数据,SQL语法(Hive SQL),ODBC驱动程序和用户界面(Hue Beeswax).Impala还提供了一个熟悉的面向批量或实时查询和统一平台. 二.Impala安装 1.安装要求 (1)软件要求 Red Hat Enterprise Linux (RHEL)/CentOS 6.2 (

Kafka单机、集群模式安装详解(二)

本文环境如下: 操作系统:CentOS 6 32位 JDK版本:1.8.0_77 32位 Kafka版本:0.9.0.1(Scala 2.11) 接上篇 Kafka单机.集群模式安装详解(一) 6. 单节点多Broker模式 Kafka使用可以有多种模式,包括单节点单Broker,单节点多Broker,多节点多Broker. 这里我们简单区分一下: 单节点单Broker:在单台机子上,启动了一个Kafka实例(上一篇就是这种模式). 单节点多Broker:在同一台机子上开启多个Kafka(类似H

httpd 安装详解(待更新)

httpd 安装详解 安装httpd: rpm包:CentOS发行版中直接提供 编译安装:定制新功能,或其它原因 安装方式: yum install httpd CentOS 6:httpd-2.2 程序环境: 配置文件: /etc/httpd/conf/httpd.conf/httpd /etc/httpd/conf.d/*.conf 服务脚本: /etc/rc.d/init.d/httpd 脚本配置文件:/etc/sysconfig/httpd 主程序文件: /usr/sbin/httpd