Ambari的安装

作者: 靈08_1024 | 来源:发表于2018-04-13 13:18 被阅读180次

    准备工作

    需要的工具有:yum rpm scp curl wget pdsh 前几个一般系统都自带了,pdsh需要自己装 
    

    使用如下命令:

    sudo yum -y install epel-release 
    sudo yum install pdsh
    
    配置hosts

    执行命令:

    sudo vi /etc/hosts
    

    部分需要编辑vi /etc/sysconfig/networkHOSTNAME=kindoserver41

    添加如下内容(根据情况修改,dn1这名字最好和节点服务器的主机名相同,以防后期可能会出主机名不一致的错):

    192.168.1.49 master master.hadoop.test 
    192.168.1.48 dn1 dn1.hadoop.test 
    192.168.1.47 dn2 dn2.hadoop.test
    
    配置ssh免登录

    选定master.hadoop.test作为ambari server,需要配置该节点到其它节点的ssh免登录

    cd ~  
    ssh-keygen 
    cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
    

    一直敲回车,遇到(y/n)?敲y 回车

    chmod 700 ~/.ssh  
    chmod 600 ~/.ssh/authorized_keys 
    

    配置本地的免登录

    scp ~/.ssh/authorized_keys root@kindoserver42:/root/.ssh/ 
    scp ~/.ssh/authorized_keys root@kindoserver43:/root/.ssh/ 
    
    其他
    setenforce 0  
    chkconfig iptables off  
    /etc/init.d/iptables stop  
    umask 022  
    

    永久关闭:

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

    修改enable=0

    vi /etc/selinux/config
    

    修改SELINUX=disabled

    安装Ambari Server

    添加yum资源库
    wget -nv http://public-repo-1.hortonworks.com/ambari/centos6/2.x/updates/2.6.1.3/ambari.repo -O /etc/yum.repos.d/ambari.repo
    yum repolist
    
    yum install ambari-server
    

    资源库部分参见官网:https://docs.hortonworks.com/HDPDocuments/Ambari-2.6.1.3/bk_ambari-installation/content/download_the_ambari_repo_lnx6.html 。可以根据自己的版本选择。我的centos6.

    创建mysql用户
    #注意此处的密码不能设置特殊符号,ambari不认识
    create user 'ambari'@'%' IDENTIFIED BY 'ambari';
    #设置ambari的用户权限
    GRANT ALL ON ambari.* TO 'ambari'@'%';
    

    tips:如果报错MySQL-1819,

    #更改MySQL密码强度
    set global validate_password_policy=0;
    #设置mysql最低长度
    set global validate_password_length=4;
    
    设置ambari
    ambari-server setup
    

    设置时注意填MySQL中ambari库的用户名和密码。

    导入ambari数据库

    MySQL命令行:

    use ambari;
    alter database ambari character set latin1;
    source /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql
    
    启动Ambari
    ambari-server start
    

    然后就启动成功了。

    登录

    登录http://ip:8080,出现ambari的登录页面,admin/admin进行登录。

    配置界面填写数据库密码时,注意选择已存在的数据库!!!!
    设置数据库驱动:
    全局shell命令

    ambari-server setup --jdbc-db=mysql --jdbc-driver=/usr/share/java/mysql-connector-java-5.1.46.jar
    

    注意在创建数据库用户时,要使用192.168.1.13,不要使用localhost。(hive数据库出错)
    hive的数据库hive:hive,ambari metrics的用户admin:admin;activity analysis的用户admin:admin。

    在装Hive时,会出现没有该表,但提示Table xxx not exist
    改hive数据库的编码:alter database hive character set latin1;
    /etc/my.cnf里添加:

    #最大连接数,根据情况
    max_connections=500
    
    [client]
    default-character-set=utf8
    [mysqld]
    character-set-server=utf8
    [mysql]
    default-character-set=utf8
    
    #sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'
    

    重新创建该库。

    然后启动全部。

    期间修改了一次主机,重启之后,需要修改每台服务器的/etc/ambari-agent/conf/ambari-agent.ini文件中的主机。

    问题

    修改配置:(datanode节点启动不起来)

    echo  "@hdfs    -    core      unlimited"  >>  /etc/security/limits.conf 
    
    cat >> /etc/security/limits.conf << EOF
    * - nofile 128000
    * - noproc 65535
    EOF
    
    

    然后重启该服务器。


    安装Impala

    Impala的安装包是在CDH中,在线安装的话,在许多环境中是不可行的,需要制作离线镜像源。

    1)添加cdh的repo

    在/etc/yum.repos.d/中创建cdh.repo

    [cloudera-cdh5]
    # Packages for Cloudera's Distribution for Hadoop, Version 5, on RedHat    or CentOS 6 x86_64
    name=Cloudera's Distribution for Hadoop, Version 5
    baseurl=https://archive.cloudera.com/cdh5/redhat/6/x86_64/cdh/5/
    gpgkey =https://archive.cloudera.com/cdh5/redhat/6/x86_64/cdh/RPM-GPG-KEY-cloudera
    gpgcheck = 1
    
    1. git下载impala:
    
    VERSION=`hdp-select status hadoop-client | sed 's/hadoop-client - \([0-9]\.[0-9]\).*/\1/'` 
    
    sudo git clone https://github.com/cas-bigdatalab/ambari-impala-service.git /var/lib/ambari-server/resources/stacks/HDP/$VERSION/services/IMPALA  
    
    

    3)web页面
    重启ambariambari-server restart,Actions-->Add service -->impala,然后一步一步安装

    1. 配置文件/etc/hadoop/conf/core-site.xml添加内容
    
    <property> 
        <name>dfs.client.read.shortcircuit</name>  
       <value>true</value> 
    </property> 
    
    <property> 
        <name>dfs.client.read.shortcircuit.skip.checksum</name> 
            <value>false</value> 
    </property> 
    
    <property>  
        <name>dfs.datanode.hdfs-blocks-metadata.enabled</name>  
        <value>true</value> 
    </property> 
    

    /etc/hadoop/conf/hdfs-site.xml

    <property> 
        <name>dfs.datanode.hdfs-blocks-metadata.enabled</name>  
        <value>true</value> 
    </property> 
    <property>  
        <name>dfs.block.local-path-access.user</name>  
        <value>impala</value> 
    </property> 
    <property> 
        <name>dfs.client.file-block-storage-locations.timeout.millis</name> 
        <value>60000</value> 
    </property> 
    
    
    1. 将配置文件复制到/etc/impala/conf

    2. 页面安装启动impala


      image.png

    期间还参照http://www.cnblogs.com/zwgblog/p/6846030.html这个网址复制了hbase的jar包,但看别的都没有说jar包的移动,所以不确定有没有。

    其中的错误:

    1. 错误:部分py脚本会执行超时,然后报错Python script has been killed due to timeout after waiting 1800 secs解决:比如:/usr/bin/yum -d 0 -e 0 -y install hadoop_2_6_4_0_91-mapreduce
    需要单独手动在对应的服务器上执行yum install hadoop_2_6_4_0_91-mapreduce。然后在页面上点击Retry

    2. 在安装完impala之后,会出现jar包找不到的情况,而页面的显示为impala连接上之后又断开了。提示为Connection failed: [Errno 111] Connection refused to kindoserver43:22000.

    错误日志查看路径:/var/log/impala/

    执行ll -rt,有个impalad.ERROR -> 软连接到一个文件,cat该文件,则能看到异常。

    把以下jar包放到 /usr/lib/impala/lib/ 目录下,并创建软连接:

    
    ln -sf  /usr/hdp/2.6.4.0-91/hadoop/hadoop-common-2.7.3.2.6.4.0-91.jar hadoop-common.jar
    
    ln -sf /usr/hdp/2.6.4.0-91/hadoop/hadoop-auth-2.7.3.2.6.4.0-91.jar hadoop-auth.jar
    
    ln -sf /usr/hdp/2.6.4.0-91/hive/lib/hive-metastore-1.2.1000.2.6.4.0-91.jar  hive-metastore.jar
    
    ln -sf /usr/hdp/2.6.4.0-91/hive/lib/hive-common-1.2.1000.2.6.4.0-91.jar  hive-common.jar
    
    ln -sf /usr/hdp/2.6.4.0-91/hive/lib/hive-shims-common-1.2.1000.2.6.4.0-91.jar hive-shims-common.jar
    
    ln -sf /usr/hdp/2.6.4.0-91/hive/lib/hive-exec-1.2.1000.2.6.4.0-91.jar hive-exec.jar
    
    ln -sf /usr/hdp/2.6.4.0-91/hadoop-mapreduce/hadoop-mapreduce-client-core-2.7.3.2.6.4.0-91.jar hadoop-mapreduce-client-core.jar
    
    ln -sf /usr/hdp/2.6.4.0-91/hadoop-hdfs/hadoop-hdfs-2.7.3.2.6.4.0-91.jar hadoop-hdfs.jar
    
    

    参考文献:https://www.jianshu.com/p/6e59df5f2461 。(因文中添加yum资源库开始行不通了,所以自行写了一篇)
    http://blog.csdn.net/maxsky/article/details/51171474 。(MySQL部分)
    https://community.hortonworks.com/questions/113748/hive-metastore-start.html 。(Hive Metastore Start)
    http://www.mamicode.com/info-detail-2214089.html 。(没什么用,但是提供了灵感)

    http://www.voidcn.com/article/p-rhriyovp-bhh.html 。(impala部分参考)

    相关文章

      网友评论

        本文标题:Ambari的安装

        本文链接:https://www.haomeiwen.com/subject/dqlzhftx.html