首页 > 解决方案 > 无法通过 Hue UI 创建文件/目录(Hue 和 datanode 之间的通信问题)

问题描述

我从 GitHub 克隆了gethue/huerepo,构建它并运行服务器。

对于 Hive 和 Hadoop,我使用big-data-europe/docker-hive'sdocker 容器。

从 Hue UI(记录为 hive)我可以在 HDFS 用户/hive 中创建新目录(通过 Hue filebrouser)。

但是当我尝试创建或加载文件时,我收到错误:

HTTPConnectionPool(host='76ead25de711', port=50075) <...> Failed to establish a new connection: [Errno -2] Name or service not known

我假设我可以创建一个目录,因为 Hue 与 namenode 通信并且它工作正常。但是当它开始更改文件时,Hue 试图到达一个数据节点并遵循这个 docker 的东西:76ead25de711。而不是我可以在 Namenode 信息页面上看到的 192.168.64.1:

Namenode 信息页面截图

这是Hive+Hadoop的 docker-compose.yml :

version: "3"

services:
  namenode:
    image: bde2020/hadoop-namenode:2.0.0-hadoop2.7.4-java8
    volumes:
      - namenode:/hadoop/dfs/name
    environment:
      - CLUSTER_NAME=test
    env_file:
      - ./hadoop-hive.env
    ports:
      - "50070:50070"
      - "8020:8020"
  datanode:
    image: bde2020/hadoop-datanode:2.0.0-hadoop2.7.4-java8
    volumes:
      - datanode:/hadoop/dfs/data
    env_file:
      - ./hadoop-hive.env
    environment:
      SERVICE_PRECONDITION: "namenode:50070"
    ports:
      - "50075:50075"
  hive-server:
    image: bde2020/hive:2.3.2-postgresql-metastore
    env_file:
      - ./hadoop-hive.env
    environment:
      HIVE_CORE_CONF_javax_jdo_option_ConnectionURL: "jdbc:postgresql://hive-metastore/metastore"
      SERVICE_PRECONDITION: "hive-metastore:9083"
    ports:
      - "10000:10000"
  hive-metastore:
    image: bde2020/hive:2.3.2-postgresql-metastore
    env_file:
      - ./hadoop-hive.env
    command: /opt/hive/bin/hive --service metastore
    environment:
      SERVICE_PRECONDITION: "namenode:50070 datanode:50075 hive-metastore-postgresql:5432"
    ports:
      - "9083:9083"
  hive-metastore-postgresql:
    image: bde2020/hive-metastore-postgresql:2.3.0
  presto-coordinator:
    image: shawnzhu/prestodb:0.181
    ports:
      - "2000:2000"

volumes:
  namenode:
  datanode:

hadoop-hive.env

HIVE_SITE_CONF_javax_jdo_option_ConnectionURL=jdbc:postgresql://hive-metastore-postgresql/metastore
HIVE_SITE_CONF_javax_jdo_option_ConnectionDriverName=org.postgresql.Driver
HIVE_SITE_CONF_javax_jdo_option_ConnectionUserName=hive
HIVE_SITE_CONF_javax_jdo_option_ConnectionPassword=hive
HIVE_SITE_CONF_datanucleus_autoCreateSchema=false
HIVE_SITE_CONF_hive_metastore_uris=thrift://hive-metastore:9083
HDFS_CONF_dfs_namenode_datanode_registration_ip___hostname___check=true

CORE_CONF_fs_defaultFS=hdfs://10.0.213.224:8020
CORE_CONF_hadoop_http_staticuser_user=root
CORE_CONF_hadoop_proxyuser_hue_hosts=*
CORE_CONF_hadoop_proxyuser_hue_groups=*

HDFS_CONF_dfs_webhdfs_enabled=true
HDFS_CONF_dfs_permissions_enabled=false

HDFS_CONF_dfs_safemode_threshold_pct=0

HTTPFS_CONF_proxyuser_hue_hosts=*
HTTPFS_CONF_proxyuser_hue_groups=*

色调配置的一部分:

[[hdfs_clusters]]

[[[default]]]
  fs_defaultfs=hdfs://localhost:8020

  # NameNode logical name.
  logical_name=namenode

  webhdfs_url=http://localhost:50070/webhdfs/v1

您对如何将 Hue 指向数据节点有任何建议吗?

标签: hadoophivehue

解决方案


推荐阅读