Ambari 与hdp 集群搭建教程

    xiaoxiao2021-03-25  96

                    Ambari 与hdp 集群搭建教程

    集群环境os为centos6.8 server

     

    1,各个节点进行:网络(静态IP)配制(

    192.168.10.30

    master

    8g

    192.168.10.31

    slave1

    8g

    192.168.10.32

    Slave2

    8g

    192.168.10.33

    Slave3

    8g

    192.168.10.34

    Slave4

    8g

    192.168.10.35

    Slave5

    8g

    Vi /etc/sysconfig/network-scripts/ifcfg-eth0

    :

    DEVICE=eth0

    HWADDR=00:50:56:A7:45:10

    TYPE=Ethernet

    UUID=010e7a3c-f81c-4914-a69a-01da66b9cfb3

    ONBOOT=yes

    NM_CONTROLLED=yes

    BOOTPROTO=static

    IPADDR=192.168.10.30

    NETMASK=255.255.240.0

    GATEWAY=192.168.2.1

    DNS1=202.98.96.68

    DNS2=202.98.96.69

     

     

    Vi /etc/sysconfig/network

    :

    NETWORKING=yes

    HOSTNAME=master

    GATEWAY=192.168.2.1

     

     

    重启网络服务:

    /etc/init.d/network restart

     

    2,Hosts配置

    在各个节点:vi /etc/hosts

      添加集群主机:  

     

     

    192.168.10.30  master

    192.168.10.31  slave1

    192.168.10.32  slave2

    192.168.10.33  slave3

    192.168.10.34  slave4

    192.168.10.35  slave5

                      ………………………….

     

     

    3,关闭防火墙和SELinux(各个节点)。

    chkconfig iptables off (重启后生效)

      vi   /etc/selinux/config

         修改SELINUX=disabled (重启后永久生效

     

    Ssh 无密码登录

    master 节点下:

    ssh-keygen -t rsa

    cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

    chmod 600 ~/.ssh/authorized_keys

    scp ~/.ssh/authorized_keys root@slave1:~/.ssh/

    scp ~/.ssh/authorized_keys root@slave2:~/.ssh/

     

    ……………………..

     

     

    4,Ntp 即时服务

     

      master 为ntp校准服务器

       Master  的 vi /etc/ntp.conf

    :

     

    restrict 127.0.0.1

    restrict -6 ::1

     

    # Hosts on local network are less restricted.

    #restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap

     

     

    restrict 192.168.10.0 mask 255.255.240.0 nomodify notrap  //允许的网络字段连接ip限制

     

     

    server 127.127.1.0 perfer   //以本机时间为准

    fudge 127.127.1.0 stratum 10

     

    #server 0.centos.pool.ntp.org iburst  //全部注释掉

    #server 1.centos.pool.ntp.org iburst

    #server 2.centos.pool.ntp.org iburst

    #server 3.centos.pool.ntp.org iburst

     

     

    各个客户端(slave1,2,3,4,5)配置如下:

    Vi /etc/ntp.conf

     

      Server master   //指定ntp 服务器,为master

    #server 0.centos.pool.ntp.org iburst  //全部注释掉

    #server 1.centos.pool.ntp.org iburst

    #server 2.centos.pool.ntp.org iburst

    #server 3.centos.pool.ntp.org iburst

     

     

     

    启动全部节点ntp服务;

     

    service ntpd start

    检查是否成功,用ntpstat命令查看同步状态,出现以下状态代表启动成功

     

    请求服务器前,请先使用ntpdate手动同步一下时间:ntpdate -umaster (主节点ntp服务器)

    这里可能出现同步失败的情况,请不要着急,一般是本地的ntp服务器还没有正常启动,一般需要等待5-10分钟才可以正常同步。启动服务:

    service ntpd start

     

     

    5,在各个节点jdk配置,:

    rpm –ivh jdk-8u101-linux-x64.rpm

     此时jdk安装目录为/usr/java/….

    配置jdk环境:

    Vi /etc/profile

     

     

    export JAVA_HOME=/usr/java/jdk1.8.0_101

    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

     

    export PATH=$PATH:$HOME/bin:$JAVA_HOME/bin

     

     

    source /etc/profile

     

     

     6,安装http服务器(主节点)

    yum install httpd

    service httpd start

    #修改网站默认的跟目录

    vi /etc/httpd/conf/httpd.conf

    #

    # DocumentRoot: Thedirectory out of which you will serve your

    # documents. Bydefault, all requests are taken from this directory, but

    # symbolic links andaliases may be used to point to other locations.

    #

    DocumentRoot"/var/www/html"

    #

    # This should bechanged to whatever you set DocumentRoot to.

    #

    <Directory"/var/www/html">

     

     

    7,安装mysql(主节点)

    rpm –ivh MySQL-server-5.5.36-1.el6.x86_64.rpm

    rpm –ivh MySQL-client-5.5.36-1.el6.x86_64.rpm

    service mysql start

    service mysql start

    4.mysqladmin -u root password 'xxxx'

    5.mysql -uroot -pxxxx   (进入mysql命令行)

    进入mysql命令行之后,开始执行下面sql语

    #创建用户并分配权限

    CREATE USER 'ambari'@'master'IDENTIFIED BY 'ambari'; GRANT ALL PRIVILEGES ON *.* TO 'ambari'@'master';

    GRANT ALL PRIVILEGES ON *.* TO root@'master';

    FLUSH PRIVILEGES;

     

     

     

    8,创建用户组及用户(在主节点)

     

     Groupadd ambari

    添加ambari安装、运行用户到组.

    useradd -G ambari ambari

     

     

    9, 配置安装源

    :鉴于多数集群生产环境不能上网,所以安装时采用本地源的方式.具体为先下载附录中的ambariHDPHDP-UTILStar包然后再配置到本地源中。

    #ambariHDP(HDP-UTILS)

    a)Ambari2.2.2

    操作系统

    格式

    URL地址

    RedHat 6

    CentOS 6

    Oracle Linux 6

    Base URL

    http://public-repo-1.hortonworks.com/ambari/centos6/2.x/updates/2.2.2.0

    Repo File

    http://public-repo-1.hortonworks.com/ambari/centos6/2.x/updates/2.2.2.0/ambari.repo

    Tarball md5 | asc

    http://public-repo-1.hortonworks.com/ambari/centos6/2.x/updates/2.2.2.0/

    ambari-2.2.2.0-centos6.tar.gz

     

    b)HDP 2.4

    操作系统

    版本号

    源名称

    格式

    URL地址

    RedHat 6

    CentOS 6

    Oracle Linux 6

    HDP-2.4.2.0

    HDP

    Base URL

    http://public-repo-1.hortonworks.com/HDP/centos6/2.x/

    updates/2.4.2.0

    Repo File

    http://public-repo-1.hortonworks.com/HDP/centos6/2.x/

    updates/2.4.2.0/hdp.repo

    Tarball md5 | asc

    http://public-repo-1.hortonworks.com/HDP/centos6/2.x/

    updates/2.4.2.0/HDP-2.4.2.0-centos6-rpm.tar.gz

    HDP-UTILS

    Base URL

    http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.20/

    repos/centos6

    Repo File

    http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.20/

    repos/centos6/HDP-UTILS-1.1.0.20-centos6.tar.gz

     

    1)  下载如下组件并拷贝到主节点的httpd网站根目录,/var/www/html内后解压

    Ambari 2.2.2:

    http://public-repo-1.hortonworks.com/ambari/centos6/2.x/updates/2.2.2.0/ambari-2.2.2.0-centos6.tar.gz

    HDP 2.4.2:

    http://s3.amazonaws.com/public-repo-1.hortonworks.com/HDP/centos6/2.x/2.4-latest/HDP-2.4-latest-centos6-rpm.tar.gz

    HDP-UTILS-1.1.0.20

    http://s3.amazonaws.com/public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.20/repos/centos6/HDP-UTILS-1.1.0.20-centos6.tar.gz

    2) 配置ambariHDPHDP-UTILS的源

    :事实证明HDPHDP-UTILS源不需要配置,ambari安装时可以指定本地源,并在各个节点里创建repo文件.ambari的源需要配置,因为安装采用yum install ambari方式.

    vi ambari.repo(http目录下,即解压目录:/var/www/html/)

    #VERSION_NUMBER=2.2.2.0-460

    [Updates-ambari-2.2.2.0]

    name=ambari-2.2.2.0 -Updates

    baseurl=http://192.168.10.30/AMBARI-2.2.2.0/centos6/2.2.2.0-460/

    gpgcheck=1

    gpgkey=http://192.168.10.30/AMBARI-2.2.2.0/centos6/2.2.2.0-460/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins

    enabled=1

    priority=1

     

    vi hdp.repo(http目录下,即解压目录:/var/www/html/)

    #VERSION_NUMBER=2.4.2.0-258

    [HDP-2.4.2.0]

    name=HDP Version -HDP-2.4.2.0

    baseurl=http://192.168.10.30/HDP/centos6/2.x/updates/2.4.2.0

    gpgcheck=1

    gpgkey=http://192.168.10.30/HDP/centos6/2.x/updates/2.4.2.0/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins

    enabled=1

    priority=1

    [HDP-UTILS-1.1.0.20]

    name=HDP Utils Version- HDP-UTILS-1.1.0.20

    baseurl=http://192.168.10.30/HDP-UTILS-1.1.0.20/repos/centos6

    gpgcheck=1

    gpgkey=http://192.168.10.30/HDP/centos6/2.x/updates/2.4.2.0/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins

    enabled=1

    priority=1

     

    ambari.repo ,hdp.repo复制到/etc/ yum.repos.d/目录下

    接着执行以下指令:

    yum clean all

    yum list update

    yum makecache

    yum repolist

     

    10. 执行安装

    Yum方式安装ambari

     安装ambari2.2.2

    1)安装ambari

    yum install ambari-server

    2)配置amabri

    ambari-server setup Customize user account for ambari-server daemon [y/n] (n)? 输入:y Enter user account for ambari-server daemon (root):

    :这里亦可选择用户amabri,届时会让提供该用户的密码等信息. 输入:root

    检查防火墙是否关闭 Adjusting ambari-server permissions and ownership... Checking firewall... WARNING: iptables is running. Confirm the necessary Ambari ports areaccessible. Refer to the Ambari documentation for more details on ports.

    OK to continue [y/n] (y)? 输入y

    检查JDK Checking JDK...

    [1] - Oracle JDK 1.7 + Java Cryptography Extension (JCE)Policy Files 7 [2] - Oracle JDK 1.6 + Java Cryptography Extension (JCE) Policy Files 6 [3] - Custom JDK ============================================================================== Enter choice (1): 输入3 输入:/自己的jdk安装目录

     Choose one of the following options: [1] - PostgreSQL (Embedded) [2] - Oracle [3] - MySQL [4] - PostgreSQL ============================================================================== Enter choice (1): 输入3

    Hostname (localhost): Port (3306): Database Name (ambari): Username (ambari): 输入:(什么也不输入,直接回车

    Enter Database Password (cluster): Re-enter password: 输入ambari

    WARNING: Before starting Ambari Server, youmust run the following DDL against the database to create the schema:/var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql :这里需要以mysqlamabri用户在ambari数据库里source上面的sql文件,作用时初始化ambari数据库。

    Proceed with configuring remote database connectionproperties [y/n] (y)? 输入y

    简单图示如下:

     

     

     

     

    注意:启动ambari server之前一定要运行上述提到的Ambari-DDL-MySQL-CREATE.sql脚本,否则ambari无法创建数据库,无法启动。

     

    登录mysql,执行如下命令:

    "source/var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql"

    11,启动ambari服务

    ambari-server start

    Using python  /usr/bin/python2.6

    Starting ambari-server

    Ambari Server running with 'root' privileges.

    Organizing resource files at/var/lib/ambari-server/resources...

    Server PID at: /var/run/ambari-server/ambari-server.pid

    Server out at: /var/log/ambari-server/ambari-server.out

    Server log at: /var/log/ambari-server/ambari-server.log

    Waiting for server start....................

    Ambari Server 'start' completed successfully.

    :启动ambari访问前,请确保mysql驱动已经放置在/usr/share/java内且名字是mysql-connector-java.jar不然ambari server启动时会报错mysql驱动找不到的错误.具体报错见:

     

     

    12,访问master192.168.10.30:8080进入安装界面,用户密码:admin/admin

     

    1,选 launch install wizard

       

    2,配置本地源,如下图示;指定本地源,修改base url,master,如下图中红线所示;否则会联网下载,安装失败。

     

     

    3,配置集群主机,将主节点master下的.ssh文件下id_rsa作为ssh private key,如下图示:

     

     

     

     

     

     

    4,主机检查

     

     

    主机检查时出现TransparentHuge Pages Issues (1)

    解决方法:执行下面的命令可临时解决这个警告:

    echo never >/sys/kernel/mm/redhat_transparent_hugepage/defrag

    永久解决:

    vi  /etc/rc.local

    在文件的最后添加下面的行,保存即可。

    echo never >/sys/kernel/mm/redhat_transparent_hugepage/defrag

    echo never >/sys/kernel/mm/transparent_hugepage/enabled

     5,选择服务;

     

     

     

    6,选择服务安装的server

     

    在选server host 时,自己将几乎所有server 都放在了master节点上,包括hbase server ,hive server2 /metastore  ,namenode,secondary,hdfs等,除了accumulo,其他可以按配置放。

     

     

     

     

     

     

     

    7,注意配置hive config,如下图示,一定要选mapreduce

     

    测试之前在mysql执行以下命令:

    CREATE USER 'hive'@'master' IDENTIFIED BY 'hive';

    GRANT ALL PRIVILEGES ON *.* TO 'hive'@'master' IDENTIFIED BY 'hive' WITH GRANT OPTION;

    Flush privileges

     

     

    8,开始安装

     

     

     

     安装较慢,估计40分钟左右

      出错时,按提示解决:

    9.安装成功后如下示:

     

     

    10,Sqoop测试成功。

     

     

    安装参考链接:http://blog.csdn.net/shenliang1985/article/details/51478151

    集群扩容新增硬盘:链接:http://www.centoscn.com/CentOS/config/2014/0403/2711.html

    转载请注明原文地址: https://ju.6miu.com/read-23809.html

    最新回复(0)