zoukankan      html  css  js  c++  java
  • 搭建ambari集群

    Ambari集群部署手册

    (ambari离线安装)

     

     

     

    一、名词介绍:

    Ambari 集群管理工具

    HDP 集群软件存储库

    Mysql 元数据库

    JDK 开发工具包

    https://blog.csdn.net/microhhh/article/details/81239738

    二、应用包以及服务器准备:

    1. 服务器准备:

    1.1主机名(ip在前,name在后)

    (1)修改hostname:

    hostnamectl set-hostname ambari

    (2)vi  /etc/hosts

    192.168.3.212 192-168-3-212.baicheng.com

    192.168.3.133   192-168-3-133.baicheng.com(创建ambari用户,密码ambari)

    192.168.3.134   192-168-3-134.baicheng.com

    192.168.3.135   192-168-3-135.baicheng.com

    192.168.3.136   192-168-3-136.baicheng.com

    192.168.3.137   192-168-3-137.baicheng.com

    192.168.3.138   192-168-3-138.baicheng.com

    192.168.3.139   192-168-3-139.baicheng.com

    1.2配置FQDN

    ambari节点为例

    vi /etc/sysconfig/network

    NETWORKING=yes

    HOSTNAME=ambari

    1.3防火墙

    临时关闭所有节点防火墙

    systemctl disable firewalld

    systemctl stop firewalld

    1.4 SELinux

    临时关闭所有SELinux

    setenforce 0

    永久关闭:

    修改配置文件需要重启机器:

    vi /etc/sysconfig/selinux

    SELINUX=disabled

    查看SELinux状态:

    sestatus

    1.5免密

    其中ambari对其他6台服务器以及本服务器(ambari)进行免密登录

    主节点里root用户登录执行如下步骤

    ssh-keygen

    cd ~/.ssh/

    cat id_rsa.pub >>authorized_keys

    chmod  777 ~/.ssh

    chmod  777 ~/.ssh/authorized_keys

    先在从节点登录root执行命令

    mkdir ~/.ssh/

    分发主节点里配置好的authorized_keys到各从节点

    scp /root/.ssh/authorized_keys root@192.168.200.31:/root/.ssh/authorized_keys

    ssh-keygen -t rsa

    ssh-copy-id 192.168.200.128

    1.6时间同步

    1.7修改镜像文件编码格式

    修改文件 vi  /etc/locale.conf 

    将LANG="zh_CN.UTF-8"

    修改为

    LANG="en_US.UTF-8"

    重启

    1.8 开启NTP服务(每次启动ambari之前确保ntp服务已开启)

    所有集群上节点都需要操作

    Centos 7 命令

    yum  install ntp

    systemctl is-enabled ntpd

    systemctl enable ntpd

    systemctl start ntpd

    查看状态

    systemctl status ntpd

    安装步骤如下:

    1,执行命令如下:yum -y install ntp

    2,安装完成过后执行:vi /etc/ntp.conf

    注释掉所有server *.*.*的指向,新添加一条可连接的ntp服务器(百度一下ntp服务器,我选的是上海交大的)

    server ntp1.aliyun.com iburst

    启动时间同步服务service ntpd start

    执行命令 ntpdate -u ntp1.aliyun.com

    重启时间同步服务 service ntpd restart

    通过ntpstat查看 当前时间同步状态

    synchronised to NTP server (120.25.115.19) at stratum 3

       time correct to within 1043 ms

    注意:

    建议硬盘50G以上

    192.168.80.144   ambari01   (部署Ambari-server和Mirror server)(分配1G,我这里只是体验过程,当然你可以分配更多或更小) 

      192.168.80.145   ambari02  (部署Agent)

      192.168.80.146   ambari03  (部署Agent)(分配1G,我这里只是体验过程,当然你可以分配更多或更小)

    192.168.80.147   ambari04 (部署Agent)

    配置ip:

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

    2.应用包准备:

    jdk-8u151-linux-x64.tar.gz(推荐1.7+)

    http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html  

    mysql-5.6.33-linux-glibc2.5-x86_64.tar(推荐5.6+)

    https://www.mysql.com/downloads/

    Python2.6/2.7(centos自带)

    HDP-UTILS-1.1.0.21-centos7.tar.gz(可作为迅雷下载链接)

    http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.21/repos/centos7/HDP-UTILS-1.1.0.21-centos7.tar.gz

    HDP-2.6.3.0-centos7-rpm.tar.gz(可作为迅雷下载链接)

    http://public-repo-1.hortonworks.com/HDP/centos7/2.x/updates/2.6.3.0/HDP-2.6.3.0-centos7-rpm.tar.gz

    ambari-2.6.0.0-centos7.tar.gz(可作为迅雷下载链接)

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

    hdp.repo

    http://public-repo-1.hortonworks.com/HDP/centos7/2.x/updates/2.6.3.0/HDP.repo

    ambari.repo

    http://public-repo-1.hortonworks.com/ambari/centos7/2.x/updates/2.6.0.0/ambari.repo

    三、部署安装:

    1.   jdk安装

    本地上传jdk-8u151-linux-x64.tar.gz到/usr/local/目录下

    cd /usr/local

    解压该文件

    tar -zxvf jdk-8u151-linux-x64.tar.gz

    删除jdk-8u151-linux-x64.tar.gz压缩包

    rm -rf jdk-8u151-linux-x64.tar.gz

    配置jdk环境变量

    vi /etc/profile

    在文件底部追加

    export JAVA_HOME=/usr/local/jdk1.8.0_151

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

    export PATH=$PATH:$JAVA_HOME/bin

    发送到其他主机

    scp -r /etc/profile root@namenode:/etc/profile

    scp -r jdk1.8.0_151 root@datanode:`pwd`

    环境变量生效(所有主机)

    source /etc/profile

    测试,命令行直接键入java,出现以下情况及完成jdk安装

    2.   制作本地源(ambari节点上进行即可)

    2.1安装Apache HTTP服务器

    2.1.1安装HTTP服务器

    允许http服务通过防火墙(永久)

    yum install httpd -y

    firewall-cmd --add-service=http

    firewall-cmd --permanent --add-service=http

    2.1.2 Apache服务自动启动

    添加Apache服务到系统层随系统自动启动

    systemctl start httpd.service

    systemctl enable httpd.service

    2.2安装本地源制作工具

    yum install yum-utils createrepo -y

    2.3安装httpd网站

    2.3.1创建目录ambari

    在httpd网站根目录(/var/www/html)下创建目录ambari

    cd /var/www/html/

    mkdir ambari

    cd /var/www/html/ambari

    mkdir HDP-UTILS

    2.3.2上传文件

    上传HDP-UTILS-1.1.0.21-centos7.tar.gz,HDP-2.6.3.0-centos7-rpm.tar.gz,ambari-2.6.0.0-centos7.tar.gz到cd /var/www/html/ambari/目录下

    2.3.3解压

    1、在/var/www/html/ambari/目录下解压

    tar -zxvf ambari-2.6.0.0-centos7.tar.gz

    tar -zxvf HDP-2.6.3.0-centos7-rpm.tar.gz

    mv HDP-UTILS-1.1.0.21-centos7.tar.gz /var/www/html/ambari/HDP-UTILS/

    cd /var/www/html/ambari/HDP-UTILS/

    tar -zxvf HDP-UTILS-1.1.0.21-centos7.tar.gz

    mv HDP-UTILS-1.1.0.21-centos7.tar.gz /var/www/html/ambari/

    2.3.4查看httpd网站

    使用links命令(yum install -y links)或者浏览器访问

    links命令:

    links http://192.168.3.133/ambari/

    浏览器:

    2.4配置本地源

    将ambari.repo,hdp.repo上传到/etc/yum.repos.d/目录下

    2.4.1配置ambari.repo

    (url地址为解压文件中的路径)

    修改baseurl为:

    baseurl=http://192.168.3.133/ambari/ambari/centos7/2.6.0.0-267

    修改gpgkey为:

    gpgkey=http://192.168.3.133/ambari/ambari/centos7/2.6.0.0-267/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins

    文件内容如下:

    #VERSION_NUMBER=2.6.0.0

    [ambari-2.6.0.0]

    name=ambari Version - ambari-2.6.0.0

    baseurl=http://192.168.200.10/ambari/ambari/centos7/2.6.0.0-267

    gpgcheck=0

    gpgkey=http://192.168.200.10/ambari/ambari/centos7/2.6.0.0-267/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins

    enabled=1

    priority=1

    2.4.2配置hdp.repo

    修改HDP-2.6.3.0下baseurl为:

    baseurl=http://192.168.3.133/ambari/HDP/centos7/2.6.3.0-235

    修改HDP-2.6.3.0下gpgkey为:

    gpgkey=http://192.168.3.133/ambari/HDP/centos7/2.6.3.0-235/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins

    修改HDP-UTILS-1.1.0.21下baseurl为:(注意,若版本号不一致,需要更改为当前版本号)

    baseurl=http://192.168.3.133/ambari/HDP-UTILS/

    修改HDP-UTILS-1.1.0.21下gpgkey为:

    gpgkey=http://192.168.3.133/ambari/HDP-UTILS/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins

    文件内容如下:

    #VERSION_NUMBER=2.6.3.0-235

    [HDP-2.6.3.0]

    name=HDP Version - HDP-2.6.3.0

    baseurl=http://192.168.200.10/ambari/HDP/centos7/2.6.3.0-235

    gpgcheck=0

    gpgkey=http://192.168.200.10/ambari/HDP/centos7/2.6.3.0-235/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins

    enabled=1

    priority=1

    [HDP-UTILS-1.1.0.21]

    name=HDP-UTILS-1.1.0.21

    baseurl=http://192.168.200.10/ambari/HDP-UTILS/

    gpgcheck=0

    gpgkey=http://192.168.200.10/ambari/HDP-UTILS/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins

    enabled=1

    priority=1

    2.4.3移动文件

    (如果上传位置不在上述地址,需要将配置完成后的ambari.repo以及hdp.repo文件移动到/etc/yum.repos.d/下)

    mv ambari.repo /etc/yum.repos.d/

    mv hdp.repo/etc/yum.repos.d/

    依次执行以下命令:

    yum clean all

    yum list update

    yum makecache

    yum repolist

    2.5安装Mysql数据库

    Ambari安装会将安装等信息写入数据库,建议使用自己安装的Mysql数据库,也可以不安装而使用默认数据库PostgreSQL

    安装完成后,使用root用户登录执行以下命令:

    3.5 安装Mysql数据库

      Ambari安装会将安装等信息写入数据库,建议使用自己安装的MySQL数据库,也可以不安装而使用默认数据库PostgreSQL。

      Mysql数据库安装过程如下:

      3.5.1. 下载mysql的repo源(CentOS 7.2的yum源中默认没有mysql,要先下载mysql的repo源)

     wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm

      3.5.2. 安装mysql57-community-release-el7-8.noarch.rpm包

    rpm -ivh mysql57-community-release-el7-8.noarch.rpm  --nodeps --force

      安装这个包后,会获得两个mysql的yum repo源:

    /etc/yum.repos.d/mysql-community.repo

    3/etc/yum.repos.d/mysql-community-source.repo

    yum -y remove mariadb-libs

      3.5.3.安装mysql

     yum install mysql-server

      3.5.4. 启动mysql服务

      查看MySQL服务是否已启动:

     service mysqld status

      启动服务:

    systemctl start mysqld

      3.5.5. 重置root密码

      MySQL5.7会在安装后为root用户生成一个随机密码,而不是像以往版本的空密码。 可以安全模式修改root登录密码或者用随机密码登录修改密码。下面用随机密码方式

    MySQL为root用户生成的随机密码通过mysqld.log文件可以查找到:

    grep 'temporary password' /var/log/mysqld.log

      修改root用户密码:(MySQL的密码策略比较复杂,过于简单的密码会被拒绝)

    mysql -u root -p

    set global validate_password_policy=0;

    set global validate_password_length=4;

    set PASSWORD=PASSWORD('123456');

    mysql> Enter password: (输入刚才查询到的随机密码)

    mysql> update mysql.user set authentication_string=password('1234') where user='root'

    mysql> exit

    用root新密码登录:

    1mysql -u root -p 1234

    2.5.1创建ambari数据库

    创建ambari数据库以及ambariuser数据库用户并授权

    create database ambari character set utf8 ; 

    CREATE USER 'ambariuser'@'%'IDENTIFIED BY '123456';

    GRANT ALL PRIVILEGES ON *.* TO 'ambariuser'@'%';

    FLUSH PRIVILEGES;

    GRANT ALL PRIVILEGES ON *.* TO 'ambari'@'%';

    FLUSH PRIVILEGES;

    2.5.2创建hive数据库

    创建hive数据库以及hiveuser数据库用户并授权

    create database hive character set utf8 ; 

    CREATE USER 'hiveuser'@'%'IDENTIFIED BY '123456';

    GRANT ALL PRIVILEGES ON *.* TO 'hiveuser'@'%';

    FLUSH PRIVILEGES;

    GRANT ALL PRIVILEGES ON *.* TO 'hive'@'%';

    FLUSH PRIVILEGES;

    如果需要安装其他服务如Oozie,则创建相应的数据库及用户

    2.5.3安装mysql jdbc驱动

    yum install mysql-connector-java -y

    3.   安装Ambari

    3.1安装Ambari2.6.0.0

    3.1.1安装ambari服务

    yum install -y ambari-server

    3.1.2执行安装

    ambari-server setup

    1. 检查SELinux是否关闭,如果关闭不用操作

    Using python  /usr/bin/python

    Setup ambari-server

    Checking SELinux...

    SELinux status is 'disabled'

    1. 进入自定义设置,输入:y

    Customize user account for ambari-server daemon [y/n] (n)? y

    3.      输入ambari-server账号,输入:ambari(ambari主机上创建的用户)

    Enter user account for ambari-server daemon (root):ambari

    1. 选择JDK,输入:3

    Checking JDK...

    [1] Oracle JDK 1.8 + Java Cryptography Extension (JCE) Policy Files 8

    [2] Oracle JDK 1.7 + Java Cryptography Extension (JCE) Policy Files 7

    [3] Custom JDK

    ==============================================================================

    Enter choice (1): 3

    1. 键入JDK PATH,输入:/usr/local/jdk1.8.0_151

    WARNING: JDK must be installed on all hosts and JAVA_HOME must be valid on all hosts.

    WARNING: JCE Policy files are required for configuring Kerberos security. If you plan to use Kerberos,please make sure JCE Unlimited Strength Jurisdiction Policy Files are valid on all hosts.

    Path to JAVA_HOME: /usr/local/jdk1.8.0_151

    Validating JDK on Ambari Server...done.

    1. 数据库配置,输入:y

    Configuring database...

    Enter advanced database configuration [y/n] (n)? y

    1. 选择数据库,输入:3

    Configuring database...

    ==============================================================================

    Choose one of the following options:

    [1] - PostgreSQL (Embedded)

    [2] - Oracle

    [3] - MySQL / MariaDB

    [4] - PostgreSQL

    [5] - Microsoft SQL Server (Tech Preview)

    [6] - SQL Anywhere

    [7] - BDB

    ==============================================================================

    Enter choice (1): 3

    1. 数据库具体配置信息,如果和默认相同直接回车(下面的IP代表数据库所在的节点)

    Hostname (localhost): 192.168.3.212

    Port (3306):

    Database name (ambari):

    Username (ambari): ambariuser

    Enter Database Password (bigdata): 123456

    Re-enter password: 123456

    Configuring ambari database...

    1. 启动Ambari服务前,需要将Ambari的sql脚本导入数据库

    用Ambari用户(上面设置的用户,无密码)登录mysql

    mysql -u ambari -p

    use ambari

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

    1. 启动Ambari

    ambari-server start

    4.   集群配置

    4.1登录          

    浏览器访问http://192.168.3.133:8080/ 用户名:admin 密码:admin

    4.2添加集群         

    4.2.1集群配置

    点击Launch Install Wizard按钮进行集群配置

    4.2.2设置集群名称

    4.2.3设置HDP安装源

    选择HDP2.6.3.0,使用Use Local Repository,选择redhat7,Base URL内容填写与HDP.repo中的URL地址一致

    4.2.4设置集群节点

    Target Hosts中填入需要加入集群的主机名

    点击“浏览”按钮,上传id_rsa文件(该文件需要从192.168.3.133节点中/root/.ssh/目录中获取)

    4.2.5主机确认

    K可能遇到的问题;

    查看 openssl 版本:

     

        [root@ambari ~]# openssl version

        OpenSSL 1.0.2k-fips  26 Jan 2017

     

        [root@ambari ~]# rpm -qa | grep openssl

        openssl-libs-1.0.2k-12.el7.x86_64

        openssl-1.0.2k-12.el7.x86_64

     

     

    如果低于 openssl-1.0.1e-16.el6.x86_64 版本,则需要更新到 openssl-1.0.1e-16.el6.x86_64 及以上版本

     

    查看 Python 版本:

        [root@ambari ~]# python -V

        Python 2.7.5

    如果低于 Python 2.7 版本,则升级 Python 2.7 及以上版本。

    编辑 /etc/python/cert-verification.cfg 配置文件,将 [https] 节的 verify 项设为禁用:

        [root@ambari ~]# vi /etc/python/cert-verification.cfg

        # Possible values are:

        # 'enable' to ensure HTTPS certificate verification is enabled by default

        # 'disable' to ensure HTTPS certificate verification is disabled by default

        # 'platform_default' to delegate the decision to the redistributor providing this particular Python version

        # For more info refer to https://www.python.org/dev/peps/pep-0493/

        [https]

        verify=disable

    保存退出。

    编辑 /etc/ambari-agent/conf/ambari-agent.ini 配置文件,在 [security] 节部分,确保设置如下两个值,其它值保持不变:

        [root@ambari ~]# vi /etc/ambari-agent/conf/ambari-agent.ini

        [security]

        ssl_verify_cert=0

        force_https_protocol=PROTOCOL_TLSv1_2

    保存退出,重启 ambari-agent

        [root@ambari ~]# ambari-agent restart

    重新执行确认主机步骤(Confirm Hosts),即可通过确认主机并完成注册。

     

     

    禁用selinux

    查看当前SELinux状态

    /usr/sbin/sestatus

    在当前终端禁用SELinux

    setenforce 0

    永久禁用SELinux

    vim /etc/selinux/config

    #确认SELINUX为禁用状态

     

          SELINUX=disabled

       重启计算机

          sudo reboot

    2禁用PackageKit

     

    通常在centosredhat中为开启

    vim /etc/yum/pluginconf.d/refresh-packagekit.conf

     #确认packagekit为禁用状态

    enabled=0

    检查UMASK

    检查系统UMASK

    umask

    设置当前UMASK

    umask 0022

    永久生效

    echo umask 0022 >> /etc/profile

    八、安装Ambari-agent

    在线安装只需要运行如下命令便可

    yum install ambari-agent

    4.2.6选择需要安装的服务

    4.2.7配置Slaves和Clients节点

    (日志与数据信息统一保存在/Data/work/local目录下)

    4.2.8用户服务配置

    4.2.9配置信息确认

    4.2.10安装

    4.2.11完成

    5.   参考文档

    http://blog.csdn.net/daiyutage/article/details/52210830

    http://www.cnblogs.com/boyzgw/p/6525313.html

  • 相关阅读:
    [IOI1998] Pictures
    【C++】位操作(3)-获取某位的值
    PAT A 1013. Battle Over Cities (25)【并查集】
    hihoCoder 1391 Countries【预处理+排序+优先队列】2016北京网络赛
    PAT A 1014. Waiting in Line (30)【队列模拟】
    codeforces Round#379 div.2
    PAT A 1004. Counting Leaves (30)【vector+dfs】
    POJ 1163:The Triangle
    LeetCode39/40/22/77/17/401/78/51/46/47/79 11道回溯题(Backtracking)
    BZOJ 3680 吊打XXX
  • 原文地址:https://www.cnblogs.com/yuansai/p/10175027.html
Copyright © 2011-2022 走看看