华为云用户手册

  • 创建集群时配置LakeFormation数据连接 该操作指导用户在创建 MRS 集群时配置LakeFormation数据连接。 登录MRS管理控制台。 单击“购买集群”,进入“购买集群”页面。 在购买集群页面,选择“自定义购买”。 参考购买自定义拓扑集群进行配置并创建集群,且集群需满足表1中要求。 表1 LakeFormation数据连接参数说明 参数 参数说明 版本类型 LTS版 集群版本 MRS 3.1.2-LTS.6.Beta 当前仅MRS 3.1.2-LTS.6.Beta版本支持在创建集群时配置LakeFormation数据连接。 组件选择 必须包含Ranger、Hive、Guardian、Spark2x(可选)等组件。 元数据 选择“外置数据连接”,并配置以下参数: LakeFormation元数据:单击按钮开启。 LakeFormation连接实例:选择创建LakeFormation数据连接已创建的LakeFormation数据连接名称。 数据连接类型:保持默认。 虚拟私有云 与LakeFormation数据连接所在的虚拟私有云保持一致。 子网 选择子网名称。 拓扑调整 选择“开启”,并确认Ranger组件至少添加1个PolicySync(PSC)实例、Guardian组件至少添加2个TokenSever(TS)实例。 Kerberos认证 开启 委托 选择创建对接E CS /BMS云服务委托创建的委托(例如:lakeformation_test)。 参考配置MRS集群章节,配置Guardian组件、Hive/Spark2x存算分离、下载客户端等操作。
  • MRS 3.1.2-LTS.0.3补丁基本信息 表1 补丁基本信息 补丁号 MRS 3.1.2-LTS.0.3 发布时间 2022-12-08 安装前处理 如果MRS集群节点故障或者网络不通,需要先隔离该节点,否则补丁会安装失败。 解决的问题 MRS 3.1.2-LTS.0.3 修复问题列表: 修复log4j漏洞(CVE-2021-44228),log4j升级到2.17.2版本 包含MRS 3.1.2-LTS.0.2修复问题 补丁兼容关系 MRS 3.1.2-LTS.0.3补丁包中包含所有MRS 3.1.2-LTS版本单点问题修复补丁。 安装补丁的影响 请参考安装补丁的影响。
  • MRS 3.1.2-LTS.0.2补丁基本信息 表2 补丁基本信息 补丁号 MRS 3.1.2-LTS.0.2 发布时间 2022-10-31 解决的问题 MRS 3.1.2-LTS.0.2 修复问题列表: 解决异常导致Map数量和Reduce数量都为0时,中断任务问题 解决Hive向量化if语句中Output column number expected to be 0 when isRepeating报错问题 解决Hive向量化if语句中由于数据被覆盖导致数据错误和NPE问题 解决开启向量化时,str_to_map函数执行长时间异常问题 解决Hive开启向量化参数后使用split函数执行MR任务效率很低问题 解决Hive开启向量化后查询包含nvl函数和decimal(10,5)字段类型的表报错问题 解决Tez分区空目录报错,报目录不存在问题 解决MR任务提交慢问题 解决Spark2x 创建UDF的jar包放到OBS路径上会查询UDF报错 解决Alluxio jar包冲突问题 解决Executor日志滚动不释放问题 解决Hive元数据库查询网络阻塞问题 解决MRS对接DCS做缓存,缓存键一天多次被清空问题 解决CBG访问OBS概率性无权限问题 解决长时间使用客户端出现死锁问题 解决Yarn运行偶现RM主备切换问题 解决Spark SQL外表动态分区执行insert overwrite报错问题 解决周期清理任务清理.hive-staging时,查询数据库失败问题 解决NameNode在大量删除操作的时候会出现RPC请求处理慢的问题 解决Hive配置Redis缓存频繁访问表key导致Redis热键问题 解决磁盘写速率和磁盘读速率两个指标无法正常上报问题 解决查看指定时间段内的资源概况,监控数据部分缺失问题 解决NameNode退服缓存残留问题 解决Metastore监控指标缺失问题 解决认证krb_test_user失败问题 解决Yarn所有业务中断,报错Timer already cancelled问题 解决实例配置页面无单位转换问题 解决相同AZ下,扩容的节点返回的AZ有误问题 解决[YARN-10854]问题 添加自定义的超时推测机制 使hive.mapreduce.per.task.max.splits适用于Tez GetSplit的listStatus优化 适配hive submit job阶段的内存限制 Superior调度性能提升 物理资源感知特性 ORC合并文件时从文件中读取ORC列压缩属性 Hiveserver堆内存监控限制 大数据量场景,Hive分批加载元数据,提升Hiveserver容错能力 Hive支持Redis缓存连接失败重试 支持OBSA客户端数据监控上报 支持OBS流控重试机制 pms性能优化 mrs-obs-provider的缓存过期优化 优化删除分区的逻辑 Yarn的refresh node速度优化 删除无效告警 补丁兼容关系 MRS 3.1.2-LTS.0.2补丁包中包含所有MRS 3.1.2-LTS版本单点问题修复补丁。 安装补丁的影响 请参考安装补丁的影响。
  • 安装补丁的影响 MRS 3.1.2-LTS.0.3补丁安装后,目录“/srv/BigData/data1/nm/localdir/filecache/”下的log4j旧版本的包,需要重新提交相关的yarn作业,才会加载新的log4j的包。 MRS 3.1.2-LTS版本的补丁安装过程中会自动重启 OMS ,安装过程中将影响作业提交以及集群扩缩容等管控面集群控制功能,请选择适当的时间进行补丁安装。 MRS 3.1.2-LTS版本的补丁安装完成后需要在 FusionInsight Manager Web界面重启Flink、Hadoop、HBase、HDFS、Hive、MapReduce、Meta、Spark2x、Ranger和Yarn服务,以使补丁功能生效。组件重启期间,部分业务可能短暂不可用。请选择适当的时间进行重启,以降低对业务持续性的影响。
  • 操作步骤 进入弹性伸缩配置界面后,配置弹性伸缩规则。 弹性伸缩规则可调控节点数量,也会对实际价格有影响,请谨慎操作。 节点数量范围的默认范围: 输入Task实例弹性伸缩的数量范围,此约束应用于所有扩容缩容规则。 例如本场景中,配置为2~4个。 伸缩规则: 需要配置扩容或者缩容,否则弹性伸缩将不会启用。 规则类型选择“扩容”或者“缩容”。 单击“添加规则”,进入“添加规则”页面。 图1 添加规则 配置“规则名称”、“如果”、“持续”、“添加”、“冷却时间”。 单击“确定”。 您可以在弹性伸缩页面,扩容或者缩容区域查看配置的规则。 配置资源计划。 单击节点默认范围下方的“配置指定时间段的节点数量范围”或者“添加资源计划”。 配置“生效日期”、“时间范围”和“节点数量范围”。 例如此处“生效日期”设置为周一、周二和周六,“时间范围”设置为“07:00-13:00”,“节点数量范围”设置为“5~8”。 单击“配置指定时间段的节点数量范围”或者“添加资源计划”按钮配置多条资源计划。 生效日期默认是每日生效,也可以选择周一至周日任意一天或几天生效。 如果没有配置指定时间段的节点数量范围,则节点数量范围以“默认范围”为准。 如果配置了指定时间段的节点数量范围,则在这个时间范围内,以配置的“节点数量范围”为准。不在配置的时间范围时,则以“默认范围”为准。
  • 背景信息 某项实时处理业务数据量在周一、周二和周六7:00~13:00出现规律性变化,但是数据量变化并非非常平稳。假设在周一、周二和周六7:00~13:00期间,需要Task节点的数量范围是5~8个,其他时间需要Task节点数量是2~4个。因此可以在资源计划的基础上,设置基于负载的弹性伸缩规则,以实现当数据量超出预期后,Task节点数量可以在资源计划规定的范围内根据负载情况进行浮动,但不会超出该规定范围。资源计划触发时,会以变化最小的方式使节点数量满足计划规定范围,即如果需要扩容则扩容到计划节点数量范围的下限,如果需要缩容则缩容到计划节点数量范围的上限。
  • 操作步骤 进入弹性伸缩配置界面后,配置资源计划。 资源计划可调控节点数量,也会对实际价格有影响,请谨慎操作。 节点数量范围的“默认范围”设置为“2-2”,表示除资源计划规定时间范围外,其他时间Task节点数量固定为2个。 单击默认范围下方的“配置指定时间段的节点数量范围”或者“添加资源计划”。 配置“生效日期”、“时间范围”和“节点数量范围”。 例如此处“生效日期”设置为周一、周二和周六,“时间范围”设置为“07:00-13:00”,“节点数量范围”设置为“5-5”,表示在该时间范围内,Task节点数量固定为5个。 单击“配置指定时间段的节点数量范围”配置多条资源计划。 生效日期默认是每日生效,也可以选择周一至周日任意一天或几天生效。 如果没有配置指定时间段的节点数量范围,则节点数量范围以“默认范围”为准。 如果配置了指定时间段的节点数量范围,则在这个时间范围内,以配置的“节点数量范围”为准。不在配置的时间范围时,则以“默认范围”为准。
  • 操作步骤 进入弹性伸缩配置界面后,配置弹性伸缩规则。 配置节点默认范围 输入Task实例弹性伸缩的数量范围,此约束应用于所有扩容缩容规则,取值范围为0~500。 例如本业务场景中,配置为1~10。 配置弹性伸缩规则 需要配置扩容或者缩容规则,否则弹性伸缩将不会启用。 规则类型选择“扩容”或者“缩容”。 单击“添加规则”,进入规则编辑页面。 图1 添加规则 配置“规则名称”、“如果”、“持续”、“添加”、“冷却时间”,具体弹性伸缩指标含义可以参考配置弹性伸缩指标。 单击“确定”。 您可以在弹性伸缩页面,扩容或者缩容区域查看、编辑或删除配置的规则。您可以继续添加并配置多条规则。 单击“确定”,完成弹性伸缩规则设置。 如果是为已有集群配置弹性伸缩的场景,需勾选“我同意授权MRS服务根据以上策略自动进行节点扩容/缩容操作。”。
  • 简介 在大数据应用,尤其是实时分析处理数据的场景中,常常需要根据数据量的变化动态调整集群节点数量以增减资源。MRS的弹性伸缩规则功能支持根据集群负载对集群的Task节点进行弹性伸缩。如果数据量是按照周期进行有规律的变化,用户可以按照固定时间段来自动调整Task节点数量范围,从而在数据量变化前提前完成集群的扩缩容。 弹性伸缩规则:根据集群实时负载指标对Task节点数量进行调整,数据量变化后触发扩缩容,有一定的延后性。 资源计划:按时间段设置Task节点数量范围,若数据量变化存在周期性规律,则可通过资源计划在数据量变化前提前完成集群的扩缩容,避免出现增加或减少资源的延后。 弹性伸缩规则与资源计划均可触发弹性伸缩,两者必须至少配置其中一种,也可以叠加使用。资源计划与基于负载的弹性伸缩规则叠加使用可以使得集群节点的弹性更好,足以应对偶尔超出预期的数据峰值出现。 当某些业务场景要求在集群扩缩容之后,根据节点数量的变化对资源分配或业务逻辑进行更改时,手动扩缩容的场景客户可以登录集群节点进行操作。对于弹性伸缩场景,MRS支持通过自定义弹性伸缩自动化脚本来解决。自动化脚本可以在弹性伸缩前后执行相应操作,自动适应业务负载的变化,免去了人工操作。同时,自动化脚本给用户实现个性需求提供了途径,完全自定义的脚本与多个可选的执行时机基本可以满足用户的各项需求,使弹性伸缩更具灵活性。 弹性伸缩规则: 用户对于一个集群,可以同时设置扩容、缩容最多各5条弹性伸缩规则。 系统根据用户的配置顺序从前到后依次判断规则,先扩容,后缩容。请尽量把重要的策略放在前面,以防一次扩容或缩容无法达到预期效果而进行反复触发。 比对因子包括大于、大于等于、小于、小于等于。 集群连续5n(n默认值为1)分钟持续满足配置的指标阈值后才能触发扩容或者缩容。 每次扩容或者缩容后,存在一个冷却时间,冷却时间默认为20分钟,最小值为0。 单次扩容或者缩容的节点数,最小1个节点,最大100个节点。 集群Task节点数量会被限定在用户配置的默认节点数量范围内或者当前时间段生效的资源计划的节点数量范围内。当前时间段生效的资源计划的节点数量范围优先级更高。 资源计划(按时间段设置Task节点数量范围): 用户可以按时间段设置集群Task节点的最大数量和最小数量,当集群Task节点数不满足当前时间资源计划节点范围要求时,系统触发扩容或缩容。 用户最多可以为一个集群设置5条资源计划。 资源计划周期以天为单位,起始时间与结束时间可以设置为00:00-23:59之间的任意时间点。起始时间早于结束时间至少30分钟。不同资源计划配置的时间段不可交叉。 资源计划触发扩容或缩容后,存在10分钟的冷却时间,冷却时间内不会再次触发弹性伸缩。 当启用资源计划时,在除配置资源计划配置时间段的其他时间内,集群Task节点数量会被限定在用户配置的默认节点数量范围内。 自动化脚本: 用户可以设置自定义脚本,当弹性伸缩触发时,在集群节点上自动运行。 用户最多可以为一个集群设置10个自动化脚本。 可以指定自动化脚本某种或多种类型的节点上执行。 脚本执行时机可以是扩容前、扩容后、缩容前或缩容后。 使用自动化脚本前,请先将脚本上传到集群虚拟机或与集群同region的OBS文件系统中。集群虚拟机上的脚本只能在已有节点上执行,若脚本需要在新扩容的节点上执行,请将脚本上传到OBS。 父主题: 配置弹性伸缩规则
  • 操作步骤 使用omm用户登录到主OMS节点,备份“$OM_TOMCAT_HOME/bin/catalina.sh”文件。 cp $OM_TOMCAT_HOME/bin/catalina.sh /tmp 执行命令vi $OM_TOMCAT_HOME/bin/catalina.sh,找到“Execute The Requested Command”所在行,在该行上面添加一行新内容: JAVA_OPTS="$JAVA_OPTS -Dfastjson.parser.safeMode=true" 使用omm用户在主OMS节点执行如下命令重启Manager Web 服务。 $OMS_RUN_PATH/workspace/ha/module/harm/plugin/script/tomcat stop $OMS_RUN_PATH/workspace/ha/module/harm/plugin/script/tomcat start 在主OMS节点查看进程: ps -ef |grep tomcat | grep om-server 如果包含参数“-Dfastjson.parser.safeMode=true”,说明漏洞问题已经规避,如下图所示: 使用omm用户在备OMS节点同样执行1与2。
  • 操作步骤 使用omm用户登录到主OMS节点,备份$CONTROLLER_HOME/sbin/controller.sh文件。 cp $CONTROLLER_HOME/sbin/controller.sh /tmp 执行命令vi $CONTROLLER_HOME/sbin/controller.sh,找到JVM_ARGS=所在行,在该行的下一行添加一行新内容: JVM_ARGS="$JVM_ARGS -Dfastjson.parser.safeMode=true" 使用omm用户在主OMS节点执行如下命令重启Controller 服务。 sh /opt/Bigdata/om-server/om/sbin/restart-controller.sh 在主OMS节点查看进程。 ps -ef |grep ControllerService 如果包含参数“ -Dfastjson.parser.safeMode=true”,说明漏洞问题已经规避,如下图所示: 使用omm用户在备OMS节点重复执行1与2。
  • 涉及模块 管理面:不涉及该漏洞 租户面:Manager(Web+Controller+nodeagent)、Kafka、Flink、Redis MRS 3.1.0.x执行以下章节: 修复Manager Web 修复Manager Controller 修复Manager nodeagent MRS 3.1.2.x执行章节: 修复Manager Web 修复Manager Controller 修复Manager nodeagent 修复Kafka 修复Flink
  • ECS重置密码插件升级(可选) 华为云ECS服务提供了一键式重置密码功能,弹性云服务器的密码丢失或过期时,可使用该功能进行一键式重置密码。重置密码插件为ECS内部运行的客户端进程,不对外提供任何网络服务,重置密码插件CloudResetPwdUpdateAgent使用了Apache Log4j2组件,经华为 云安全 实验室分析验证,ECS重置密码插件无可利用条件,无安全风险。 如果用户任需要升级该插件中的Log4j2版本,可通过下面的步骤升级插件: 将“MRS_Log4j_Patch.tar.gz”上传至主OMS节点的“/home/omm”目录下。具体可参考如何上传本地文件到集群内节点?。 使用root用户登录主OMS节点,修改补丁工具相应权限,切到omm用户下,并解压补丁工具至当前目录。 chown omm:wheel -R /home/omm/MRS_Log4j_Patch.tar.gz su - omm cd /home/omm tar -zxf MRS_Log4j_Patch.tar.gz 在“/home/omm/MRS_Log4j_Patch/bin/ips.ini”文件中配置需要打补丁的节点IP(当前集群所有节点IP)。 每行配置一个IP,中间不能有空行。 根据节点登录方式执行以下步骤: 密码登录 执行以下命令: nohup sh install.sh upgrade_resetpwdagent passwd:登录密码 & 例如密码为xyz123,则命令为: nohup sh install.sh upgrade_resetpwdagent passwd:xyz123 & 通过tail -f nohup.out查看执行情况,打印“upgrade_resetpwdagent patch success.”表示执行完成。 密钥登录 将root用户对应的私钥文件上传到“/home/omm/MRS_Log4j_Patch/bin”目录下,保证文件的属组为root:root,执行命令: chown root:root /home/omm/MRS_Log4j_Patch/bin/密钥文件 chmod 644 /home/omm/MRS_Log4j_Patch/bin/密钥文件 执行以下命令 su - omm cd /home/omm/MRS_Log4j_Patch/bin nohup sh install.sh upgrade_resetpwdagent privatekey:私钥文件路径 & 例如私钥文件路径为‘/home/omm/MRS_Log4j_Patch/bin/abc.pem’,则执行命令为: nohup sh install.sh upgrade_resetpwdagent privatekey:/home/omm/MRS_Log4j_Patch/bin/abc.pem & 通过tail -f nohup.out查看执行情况,打印“upgrade_resetpwdagent patch success.”表示执行完成。
  • 受影响组件列表 MRS集群版本 受影响组件 MRS 3.1.1 Hive、Oozie、Flink、Ranger、Tez MRS 3.1.0 Hive、Flink、Spark、Tez、Impala、Ranger、Presto、Oozie MRS 3.0.5 Hive、Flink、Spark、Tez、Impala、Ranger、Presto、Oozie、Storm、Loader MRS 3.0.2 Hive、Flink、Spark、Tez、Ranger、Oozie、Storm、Loader MRS 2.1.1 Hive、Tez、Storm、Loader、Impala、Presto MRS 2.1.0 Loader、Hive、Storm、Presto、Impala、Tez、Spark、HBase MRS 1.9.3 Loader、Hive、Tez、Spark、Flink MRS 1.9.2 Loader、Hive、Tez、Spark、Flink、Impala MRS 1.9.0 Loader、Hive、Spark、Flink MRS 1.8.10 Loader、Storm MRS 1.7.1 Loader、Storm
  • 补丁卸载方法 使用root用户登录主OMS节点,执行如下命令,卸载脚本: su - omm cd /home/omm/MRS_Log4j_Patch/bin nohup sh install.sh rollback & 通过tail -f nohup.out可查看执行情况,打印“rollback patch success.”表示执行完成。 登录Manager页面,具体请参考访问集群Manager。重启受影响的组件,受影响组件请参考受影响组件列表。建议业务低峰期时执行重启操作。 如果安装补丁时执行了现有集群节点安装补丁的6,且希望回退部件包中的修改,可在2执行完之后执行如下操作: 使用root用户登录主OMS节点,执行如下命令: su - omm cd /home/omm/MRS_Log4j_Patch/bin nohup sh install.sh rollback_package & 通过tail -f nohup.out查看执行情况(打印“rollback_package patch success.”表示执行完成)。
  • 前提条件 从OBS路径中下载的补丁工具“MRS_Log4j_Patch.tar.gz”,下载路径:https://mrs-container1-patch-cn-south-1.obs.cn-south-1.myhuaweicloud.com/MRS_Common_Script/MRS_Log4j_Patch.tar.gz。 确认集群主OMS节点: OMS节点一般为Master1和Master2节点,主OMS节点判断方法,执行以下命令,返回结果为active的节点为主OMS节点,返回结果为standby的节点为备OMS节点: 3.x之前版本: sh /opt/Bigdata/*/workspace0/ha/module/hacom/script/get_harole.sh 3.x及之后版本: sh /opt/Bigdata/om-server*/OMS/workspace0/ha/module/hacom/script/get_harole.sh
  • 现有集群节点安装补丁 将“MRS_Log4j_Patch.tar.gz”上传至主OMS节点的“/home/omm”目录下。具体可参考如何上传本地文件到集群内节点?。 使用root用户登录主OMS节点,修改补丁工具相应权限,切到omm用户下,并解压补丁工具至当前目录。 chown omm:wheel -R /home/omm/MRS_Log4j_Patch.tar.gz su - omm cd /home/omm tar -zxf MRS_Log4j_Patch.tar.gz 在“/home/omm/MRS_Log4j_Patch/bin/ips.ini”文件中配置需要打补丁的节点IP(当前集群所有节点IP)。 每行配置一个IP,中间不能有空行。 执行脚本安装补丁。 cd /home/omm/MRS_Log4j_Patch/bin nohup sh install.sh upgrade & 通过tail -f nohup.out可查看执行情况(打印 “upgrade patch success.” 表示执行完成)。 登录Manager页面,具体请参考访问集群Manager。重启受影响的组件,受影响组件请参考受影响组件列表。建议业务低峰期时执行重启操作。 (可选)如果要新下载的客户端安装上补丁,需要先为部件包安装补丁,可执行如下命令: su - omm cd /home/omm/MRS_Log4j_Patch/bin nohup sh install.sh upgrade_package & 通过tail -f nohup.out查看执行情况,打印“upgrade_package patch success.”表示执行完成。 执行完之后,重新下载的客户端就已经是安装补丁的客户端。 该步骤耗时比较长,且执行完之后不需要重启组件。
  • 扩容节点安装补丁 扩容操作时关闭“启动组件”开关。扩容节点请参考扩容集群。 将“MRS_Log4j_Patch.tar.gz”上传至主OMS节点的“/home/omm”目录下。具体可参考如何上传本地文件到集群内节点?。 使用root用户登录主OMS节点,修改补丁工具相应权限,切到omm用户下,并解压补丁工具至当前目录。 chown omm:wheel -R /home/omm/MRS_Log4j_Patch.tar.gz su - omm cd /home/omm tar -zxf MRS_Log4j_Patch.tar.gz 在“/home/omm/MRS_Log4j_Patch/bin/ips.ini”文件中配置需要打补丁的节点IP(当前集群扩容节点IP)。 每行配置一个IP,中间不能有空行。 执行脚本安装补丁。 cd /home/omm/MRS_Log4j_Patch/bin nohup sh install.sh upgrade & 通过tail -f nohup.out可查看执行情况,打印“upgrade patch success.”表示执行完成。 登录Manager页面,具体请参考访问集群Manager。启动新扩容节点上的实例。
  • 验证Jupyter Notebook访问MRS 在客户端节点执行如下命令,启动Jupyter Notebook: PYSPARK_PYTHON=./Python/bin/python3 PYSPARK_DRIVER_PYTHON=jupyter-notebook PYSPARK_DRIVER_PYTHON_OPTS="--allow-root" pyspark --master yarn --executor-memory 2G --driver-memory 1G 使用弹性IP:9999,登录到jupyter webui(保证ECS的安全组对外放通本地公网IP和9999端口),登录密码为2设置的密码。 创建代码。 创建个新的python3任务,使用Spark读取文件。 结果如下: 登录到Manager界面,在Yarn的WebUI页面上查看提交的pyspark应用: 验证pandas库调用。 父主题: Jupyter Notebook采用自定义Python对接MRS
  • 安装Jupyter Notebook 使用root用户登录客户端节点,执行如下命令安装Jupyter Notebook。 pip3 install jupyter notebook 显示结果如下,表示安装成功: 为了安全,需要生成一个密文密码用于登录Jupyter,放到Jupyter Notebook的配置文件中。 执行如下命令,需要输入两次密码:(进行到Out[3]退出) ipython [root@ecs-notebook python36]# ipythonPython 3.6.6 (default, Dec 20 2021, 09:32:25)Type 'copyright', 'credits' or 'license' for more informationIPython 7.16.2 -- An enhanced Interactive Python. Type '?' for help.In [1]: from notebook.auth import passwdIn [2]: passwd()Enter password:Verify password:Out[2]: 'argon2:$argon2id$v=19$m=10240,t=10,p=8$g14BqLddl927n/unsyPlLQ$YmoKJzbUfNG7LcxylJzm90bgbKWUIiHy6ZV+ObTzdcA 执行如下命令生成jupyter配置文件: jupyter notebook --generate-config 修改配置文件: vi ~/.jupyter/jupyter_notebook_config.py 添加如下配置: # -*- coding: utf-8 -*- c.NotebookApp.ip='*' #此处填写ecs对应的内网IP c.NotebookApp.password = u'argon2:$argon2id$v=19$m=10240,t=10,p=8$NmoAVwd8F6vFP2rX5ZbV7w$SyueJoC0a5TbCuHYzqfSx1vQcFvOTTryR+0uk2MNNZA' # 填写步骤2,Out[2]密码生成的密文c.NotebookApp.open_browser = False # 禁止自动打开浏览器 c.NotebookApp.port = 9999 # 指定端口号 c.NotebookApp.allow_remote_access = True 父主题: Jupyter Notebook采用自定义Python对接MRS
  • 安装Python3 使用root用户,登录集群外客户端节点,执行如下命令,检查是否安装Python3。 python3 --version 是,执行配置MRS客户端。 否,执行2。 安装Python,此处以Python3.6.6为例。 执行如下命令,安装依赖: yum install zlib zlib-devel zip -y yum install gcc-c++ yum install openssl-devel yum install sqlite-devel -y 如果pandas库需要额外安装如下依赖: yum install -y xz-devel yum install bzip2-devel 下载对应Python版本源码:wget https://www.python.org/ftp/python/3.6.6/Python-3.6.6.tgz 执行如下命令,解压python源码压缩包,例如下载在“opt”目录下: cd /opt tar –xvf Python-3.6.6.tgz 创建Python的安装目录,此处以“/opt/python36”为例: mkdir /opt/python36 编译Python。 cd /opt/python-3.6.6 ./configure --prefix=/opt/python36 执行成功,显示结果如下: 执行命令:make -j8,执行成功,显示结果如下: 执行命令:make install,执行成功,显示结果如下: 执行如下命令,配置python环境。 export PYTHON_HOME=/opt/python36 export PATH=$PYTHON_HOME/bin:$PATH 执行命令python3 --version,显示结果如下,表示Python已经安装完成。 验证Python3。 pip3 install helloword python3 import helloworld helloworld.say_hello("test") 测试安装第三方Python库(如pandas, sklearn)。 pip3 install pandas pip3 install backports.lzma pip3 install sklearn 执行命令python3 -m pip list,查看安装结果。 打包Python.zip cd /opt/python36/ zip -r python36.zip ./* 创建并上传到HDFS指定目录作为后续使用。 hdfs dfs -mkdir /user/python hdfs dfs -put python36.zip /user/python 父主题: Jupyter Notebook采用自定义Python对接MRS
  • 安装集群外节点客户端 准备一台集群外Linux弹性云服务器,需要满足的条件,请参考集群外节点安装客户端。 参考集群外节点安装客户端,安装集群外节点客户端,例如安装目录为“/opt/client”。 确认集群是否开启了Kerberos认证。 是,执行4。 否,执行安装Python3。 访问FusionInsight Manager(MRS 3.x及之后版本),登录到Manager界面。 创建用户,用户组选择hadoop,主组选择hadoop,角色选择Manager_operator,例如创建用户mrs-test。 使用root用户,登录到安装的客户端节点,执行如下命令,配置环境变量,安全认证。 source /opt/client/bigdata_env kinit mrs-test 第一次认证需要修改用户密码。 父主题: Jupyter Notebook采用自定义Python对接MRS
  • 配置MRS客户端 进入Spark客户端安装目录“/opt/client/Spark2x/spark/conf”,在spark-defaults.conf配置文件如下参数: spark.pyspark.driver.python=/usr/bin/python3spark.yarn.dist.archives=hdfs://hacluster/user/python/python36.zip#Python 父主题: Jupyter Notebook采用自定义Python对接MRS
  • 简介 在MRS服务中可以配合Jupyter Notebook使用Pyspark,能够提高机器学习、数据探索和ETL应用开发效率。 本文指导用户如何在MRS中配置Jupyter Notebook来使用Pyspark。具体流程如下: 安装集群外节点客户端 安装Python3 配置MRS客户端 安装Jupyter Notebook 验证Jupyter Notebook访问MRS 本操作仅适用MRS 3.x及之后版本。 父主题: Jupyter Notebook采用自定义Python对接MRS
  • 如何配置网络ACL出规则? 方案一: 放通网络ACL所有出站流量,此方案能保证集群正常创建与使用,优先建议使用此方案。 图11 放通网络ACL所有出站流量配置示例 方案二: 放通保证集群创建成功的最小出规则,此方案可能在后续使用中因出方向规则遗漏导致集群使用问题,不建议使用方案。若出现集群使用问题请联系运维人员支撑处理。 配置示例:参照方案一中示例,配置策略为“允许”,目的地址为通信安全授权地址、NTP、OBS、Openstack及 DNS地址 的出方向规则。
  • 漏洞规避方案 请根据MRS集群版本,从如下链接中选择相应的漏洞规避方案。 MRS 3.1.1:MRS 3.1.1版本Log4j2远程执行漏洞(CVE-2021-44228)缓解措施 MRS 3.1.0:MRS 3.1.0版本Log4j2远程执行漏洞(CVE-2021-44228)缓解措施 MRS 3.0.5:MRS 3.0.5版本Log4j2远程执行漏洞(CVE-2021-44228)缓解措施 MRS 3.0.2:MRS 3.0.2版本Log4j2远程执行漏洞(CVE-2021-44228)缓解措施 MRS 2.1.1:MRS 2.1.1版本Log4j2远程执行漏洞(CVE-2021-44228)缓解措施 MRS 2.1.0:MRS 2.1.0版本Log4j2远程执行漏洞(CVE-2021-44228)缓解措施 MRS 1.9.3:MRS 1.9.3版本Log4j2远程执行漏洞(CVE-2021-44228)缓解措施 MRS 1.9.2:MRS 1.9.2版本Log4j2远程执行漏洞(CVE-2021-44228)缓解措施 MRS 1.9.0:MRS 1.9.0版本Log4j2远程执行漏洞(CVE-2021-44228)缓解措施 MRS 1.8.10:MRS 1.8.10版本Log4j2远程执行漏洞(CVE-2021-44228)缓解措施 MRS 1.7.1:MRS 1.7.1版本Log4j2远程执行漏洞(CVE-2021-44228)缓解措施
  • 使用Oozie客户端 安装客户端,详细操作请参考安装客户端章节。 以客户端安装用户,登录安装客户端的节点。 执行以下命令,切换到客户端安装目录,该操作的客户端目录只是举例,请根据实际安装目录修改。 cd /opt/client 执行以下命令配置环境变量。 source bigdata_env 判断集群认证模式。 安全模式,执行以下命令进行用户认证。exampleUser为提交任务的用户名。 kinit exampleUser 普通模式,执行6。 配置Hue。 spark2x环境配置(如果不涉及spark2x任务,可以跳过此步骤): hdfs dfs -put /opt/client/Spark2x/spark/jars/*.jar /user/oozie/share/lib/spark2x/ 当HDFS目录“/user/oozie/share”中的Jar包发生变化时,需要重启Oozie服务。 上传Oozie配置文件以及Jar包至HDFS: hdfs dfs -mkdir /user/exampleUser hdfs dfs -put -f /opt/client/Oozie/oozie-client-*/examples /user/exampleUser/ exampleUser为提交任务的用户名。 在提交任务的用户和非job.properties文件均无变更的前提下,客户端安装目录/Oozie/oozie-client-*/examples目录一经上传HDFS,后续可重复使用,无需多次提交。 解决Spark和Yarn关于jetty的jar冲突。 hdfs dfs -rm -f /user/oozie/share/lib/spark/jetty-all-9.2.22.v20170606.jar 普通模式下,上传过程如果遇到“Permission denied”的问题,可执行以下命令进行处理。 su - omm source /opt/client/bigdata_env hdfs dfs -chmod -R 777 /user/oozie exit
  • 使用Yarn客户端 安装客户端。 MRS 3.x之前版本请参考安装客户端章节。 MRS 3.x及之后版本请参考安装客户端章节。 以客户端安装用户,登录安装客户端的节点。 执行以下命令,切换到客户端安装目录。 cd /opt/client 执行以下命令配置环境变量。 source bigdata_env 如果集群为安全模式,执行以下命令进行用户认证。普通模式集群无需执行用户认证。 kinit 组件业务用户 直接执行Yarn命令。例如: yarn application -list
  • 背景信息 假定用户开发一个应用程序,用于管理企业中的使用A业务的用户信息,使用Impala客户端实现A业务操作流程如下: 普通表的操作: 创建用户信息表user_info。 在用户信息中新增用户的学历、职称信息。 根据用户编号查询用户姓名和地址。 A业务结束后,删除用户信息表。 表1 用户信息 编号 姓名 性别 年龄 地址 12005000201 A 男 19 A城市 12005000202 B 女 23 B城市 12005000203 C 男 26 C城市 12005000204 D 男 18 D城市 12005000205 E 女 21 E城市 12005000206 F 男 32 F城市 12005000207 G 女 29 G城市 12005000208 H 女 30 H城市 12005000209 I 男 26 I城市 12005000210 J 女 25 J城市
  • 使用Hive客户端(MRS 3.x之前版本) 安装客户端,具体请参考安装客户端章节。 以客户端安装用户,登录安装客户端的节点。 执行以下命令,切换到客户端安装目录。 cd /opt/hadoopclient 执行以下命令配置环境变量。 source bigdata_env 根据集群认证模式,完成Hive客户端登录。 安全模式,则执行以下命令,完成用户认证并登录Hive客户端。 kinit 组件业务用户 beeline 普通模式,则执行以下命令,登录Hive客户端,如果不指定组件业务用户,则会以当前操作系统用户登录。 beeline -n 组件业务用户 进行beeline连接后,可以编写并提交HQL语句执行相关任务。如需执行Catalog客户端命令,需要先执行!q命令退出beeline环境。 使用以下命令,执行HCatalog的客户端命令。 hcat -e "cmd" 其中"cmd"必须为Hive DDL语句,如hcat -e "show tables"。 若要使用HCatalog客户端,必须从“组件管理”页面单击“下载客户端”,下载全部服务的客户端。Beeline客户端不受此限制。 由于权限模型不兼容,使用HCatalog客户端创建的表,在HiveServer客户端中不能访问,但可以使用WebHCat客户端访问。 在普通模式下使用HCatalog客户端,系统将以当前登录操作系统用户来执行DDL命令。 退出beeline客户端时请使用!q命令,不要使用“Ctrl + c”。否则会导致连接生成的临时文件无法删除,长期会累积产生大量的垃圾文件。 在使用beeline客户端时,如果需要在一行中输入多条语句,语句之间以“;”分隔,需要将“entireLineAsCommand”的值设置为“false”。 设置方法:如果未启动beeline,则执行beeline --entireLineAsCommand=false命令;如果已启动beeline,则在beeline中执行!set entireLineAsCommand false命令。 设置完成后,如果语句中含有不是表示语句结束的“;”,需要进行转义,例如select concat_ws('\;', collect_set(col1)) from tbl。
共100000条