美文网首页大数据我爱编程
centos7 安装 CDH 5.14.3 cloudera

centos7 安装 CDH 5.14.3 cloudera

作者: Helen_Cat | 来源:发表于2018-05-09 12:00 被阅读0次
    image.png

    硬件信息
    四台 高配商业主机
    其中三台 8 核 cpu 124G内存 10.5TB ,
    一台 24核心 cpu 124G 内存 16TB 磁盘
    先期 1master 2 slave ,之后 扩容一台 slave

    cdh 已经安装过四五遍 了 ,多次采坑 经历 发现 主要问题是
    文件 目录 修改 读写 执行权限不足 ,没有创建对用用户 ,缺失部分 依赖包 ,端口冲突 文件和hash值不符 等等,所以 cdh 一定要看各个组件的完整日志 ,从日志中发现问题,当然一定要知道日志 的准确位置


    image.png image.png image.png image.png image.png image.png

    设置 yarn-site.xml yarn.nodemanager.resource.memory-mb
    输入 hadoop classpath 把得到的内容粘贴到 yarn-site.xml
    application.classpath 属性 ,不然会报错

     <property>
               <name>yarn.nodemanager.aux-services</name>
                <value>mapreduce_shuffle</value>
       </property>
     <property>
        <name>yarn.nodemanager.aux-services.mapreduce_shuffle.class</name>
        <value>org.apache.hadoop.mapred.ShuffleHandler</value>
      </property>
    

    学习使用awk 自动化完成一些命令
    https://www.cnblogs.com/Berryxiong/p/6240488.html

    https://blog.csdn.net/system1190/article/details/53671520

    https://blog.csdn.net/xuplus/article/details/51668878

    后记:发现上面修改会造成一些问题。以后在解决
    CDH 5.1.3-1.cdh5.1.3.p0.12 1 个错误
    parcel CDH-5.1.3-1.cdh5.1.3.p0.12-unknown 的本地 parcel 错误:一个或多个主机没有报告其操作系统分配。这可能是由于运行已过期的 Cloudera Manager Agent 版本造成的。请运行 Host Inspector 检查 Agent 版本。。

    https://blog.csdn.net/xuheng8600/article/details/79983927
    http://www.360doc.com/content/14/0610/18/203871_385471759.shtml
    说句实话 我认为 安装 cdh 比安装 apache hadoop 要繁琐一些。
    一是 要安装的文件众多 ,七七八八有差不多快十个文件,缺少一个文件 都不太可能 安装成功。
    二是 安装 坑也不少,cdh 只认 openJdk 7+,普通jdk 即使设置了 JAVA_HOME ,cdh 也视而不见,对系统也有要求,最好 是centos 7,centos 6.9 就有大问题。安装顺序也是不可以颠倒,各种配置也是一个大问题。
    三是 安装方式 多样,至少常规有 三种,每一种 都有各种坑,我是先离线下载好了所有的文件,才开始整,有的 安装攻略也不提 用了哪些文件,上来就整,迷迷糊糊
    四是 安装文件 下载 要么不好找下载地址,要么 就是下载贼慢,严重影响安装进度
    五是 安装后的目录众多,不熟悉的话 可能根本找不到。
    六 一定 要 在 /opt/目录下 安装 cloudera ,否则未来很多不方便

    好了
    首先先给大家 下载的官网 ftp 地址
    http://archive.cloudera.com/cdh5/parcels/5.14.2.3/
    CDH-5.14.2-1.cdh5.14.2.p0.3-el7.parcel
    CDH-5.14.2-1.cdh5.14.2.p0.3-el7.parcel.sha1
    http://archive.cloudera.com/cdh5/parcels/5.14.2.3/manifest.json

    http://archive.cloudera.com/cdh5/parcels/5.14.4.3/

    https://blog.csdn.net/eason_oracle/article/details/51818423

    补充几点:
    如果直接新建个.sha的文件,把manifest.json最后一行的hash值拷贝进去,直接验证验证失败,这样cm会直接从远程下载parcel包,而不是使用本地下载好的parcel。
    解决办法直接把.sh1文件复制一份,再加入manifest.json的hash值,这样才能hash验证通过,使用本地下载好的parcel包。
    注意,
    .sh1文件也要在下载parcel包时下载好。
    mysql数据库最好跟cm主节点在一个节点上,否则会出现无远程权限的问题。

    有时候识别不了 本地的 parcel
    发现重启master的cloudera-scm-server 就可以了
    不过我看日志

    2018-07-15 21:39:30,531 WARN ParcelUpdateService:com.cloudera.cmf.persist.ReadWriteDatabaseTaskCallable: Error while executing CmfEntityManager task
    java.lang.IllegalArgumentException: Unknown Distro suffix: 1.cdh5.14.2.p0.3
        at com.cloudera.cmf.CDHResources$Distro.valueOfSuffix(CDHResources.java:117)
        at com.cloudera.parcel.ParcelIdentity.filenameInternal(ParcelIdentity.java:112)
        at com.cloudera.parcel.ParcelIdentity.filename(ParcelIdentity.java:133)
        at com.cloudera.parcel.ParcelIdentity$1.compare(ParcelIdentity.java:38)
        at com.cloudera.parcel.ParcelIdentity$1.compare(ParcelIdentity.java:34)
        at java.util.TimSort.countRunAndMakeAscending(TimSort.java:355)
    

    也可能是文件名 也有问题

    http://archive.cloudera.com/cm5/redhat/7/x86_64/cm/5.14.3/RPMS/x86_64/

    image.png
    https://archive.cloudera.com/cm5/cm/5/cloudera-manager-centos7-cm5.14.3_x86_64.tar.gz

    还有 mysql openjdk ,这个 在 centos7 建议使用 yum install,如果 原装的openjdk 你没有卸载 只要 7+ 都可以直接用

    //永久性的修改主机名称,重启后能保持修改后的。
    hostnamectl set-hostname xxx

    //删除hostname
    hostnamectl set-hostname ""
    hostnamectl set-hostname "" --static

    集群 机器全部节点 配置ssh 免登陆 ,并在所有节点 配置 主机名 和 主机名映射 这次全部用root用户 暂时
    注意 所有节点 的 /etc/hosts 文件 内的 默认 127.0.0.1 localname1 localname2 ::1 啥的默认都注释掉先,否则会报错

    hostname   cdhmaster
    hostname   cdhnode1
    hostname   cdhnode2
    
    vi  /etc/hosts
    
    
    101.111.32.178  cdhmaster
    101.111.32.17   cdhnode3
    101.111.32.18   cdhnode1
    101.111.32.19   cdhnode2
    127.0.0.1  localhost  #这个最好就是放在后面
    
    ssh-keygen -t rsa
    cd  ~/.ssh
    
    ssh-copy-id  -i id_rsa.pub   root@cdhnode1  
    ssh-copy-id  -i id_rsa.pub   root@cdhnode2
    
    yum -y install httpd
    
    yum -y install mod_ssl
    
    
    yum install lrzsz  ##方便使用 rz  sz  命令
    sudo yum install java-1.8.0-openjdk  java-1.8.0-openjdk-devel
    rpm -qa | grep mariadb
    rpm -e --nodeps  mariadb-libs-5.5.56-2.el7.x86_64
    sudo rpm -Uvh [http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm](http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm)
    
    sudo yum install mysql-server  # 安装 mysql 这里也有坑 建议大家看我之前写的 mysql 安装教程
    yum install  mysql-connector-java  #centos 7 安装 mysql-connector-java.noarch 1:5.1.25-3.el7 
    #默认 mysql-connector-java 会再次 安装 jdk6 ,一定要卸载 jdk 6 否则未来启动会报错  【Caused by: java.lang.UnsupportedClassVersionError: com/mysql/jdbc/Driver : Unsupported major.minor version 51.0】 
    yum list  jdk #   jdk.x86_64 2000:1.6.0_31-fcs
    yum  remove  jdk  #删除jdk6
    
    yum install nc
    yum install  telnet
    
    

    材料准备好了 之后 可以大干一场了
    把你 下载的 cdh 相关的 rpm 包 放在一个目录里,然后使用 yum localinstall *.rpm 安装

     yum  localinstall *.rpm 
    

    mysql 安装在cdh 的 master 角色 机器上,创建 scm 库稍微出现了点问题 ,不大 ,主要 权限 密码等,mysql 主要操作是创建用户scm 和 一些数据库 scm hive hue,并把操作权给scm用户

    /usr/bin/mysqladmin -u root password 'mypwd'
    
    mysql -u root -p  mypwd
    create database hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
    create database amon DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
    create database hue DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
    create database monitor DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
    create database oozie DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
    create database scm DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
    
    GRANT ALL PRIVILEGES ON *.* TO 'scm'@'cdhmaster' IDENTIFIED BY 'scm' WITH GRANT OPTION;
    FLUSH PRIVILEGES;   ##  注意 主机名  最好使用 主机名 不要使用  localhost,否则  集群节点 连接时候会出问题
    

    解压 cloudera-manager-centos7-cm5.14.3_x86_64.tar.gz
    tar -zxvf cloudera-manager-centos7-cm5.14.3_x86_64.tar.gz -C /usr/local/app/
    解压后会有两个生成目录 ,一个 clouderamanager 一个 cmf ,cmf 里放着 cdh 的主要运行文件
    chown -R cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo/

    然后 要修改 master 角色上的 db 配置文件

    注意把最后一行 com.cloudera.cmf.db.setupType=INIT 注释掉 !!!!

    否则 cdh 百分之一万启动不来 ,会报错的!!!!

    cd /etc/cloudera-scm-server
    vi  db.properties
    
    com.cloudera.cmf.db.type=mysql
    com.cloudera.cmf.db.host=master
    com.cloudera.cmf.db.name=scm
    com.cloudera.cmf.db.user=scm
    com.cloudera.cmf.db.setupType=EXTERNAL
    com.cloudera.cmf.db.password=scm
    
    # 注意把最后一行 com.cloudera.cmf.db.setupType=INIT 注释掉
    

    我参考的文章如下
    https://www.jianshu.com/p/90c209e6c22e
    https://www.jianshu.com/p/a5086ae9090f
    https://zhuanlan.zhihu.com/p/25847794
    这篇写的 很全面

    有几个安装 cdh rpm 创建的一些文件目录 默认的有几个

    /etc/cloudera-scm-server/db.
    /var/log/cloudera-scm-server/cloudera-scm-server.log ##查看 输出 日志

    剩下的 agent 角色
    Step2:配置cloudera agent
    修改/etc/cloudera-scm-agent/config.ini文件的以下选项:
    server_host=master #这样 master 角色 才可以 监听到agent的心跳
    server_port=7182 #若改端口被占用,改为其它端口

    在 /opt/cloudera/parcel-repo 下 放置以下文件

    image.png

    默认端口 http:localhost:7180,首次启动 需要等三分钟 ,时间稍微有点长,没耐心的还以为安装失败了
    查看确定输出 日志 并在另一个窗口 启动

    tail -f  /var/log/cloudera-scm-server/cloudera-scm-server.log
    tail  -f   /var/log/cloudera-scm-agent/cloudera-scm-agent.log
    service mysql  start
    service cloudera-scm-server start
    service cloudera-scm-agent start  
    

    如果访问不了 也可能是防火墙的问题

    
    CentOS7中若使用同样的命令会报错,
    
    stop  iptables.service
    Failed to stop iptables.service: Unit iptables.service not loaded.
    
    需要这样
    firewall-cmd --state #查看默认防火墙状态(关闭后显示notrunning,开启后显示running)
    systemctl stop firewalld.service #停止firewall
    systemctl disable firewalld.service #禁止firewall开机启动
    init 6  #重启虚拟机,然后再输入第一条命令查看防火墙状态
    
    //临时关闭
    systemctl stop firewalld
    //禁止开机启动
    systemctl disable firewalld
    Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
    Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
    
    #当然,如果安装了iptables-service,也可以使用下面的命令,
    
    yum install -y iptables-services
    //关闭防火墙
    service iptables stop
    Redirecting to /bin/systemctl stop  iptables.service
    //检查防火墙状态
    service iptables status
    Redirecting to /bin/systemctl status  iptables.service
    鈼iptables.service - IPv4 firewall with iptables
       Loaded: loaded (/usr/lib/systemd/system/iptables.service; disabled; vendor preset: disabled)
       Active: inactive (dead)
    

    然后 登录 master 的 web ui

    http://cdhmaster:7180
    

    注意:如果创建失败,根据报错日志,可能需删去数据库与用户,进行排错。相关命令如下:

    进入 cdh cloudera manager 登录界面,默认账号密码都是 admin

    首次就是安装 cdh,这个步骤可以参考
    https://www.cnblogs.com/mycodingworld/p/cdh_installation_instructions.html
    https://blog.csdn.net/a921122/article/details/51939692

    首次启动 时出现 问题 # Starting cloudera-scm-server: * Couldn't start cloudera-scm-server的解决办法(图文详解)
    参考这个 其实 看日志就知道就是 openjdk 的事儿

    http://www.cnblogs.com/zlslch/p/7077979.html
    基本就这些 祝福大家安装顺利

    碰到这个问题 单机部署cloudera 安装失败。 无法接收 Agent 发出的检测信号

    先单独开一个 Terminal 监测 agent的日志
    tail -f /var/log/cloudera-scm-server/cloudera-scm-server.log

    保证 agent 是在运行的状态中
    一般就是修改 /etc/cloudera-scm-agent/config.ini
    中的 server_ip 和 主机名要一致,
    如:server_host=172.16.1.249
    不要是 localhost
    另外 修改 主机名配置文件 /etc/hosts

    ##::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
    # 101.161.82.17  master  master
    #127.0.0.1  master   master
    #127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
    

    运行安装过程要从头再开始来一遍,不行就重启 server 和agent
    另外还要安装 ntp ,并启动 ntp 服务
    yum –y install ntp
    service ntpd restart

    https://www.google.com.hk/search?newwindow=1&safe=strict&hl=zh-CN&source=hp&ei=tg70WrbIFcO_0wLYwZCIBA&q=hostname+master+differs+from+the+canonical+name+localhost&oq=hostname+master+differs+from+the+canonical+name+localhost&gs_l=psy-ab.3...4445.4445.0.4821.1.1.0.0.0.0.250.250.2-1.1.0....0...1c.2.64.psy-ab..0.0.0....0.e-Tt_sqSiG4

    有个一个 很关键 ,parcel 文件 1.8G ,如果本地已经 下载过了 ,就直接使用本地路径的文件,默认
    cloudera的 parcel 路径是 这个/opt/cloudera/parcel-repo ,倒是 我的不是默认的 /usr/local/app/cloudera/parcel-repo,否则 错误 ,则会下载网上的,老慢了

    image.png

    chown cloudera-scm.cloudera-scm /opt -R
    chown cloudera-scm.cloudera-scm /var/log/cloudera-scm-agent -R

    重要的!!!! 一定要创建 /opt/cloudera/parcel-repo 目录 ,并把 parcel 文件相关的,都放这里,
    其他位置 真心不好使。,另外建议 吧CDH-5.14.2-1.cdh5.14.2.p0.3-el7.parcel cp 一下 为 CDH-5.14.2-1.cdh5.14.2.p0.3.parcel ,

    配置 cloudera-manager的仓库文件
    https://www.cloudera.com/documentation/enterprise/release-notes/topics/cm_vd.html

    [cloudera-manager]
    # Packages for Cloudera Manager, Version 5, on RedHat or CentOS 7 x86_64              
    name=Cloudera Manager
    baseurl=https://archive.cloudera.com/cm5/redhat/7/x86_64/cm/5.14.3/
    gpgkey =https://archive.cloudera.com/cm5/redhat/7/x86_64/cm/RPM-GPG-KEY-cloudera    
    gpgcheck = 1
    
    

    cd /etc/yum.repos.d/
    vi cloudera-manager.repo


    image.png
    image.png

    cloudera 安装失败了,重新不能选主机
    这个 问题 ,千万不要听网上的瞎逼逼 卸载 cdh 重新 安装 ,最简单的 是在cm 控制面板 删除原来的集群,再走一遍安装 就可以了


    image.png

    另外我最后一台 扩容的机器之前 安装过 cdh ,需要先把之前的 chd 的rpm 都卸载掉 ,建议吧cloudera tar.gz的包重新解压
    还有就是 ,虽然 rpm删除掉了,但是之前的文件目录没有 清掉,尤其要注意
    代理节点启动报错(主机状况不良):
    错误信息:Error, CM server guid updated, expected df16790a-2e44-44ec-9db2-8731cc635c61, received b6fecabc-8e32-46be-8a43-5f261064b2c7
    解决方法:删除/var/lib/cloudera-scm-agent下cm_guid文件
    另外 就是
    扩容slave 机器
    Step2:配置cloudera agent
    修改/etc/cloudera-scm-agent/config.ini文件的以下选项:
    server_host=master
    server_port=7182 #若改端口被占用,改为其它端口

    如果主机 发现添加有问题 要及时删掉,选择 英文 的 remove 才可以真的 删除 ,重新运行 安装向导,

    image.png

    扩容的机器要给他分配角色 ,其实就是 要安装哪些内容 组件,有时候 在分配角色时候 并不能正常 分配 ,不怕,所有执行后 然后在 单独分配角色 ,刚分配的角色组件是没有启动的,然后可以单独 一个个 启动,出现 的问题 一个是 java_home
    还有之前的 文件目录有权限问题, rm -rf /data/
    chmod -R root:root /data*
    启动如果出现问题, 看完整的 角色日志 ,可以透过日志,查看到 错误的信息,扩容后 建议重启 cdh ,在管理界面就可以 ,一般三四分钟就可以了。

    image.png image.png

    常见问题 安装
    容易出现的问题就是 ,

    https://blog.csdn.net/qq_31215163/article/details/78214744?locationNum=8&fps=1
    https://blog.csdn.net/ZhouyuanLinli/article/details/78013193

    HDFS-副本不足的块
    副本不足的块 ( Cluster 1 HDFS ) 2016年11月29日, 下午4点02 CST
    测试 HDFS 是否具有过多副本不足块。
    不良 : 群集中有 707 个 副本不足的块 块。群集中共有 710 个块。百分比 副本不足的块: 99.58%。 临界阈值:40.00%。
    操作
    为此服务更改“副本不足的块监控阈值”。
    建议
    这是 HDFS 服务级运行状况测试,用于检查副本不足的块数是否未超过群集块总数的某一百分比。
    该运行状况测试失败可能表示 DataNode 丢失。使用 HDFS fsck 命令可确定哪些文件含有副本不足的块。
    可使用 副本不足的块监控阈值 HDFS 服务范围内的监控设置配置该测试。修改 复制因子 就可以了

    https://blog.csdn.net/qq_31215163/article/details/78214744?locationNum=8&fps=1
    https://blog.csdn.net/zzq900503/article/details/53393721
    https://blog.csdn.net/lhy66/article/details/44588143

    image.png

    http://www.aboutyun.com/thread-9087-1-1.html

    https://stackoverflow.com/questions/8579105/cloudera-manager-fails-to-add-hosts?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa

    CentOS7离线安装Cloudera Manager 5.14.1 !!!!!
    https://blog.csdn.net/chenhai201/article/details/78856007

    https://www.jianshu.com/p/57179e03795f

    mysql-connector-java 这个一定要 加到classpath 建议这样安装

    yum install mysql-connector-java
    最后 HBASE SQOOP2 OOZIE HIVE ZOOKEEPER HUE YARN HDFS hadoop spark 都顺利安装了

    image.png image.png image.png
    image.png image.png image.png image.png image.png image.png image.png image.png image.png image.png
    image.png image.png image.png

    参考 https://blog.csdn.net/freedomboy319/article/details/44804721
    https://zhuanlan.zhihu.com/p/25847794

    cloudera manager install zookeeper Error found before invoking supervisord:'getpwnam(): name not found: zookeeper'

    创建 zookeeper 用户就可以了,类似这个


    image.png

    Huyu 7/3 18:30

    Web

    Kukai 7/4 am 10:00

    Fenghuang 7/4 pm 2:30

    Kuaiji 6:30

    awk '{cmd="pip3 install " $1;system(cmd)}' ./piplist

    jdbc4.MySQLSyntaxErrorException: Table 'oozie.VALIDATE_CONN' doesn't exist

    CM界面重启Load Balancer,会生成新的目录/opt/cm-5.14.1/run/cloudera-scm-agent/process/114-hue-HUE_LOAD_BALANCER/。提示同样的错误。

    原因:服务器环境没有预先安装httpd,mod_ssl服务

    解决方法:

    yum -y install httpd

    yum -y install mod_ssl

    Thu

    Chexiao Am 10:30

    Yunxiao pm 2:30

    org.apache.hadoop.service.ServiceStateException: org.fusesource.leveldbjni.internal.NativeDB$DBException: IO error: /var/lib/hadoop-yarn/yarn-nm-recovery/yarn-nm-state/LOCK: 权限不够

    <dd data-bind="text: params().path">/var/log/hadoop-yarn/hadoop-cmf-yarn-RESOURCEMANAGER-cdhcode.log.out</dd>

    <dd data-bind="text: params().path">ativeDB$DBException: IO error: /var/lib/hadoop-yarn/yarn-nm-recovery/yarn-nm-state/LOCK: 权限不够</dd>

    <dd data-bind="text: params().path">该用户是否有操作上面目录的权限呢? 用chmod -R 755 /var/lib/hadoop-yarn/ 赋予目录权限</dd>

    得知这个错误是因为没有配置/etc/resolv.conf。

    如何让CDH 使用指定JDK

    1.自定义安装JDK,并配置环境变量。
    2.在安装Cloudera Manager时,必须有指定的JDK,一般版本是在http://archive.cloudera.com/cm5/redhat/7/x86_64/cm/5.10.1/RPMS/x86_64/目录下。
    3.在图形化界面安装CDH时,不选择安装JDK。
    4.安装成功之后,修改所有主机配置中的Java Home Directory。【可以修改Cloudera Manager之外的所有节点JDK版本】

    5.Cloudera Manager节点JDK,修改/etc/default/cloudera-scm-agent /etc/default/cloudera-scm-server 文件,添加Java Home Directory,

    export JAVA_HOME=/opt/jdk1.8.0_111

    grant all on scm.*to ‘hive’@‘localhost' with MAX_USER_CONNECTIONS 4 MAX_CONNECTIONS_PER_HOUR 1000;

    select concat('kill ' ,id,';') kill_process from information_schema.

    processlist ;

    Fri

    Yixin pm 2:00 7/6

    注意查看日志爆出的真实错误

    /etc/resolv.conf

    Nameserver 8.8.8.8

    Service network restart

    /etc/sysconfig/network-scripts/

    <pre style="color: rgb(0, 0, 0); font-family: PingFangSC-Regular, sans-serif; font-size: 14px; font-variant-ligatures: normal; word-wrap: break-word; white-space: pre-wrap;">/run/cloudera-scm-agent/process/</pre>

    <pre>还有一种方法就是改变环境变量LANG #export LANG="en_US.UTF-8”</pre>

    <pre>

    | 进入到hive_home然后执行下面命令
    /opt/cloudera/parcels/CDH-5.14.2-1.cdh5.14.2.p0.3/lib/hive/bin

    bin/schematool -dbType mysql -initSchema |

    </pre>

    <pre style="color: rgb(82, 82, 82); font-family: PingFangSC-Regular, sans-serif; font-size: 14px;">

    启动hive时出现:Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient

    <article>

    网上汇总方案:

    1.hive的版本过高导致的问题,所以其他伙伴有类似错误请考虑版本

    2.需要hive元数据库初始化,执行 schematool -dbType mysql -initSchema

    3.HIVE_HOME/lib 下的derby-10.11.1.1.jar问题,,把derby-10.11.1.1.jar 换成derby-10.10.2.0.jar问题成功解决

    我的问题是hive-site.xml里面的hive.metastore.uris的value写错了,更改回来就解决了

    解决方案:

    原因:因为没有正常启动Hive 的 Metastore Server服务进程。
    解决方法:启动Hive 的 Metastore Server服务进程,执行如下命令:

    </article>

    </pre>

    <pre style="color: rgb(82, 82, 82); font-family: PingFangSC-Regular, sans-serif; font-size: 14px;">./hive --service metastore &</pre>

    <pre>

    Cloudera 安装parcel hang的问题

    可能是 openjdk 的原因

    为主机指定 oricle 的jdk 1.8

    吧 parcel-repo 的文件权限 都改成777

    Cdh 指定jdk 版本

    在 ui 选择主机 配置

    java_home_directory ,restart

    CDH5之Exhausted available authentication methods

    service sshd restart

    javax.jdo.JDODataStoreException: Required table missing : "VERSION" in Catalog "" Schema "". DataNucleus requires this table to perform its persistence operations. Either your MetaData is incorrect, or you need to enable “datanucleus.schema.autoCreateTables"

    一修改 配置文件

    二 可能是 没有变成 mysql

    https://blog.csdn.net/qq_26479655/article/details/52252335

    lib 目录放入 myql 的驱动包

    <property>
    <name>hive.metastore.local</name>
    <value>true</value>
    </property>
    <property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://localhost:3306/hive?characterEncoding=UTF-8</value>
    </property>
    <property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.jdbc.Driver</value>
    </property>
    <property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>scm</value>
    </property>
    <property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>scm</value>
    </property>

    show OPEN TABLES where In_use > 0; 这个语句记录当前锁表状态

    查看表的状态
    SHOW STATUS LIKE 'table%';
    SHOW STATUS LIKE 'innodb_row_lock%';

    Hive 元数据“waiting for table metadata lock”

    http://blog.sina.com.cn/s/blog_4112736d0101fhhx.html

    Hive meta alter 造成 mysql 被锁表

    1.首先关闭所有的ssh shell

    1. 杀掉 mysql-connect-java 的进程

    2. 重启mysql

    3. 删掉 mysql 的hive数据库

    4. show full processlist;

    5. <pre style="color: rgb(82, 82, 82); font-family: PingFangSC-Regular, sans-serif;">./hive --service metastore &</pre>

      <pre style="color: rgb(82, 82, 82); font-family: PingFangSC-Regular, sans-serif;">5. schematool -dbType mysql -initSchema</pre>

    </pre>

    相关文章

      网友评论

        本文标题:centos7 安装 CDH 5.14.3 cloudera

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