华为云用户手册

  • 处理步骤 问题1: 重新kinit一个用户并修改相应的配置参数。 问题2: 查看hadoop相关的配置项是否正确,查看spark的conf目录下的core-site.xml,hdfs-site.xml,yarn-site.xml,mapred-site.xml等配置文件是否存在问题。 问题3: 重新复制一个user.keytab,例如: cp user.keytab user2.keytab spark-submit --master yarn --files user.keytab --keytab user2.keytab ......
  • 处理步骤 登录 FusionInsight Manager检查是否存在网络故障、时钟跳变或Hue服务相关的告警,若存在问题则联系管理员进行处理,重试打开Hue页面确认是否正常。 是,处理结束。 否,执行2。 获取当前工作的Httpd服务器地址,为打开Hue页面URL中主机地址,即如果打开Hue的Url为“https://192.168.0.1:21201”,Httpd服务地址则为“192.168.0.1”。 登录Httpd服务器,排查“/var/log/Bigdata/httpd/error_log”中的日志。 确认“error_log”中是否存在“AH01102: error reading status line from remote server”和“AH00898: Error reading from remote server”字样的报错(可以多试几次打开Hue页面以确认情况)。 是,通过FusionInsight Manager重启Hue服务,执行5。 否,执行6。 重启Hue服务后,再次打开Hue页面。 是,处理结束。 否,执行6。 联系运维。
  • 解决办法 属于应用侧问题,解决办法有多种。只要保证表所指定存储格式和被导入数据格式是一致的,可以根据实际情况采用合适方法。 方法1: 可以使用具有Hive表操作权限的用户在建表时指定存储格式,例如: CREATE TABLE IF NOT EXISTS employees_info(name STRING,age INT) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' STORED AS TEXTFILE; 指定被导入数据格式为TEXTFILE。 方法2: 被导入数据存储格式不能为TEXTFILE,而应为RCFile。
  • 使用admin用户访问组件的WebUI界面报错或部分功能不可用 访问HDFS、Hue、Yarn、Flink、HetuEngine等组件的WebUI的用户不具备对应组件的管理权限,导致界面报错或部分功能不可用,例如: 使用当前用户登录Flink WebUI后,部分内容不能正常显示,且没有权限创建应用、创建集群连接、创建数据连接等: 使用当前用户访问HDFS WebUI报错:Failed to retrieve data from /jmx?qry=java.lang:type=Memory, cause: Forbidden 使用当前用户访问Yarn WebUI界面,无法查看作业信息: 使用当前用户登录Hue WebUI后,在界面左侧导航栏单击 ,选择“Workflow”后报错: 建议使用新建的具有对于组件管理权限的用户访问,此时可以参考创建用户章节,创建一个业务用户,例如创建一个具有HDFS管理权限的用户登录并访问HDFS WebUI界面。 父主题: 访问 MRS 组件Web UI界面常见异常问题
  • 原因分析 在JobHistory界面中跳转到某个应用的WebUI页面时,JobHistory需要回放该应用的Event log,若应用包含的事件日志较大,则回放时间较长,浏览器需要较长时间的等待。 当前浏览器访问JobHistory WebUI页面需经过httpd代理,代理的超时时间是10分钟,因此,如果JobHistory在10分钟内无法完成Event log的解析并返回,httpd会主动向浏览器返回Proxy Error信息。
  • 解决办法 Hue配置过期,重启Hue服务即可。 在MRS 2.0.1及之后版本,单Master节点的集群Hue服务需要手动修改配置。 登录Master节点。 执行hostname -i获取本机IP。 执行如下命令获取“HUE_FLOAT_IP”的地址: grep "HUE_FLOAT_IP" ${BIGDATA_HOME}/MRS_Current/1_*/etc*/ENV_VARS, 其中MRS以实际文件名为准。 比较本机IP和“HUE_FLOAT_IP”的值是否相同,若不相同,请修改“HUE_FLOAT_IP”的值为本机IP。 重启Hue服务。
  • 原因分析 查看HMaster日志(/var/log/Bigdata/hbase/hm/hbase-omm-xxx.log)显示,hbase.regionserver.global.memstore.size + hfile.block.cache.size总和大于0.8导致启动不成功,因此需要调整参数配置值总和低于0.8。 查看HMaster和RegionServer的out日志(/var/log/Bigdata/hbase/hm/hbase-omm-xxx.out/var/log/Bigdata/hbase/rs/hbase-omm-xxx.out),提示Unrecognized VM option。 Unrecognized VM option Error: Could not create the Java Virtual Machine.Error: A fatal exception has occurred. Program will exit. 检查GC_OPTS相关参数存在多余空格,如-D sun.rmi.dgc.server.gcInterval=0x7FFFFFFFFFFFFFE。
  • 问题现象 安全集群中,HiveServer服务正常的情况下,通过jdbc接口连接HiveServer执行sql时报出ZooKeeper认证异常"The ZooKeeper client is AuthFailed",如下: 14/05/19 10:52:00 WARN utils.HAClientUtilDummyWatcher: The ZooKeeper client is AuthFailed 14/05/19 10:52:00 INFO utils.HiveHAClientUtil: Exception thrown while reading data from znode.The possible reason may be connectionless. This is recoverable. Retrying.. 14/05/19 10:52:16 WARN utils.HAClientUtilDummyWatcher: The ZooKeeper client is AuthFailed 14/05/19 10:52:32 WARN utils.HAClientUtilDummyWatcher: The ZooKeeper client is AuthFailed 14/05/19 10:52:32 ERROR st.BasicTestCase: Exception: Could not establish connection to active hiveserver java.sql.SQLException: Could not establish connection to active hiveserver 或者报出无法读取"Hiveserver2 configs from ZooKeeper",如下:
  • 可能原因 客户端连接HiveServer时,HiveServer的地址是从ZooKeeper中自动获取,当ZooKeeper连接认证异常时,无法从ZooKeeper中获取正确的HiveServer地址。 在连接zookeeper认证时,需要客户端传入krb5.conf,principal,keytab等相关信息。认证失败有如下几种: user.keytab路径写错。 user.principal写错。 集群做过切换域名操作但客户端拼接url时使用旧的principal。 有防火墙相关设置,导致客户端本身无法通过kerberos认证,Kerberos需要开放的端口有21730(TCP)、21731(TCP/UDP)、21732(TCP/UDP)。
  • 解决方案 确保用户可以正常读取客户端节点相关路径下的user.keytab文件。 确保用户的user.principal与指定的keytab文件对应。 可通过klist -kt keytabpath/user.keytab查看。 如果集群有做过切换域名操作,需要保证url中使用的principal字段是新域名。 如默认为hive/hadoop.hadoop.com@HADOOP.COM,当集群有切换域名的操作时,该字段需要进行相关修改。如域名为abc.com时,则此处应填写hive/hadoop.abc.com@ABC.COM。 确保可以正常的认证连接HiveServer。 在客户端执行以下命令 source 客户端安装目录/bigdata_env kinit username 然后再使用客户端执行beeline,确保可以正常运行。
  • 解决方案 Hive对load data inpath命令有如下权限要求,请对照下述要求是否满足: 文件的owner需要为执行命令的用户。 当前用户需要对该文件有读、写权限。 当前用户需要对该文件的目录有执行权限。 由于load操作会将该文件移动到表对应的目录中,所以要求当前用户需要对表的对应目录有写权限。 要求文件的格式与表指定的存储格式相同。如创建表时指定stored as rcfile,但是文件格式为txt,则不符合要求。 文件必须是HDFS上的文件,不可以用file://的形式指定本地文件系统上的文件。 文件名不能以下横线(_)或点(.)开头,以这些开头的文件会被忽略。 如下所示,如果用户test_hive load数据,正确的权限如下: [root@192-168-1-18 duan]# hdfs dfs -ls /tmp/input216/03/21 14:45:07 INFO hdfs.PeerCache: SocketCache disabled.Found 1 items-rw-r--r-- 3 test_hive hive 6 2016-03-21 14:44 /tmp/input2/input.txt
  • 处理步骤 登录Master节点。 执行hostname -i获取本机IP。 执行如下命令获取“HUE_FLOAT_IP”的地址: grep "HUE_FLOAT_IP" ${BIGDATA_HOME}/MRS_Current/1_*/etc*/ENV_VARS,其中MRS以实际文件名为准。 比较本机IP和“HUE_FLOAT_IP”的值是否相同,若不相同,请修改“HUE_FLOAT_IP”的值为本机IP。 重启Hue服务。
  • 问题背景与现象 使用Phoenix创建HBase表后,使用命令向索引表中加载数据报错: MRS 2.x及之前版本:Mutable secondary indexes must have the hbase.regionserver.wal.codec property set to org.apache.hadoop.hbase.regionserver.wal.IndexedWALEditCodec in the hbase-sites.xml of every region server. tableName=MY_INDEX (state=42Y88,code=1029) MRS 3.x及之后版本:Exception in thread "main" java.io.IOException: Retry attempted 10 times without completing, bailing out
  • 处理步骤 使用root用户登录安装客户端的节点,切换到客户端安装目录,查看是否安装了HBase客户端。 是,执行2。 否,下载并安装HBase客户端,详细操作请参考安装客户端章节。 执行以下命令配置环境变量。 source bigdata_env 如果当前集群已启用Kerberos认证,执行以下命令认证当前用户,当前用户需要具有创建HBase表的权限。如果当前集群未启用Kerberos认证,则无需执行此命令。 kinit MRS集群用户 执行HBase组件的客户端命令。 hbase shell
  • 问题现象 在Manager页面上查看到WebHCat实例的健康状态为“故障”,并上报“ALM-12007 进程故障”告警,该告警的服务名称为“Hive”,实例名称为“WebHCat”。且重启Hive服务报错。 查看WebCat实例的日志“/var/log/Bigdata/hive/webhcat/webhcat.log”报错“Service not found in Kerberos database”和“Address already in use”。
  • 原因分析 登录Master2节点,查看“/var/log/Bigdata/hive/hiveserver/hive.log”日志,发现HiveServer一直加载“/opt/Bigdata/*/*_HiveServer/etc/hive-site.xml”;查看HiveServer退出时的“/var/log/Bigdata/hive/hiveserver/hiveserver.out”日志,发现解析“mapred-default.xml”文件异常。
  • 解决办法 使用以下命令修改表的“kafka_skip_broken_messages”属性: # ALTER test.user_log MODIFY SETTINGS kafka_skip_broken_messages=10000 10000可以根据数据中脏数据的比例进行调整。 kafka_skip_broken_messages:Kafka消息解析器对每个块的架构不兼容消息的容忍度,默认值:0。 例如:kafka_skip_broken_messages = N,则引擎会跳过N条无法解析的Kafka消息。
  • 原因分析 Kafka出现消息堆积,说明ClickHouse消费数据时出现异常,需要看一下ClickHouse的日志。 登录MRS集群,进入ClickHouse实例所在的节点,查看“/var/log/Bigdata/clickhouse”目录下的“clickhouse-server.log”日志文件,发现以下报错: 进入到其他ClickHouse节点也发现了同样的报错日志,由此可知Kafka消息堆积是因为ClickHouse解析Kafka数据时出现异常。
  • 处理步骤 登录Master2节点,使用以下命令查找“mapred-default.xml”所在路径: find /opt/ -name 'mapred-default.xml' 查询到该配置文件在“/opt/Bigdata/*/*_WebHCat/etc/”目录下面,且该文件内容为空。 登录到Master1节点,将“/opt/Bigdata/*/*_WebHCat/etc/mapred-default.xml”文件拷贝到Master2节点,并修改文件的属组为“omm:wheel”。 登录Manager,重启异常的HiveServer和WebHCat实例。
  • 用户问题 在Hive客户端查询JSON数据,JSON表中有破损数据导致查询异常: 在Hive客户端上使用默认开源的JSON序列化建表语句创建表: create external table if not exists test ( name string ) row format serde 'org.apache.hive.hcatalog.data.JsonSerDe' stored as textfile location 'hdfs://hacluster/user/hive/warehouse/database/table/jsondata'; 查询表出现异常。 该章节内容适用于MRS 1.9.2之后版本。
  • 处理步骤 下载json-serde-1.3.8-jar-with-dependencies.jar到本地,并将该Jar上传到所有的HiveServer所在节点。 以客户端安装用户,登录1上传了Jar包并且安装了Hive和HDFS客户端的节点。 执行以下命令认证用户。 cd 客户端安装目录 source bigdata_env kinit 具有Hive管理员权限的用户(未开启Kerberos认证的集群跳过此操作) 执行以下命令在HDFS上创建Jar包存放目录。 hdfs dfs -mkdir Jar包存放在hdfs中的路径 执行以下命令将2的Jar上传至HDFS中。 hdfs dfs -put Jar包存放路径 Jar包存放在hdfs中的路径 执行以下命令让Hive在执行命令行任务时加载指定Jar包。 beeline set role admin;(未开启Kerberos认证的集群跳过此操作) add jar Jar包存放在hdfs中的路径; 执行以下命令重新创建表: create external table if not exists test ( name string ) row format serde 'org.openx.data.jsonserde.JsonSerDe' stored as textfile location 'hdfs://hacluster/user/hive/warehouse/database/table/jsondata'; 执行以下命令修改表属性忽略破损的JSON数据: ALTER TABLE test SET SERDEPROPERTIES( "ignore.malformed.json" = "true"); 设置该属性后,查询表时若表中有破损的JSON数据默认显示为“NULL”。 执行以下命令查询表数据: select * from test; 数据查询成功则表示已忽略破损的JSON数据,其中,破损的JSON数据显示为“NULL”:
  • 原因分析 查看NameNode日志“/var/log/Bigdata/hdfs/nn/hadoop-omm-namenode-主机名.log”,发现该文件一直在被尝试写,直到最终失败。 2015-07-13 10:05:07,847 | WARN | org.apache.hadoop.hdfs.server.namenode.LeaseManager$Monitor@36fea922 | DIR* NameSystem.internalReleaseLease: Failed to release lease for file /hive/order/OS_ORDER._8.txt._COPYING_. Committed blocks are waiting to be minimally replicated. Try again later. | FSNamesystem.java:39362015-07-13 10:05:07,847 | ERROR | org.apache.hadoop.hdfs.server.namenode.LeaseManager$Monitor@36fea922 | Cannot release the path /hive/order/OS_ORDER._8.txt._COPYING_ in the lease [Lease. Holder: DFSClient_NONMAPREDUCE_-1872896146_1, pendingcreates: 1] | LeaseManager.java:459org.apache.hadoop.hdfs.protocol.AlreadyBeingCreatedException: DIR* NameSystem.internalReleaseLease: Failed to release lease for file /hive/order/OS_ORDER._8.txt._COPYING_. Committed blocks are waiting to be minimally replicated. Try again later.at FSNamesystem.internalReleaseLease(FSNamesystem.java:3937) 根因分析:被上传的文件损坏,因此会上传失败。 验证办法:cp或者scp被拷贝的文件,也会失败,确认文件本身已损坏。
  • 问题现象 集群扩容完成之后,新节点的HRegionserver启动失败,一直处于异常状态,无法正常提供服务。 登录故障RegionServer所在节点,jps查看RegionServer进程没有启动,在Manager上手动重启故障的RegionServer实例失败,查看对应RegionServer节点/var/log/Bigdata/hbase/rs/hbase-omm-regionserver-node-ana-coreqRvt.log日志,有报错信息“ClassNotFound:org.apache.hadoop.hbase.regionserver.wal.IndexedWALEditCodec”。 Manager上,可以看到RegionServer有如下自定义配置:
  • 处理步骤 登录到正常的RegionServer节点,执行以下命令。 grep -Rn ‘org.apache.hadoop.hbase.regionserver.wal.IndexedWALEditCodec’ /opt/Bigdata/MRS_Current/1_16_RegionServer/ 查询出/opt/Bigdata/MRS_Current/1_16_RegionServer/install/hbase/lib目录下面有两个Phoenix包(phoenix-4.14.1-server.jar和phoenix-core-4.14.1.jar)包含这个类。 使用scp命令将上述两个包拷贝到异常RegionServer节点上相同目录下,重启故障的RegionServer,恢复正常。
  • 问题现象 使用Spark提交作业后,长期卡住不动。反复运行作业后报错,内容如下: Exception in thread "main" org.apache.spark.SparkException: Job aborted due to stage failure: Aborting TaskSet 3.0 because task 0 (partition 0) cannot run anywhere due to node and executor blacklist. Blacklisting behavior can be configured via spark.blacklist.*.
  • 响应样例 { "dedicated_cluster": [ { "project_id": "056f7ec7e100d3d32f81c014630b5648", "availability_zone": "kvmxen.dc1", "host_total": 1, "host_type": "dec_IOoptimizedS2", "service_type": "ecs", "host_properties": { "cpu_cores": 216, "memory_mb": 264192, "cpu_speed": "2.5" }, "vcpus_used": 1, "vcpus_total": 96, "memory_mb_used": 2048, "memory_mb_total": 264192, "flavors": [ "s2.2xlarge.2", "s2.2xlarge.4", "s2.4xlarge.2", "s2.4xlarge.4", "s2.8xlarge.2", "s2.8xlarge.4", "s2.large.2", "s2.large.4", "s2.medium.2", "s2.medium.4", "s2.xlarge.2", "s2.xlarge.4" ], "instance_total": 1 }, { "project_id": "056f7ec7e100d3d32f81c014630b5648", "availability_zone": "kvmxen.dc1", "host_total": 3, "host_type": "dec_IOoptimizedS2", "hypervisor_type": "ecs", "host_properties": { "cpu_cores": 108, "memory_mb": 264192, "cpu_speed": "2.5" }, "vcpus_used": 24, "vcpus_total": 134, "memory_mb_used": 53248, "memory_mb_total": 792576, "flavors": [ "s2.2xlarge.2", "s2.2xlarge.4", "s2.4xlarge.2", "s2.4xlarge.4", "s2.8xlarge.2", "s2.8xlarge.4", "s2.large.2", "s2.large.4", "s2.medium.2", "s2.medium.4", "s2.xlarge.2", "s2.xlarge.4" ], "instance_total": 23 } ]}
  • 概述 专属计算集群(Dedicated Computing Cluster,简称DCC)是在公有云上隔离出来的专属虚拟计算资源池,支持用户申请独占的物理设备,独享物理隔离的计算资源。用户通过独立的租户来在该资源池内申请宿主机资源后,可以在其上发放弹性云服务器。 您可以使用本文档提供API对资源进行相关操作,如创建、查询、删除、更新等。支持的全部操作请参见API概览。 在调用专属计算集群API之前,请确保已经充分了解专属计算集群相关概念,详细信息请参见“专属计算集群产品介绍”。 父主题: 使用前必读
  • 响应参数 表2 响应参数 参数 参数类型 描述 dedicated_cluster Array of objects 已开通的资源列表。 详情请参见表3。 表3 dedicated_cluster字段数据结构说明 参数 参数类型 描述 project_id String 项目ID。 availability_zone String 可用区。 host_total Integer 主机数量。 host_type String 主机规格编码。 service_type String 集群服务类型。 取值范围:“ecs”或“bms”。 host_properties Object 主机规格信息。 vcpus_used Integer 已用vcpu个数。 vcpus_total Integer 总的vcpu个数。 memory_mb_used Integer 已用内存。 memory_mb_total Integer 总内存。 flavors Array of strings 支持的flavor列表。 instance_total Integer 运行的计算实例总数。 表4 host_properties字段结构说明 参数 参数类型 描述 cpu_cores Integer 核数。 memory_mb Integer 内存。 cpu_speed String 主频。
  • 调用API获取项目ID 项目ID可以通过调用查询指定条件下的项目列表API获取。 获取项目ID的接口为“GET https://{Endpoint}/v3/projects”,其中{Endpoint}为 IAM 的终端节点,可以从地区和终端节点获取。接口的认证鉴权请参见认证鉴权。 响应示例如下,其中projects下的“id”即为项目ID。 { "projects": [ { "domain_id": "65382450e8f64ac0870cd180d14e684b", "is_domain": false, "parent_id": "65382450e8f64ac0870cd180d14e684b", "name": "project_name", "description": "", "links": { "next": null, "previous": null, "self": "https://www.example.com/v3/projects/a4a5d4098fb4474fa22cd05f897d6b99" }, "id": "a4a5d4098fb4474fa22cd05f897d6b99", "enabled": true } ], "links": { "next": null, "previous": null, "self": "https://www.example.com/v3/projects" }}
  • 状态码 正常 返回值 说明 200 OK 服务器已成功处理了请求。 201 Created 请求成功并且服务器创建了新的资源。 202 Accepted 服务器已接受请求,延迟处理。 204 No Content 服务器成功处理了请求,但没有返回任何内容。 异常 返回值 说明 400 Bad Request 服务器未能处理请求。 401 Unauthorized 被请求的页面需要用户名和密码。 403 Forbidden 对被请求页面的访问被禁止。 404 Not Found 服务器无法找到被请求的页面。 405 Method Not Allowed 请求中指定的方法不被允许。 406 Not Acceptable 服务器生成的响应无法被客户端所接受。 407 Proxy Authentication Required 用户必须首先使用代理服务器进行验证,这样请求才会被处理。 408 Request Timeout 请求超出了服务器的等待时间。 409 Conflict 由于冲突,请求无法被完成。 500 Internal Server Error 请求未完成。服务异常。 501 Not Implemented 请求未完成。服务器不支持所请求的功能。 502 Bad Gateway 请求未完成。服务器从上游服务器收到一个无效的响应。 503 Service Unavailable 请求未完成。系统暂时异常。 504 Gateway Timeout 网关超时。 父主题: 公共参数
共100000条