云服务器内容精选

  • 解决办法 在集群所在VPC对应重点节点策略中,将当前Region的补丁桶放通,以保证 MRS 集群节点可以正常获取补丁文件。 使用具有管理权限的用户登录终端节点控制台。 单击管理控制台左上角的Region信息,选择区域和项目。 在终端节点列表中,单击终端节点ID。 选择进入“策略”页面,单击“编辑”,修改策略信息。 例如只允许VPC1内的服务器下载账号A的桶mybucket中的对象。 其中VPC1的ID为:4dad1f75-0361-4aa4-ac75-1ffdda3a0fec,账号A的账号ID为:783fc6652cf246c096ea836694f71855。 [ { "Action": [ "obs:object:GetObject" ], "Resource": [ "obs:*:783fc6652cf246c096ea836694f71855:object:mybucket/*" ], "Effect": "Allow" } ] 更多VPCEP策略配置说明可参考https://support.huaweicloud.com/usermanual-vpcep/vpcep_03_3002.html。 MRS集群各Region中补丁对应OBS文件桶信息如下: 华东-上海一:mrs-container1-patch-cn-east-3 西南-贵阳一:mrs-container1-patch-cn-southwest-2 华北-北京四:mrs-container1-patch-cn-north-4 华北-北京一:mrs-container1-patch-cn-north-1 华北-北京二:mrs-container1-patch-cn-north-2 华东-上海二:mrs-container1-patch-cn-east-2 华南-广州:mrs-container1-patch-cn-south-1 单击“完成”。
  • 操作流程 本实践操作流程如下所示: 步骤一:添加Task节点:为已有的MRS集群新增Task节点组。 步骤二:添加资源池:通过管理控制台将新增的节点配置为租户资源池。 步骤三:添加租户:新创建一个租户。 步骤四:队列配置:修改租户对应的资源队列配置及资源分布策略,将其与新资源池绑定。 步骤五:创建用户:新创建一个MRS集群用户并绑定租户。 步骤六:使用spark-submit提交任务:使用指定的队列运行作业任务。 步骤七:删除Task节点:释放资源。
  • 步骤三:添加租户 在集群详情页,单击“租户管理”。 单击“添加租户”,打开添加租户的配置页面,参见以下表格内容为租户配置属性(以MRS 3.x版本集群为例)。 表2 租户参数一览表 参数名 描述 名称 例如:tenant_spark 租户类型 选择“叶子租户”。当选中“叶子租户”时表示当前租户为叶子租户,无法再添加子租户。当选中“非叶子租户”时表示当前租户可以再添加子租户。 计算资源 选择“Yarn”,系统将自动在Yarn中以租户名称创建任务队列。计算资源不选择“Yarn”时,系统不会自动创建任务队列。 配置模式 计算资源选择“Yarn”时,“配置模式”可选“基础”或“高级”。 基础:需配置“默认资源池容量 (%)”,配置当前租户在“default”资源池中使用的计算资源百分比。 高级:需配置如下参数。 权重:资源分配权重,取值范围从0到100。租户资源占比=租户权重/同级别租户总权重之和。 最小资源:保证租户能获得的资源(有抢占支持)。取值可以是父租户资源的百分比或绝对值。当租户作业量比较少时,资源会自动借给其他租户,当租户能使用的资源不满足最小资源时,可以通过抢占来要回之前借出的资源。 最大资源:租户最多能使用的资源,租户不能得到比最大资源设定更多的资源。取值可以是父租户资源的百分比或绝对值。 预留资源:租户最多能使用的资源,租户不能得到比最大资源设定更多的资源。取值可以是父租户资源的百分比或绝对值。 默认资源池容量 (%) 配置当前租户在“default”资源池中使用的计算资源百分比,例如“20%”。 储存资源 选择“HDFS”,第一次创建租户时,系统自动在HDFS根目录创建“/tenant”目录。存储资源不选择“HDFS”时,系统不会在HDFS中创建存储目录。 文件/目录数上限 例如:100000000000 存储空间配额 配置当前租户使用的HDFS存储空间配额。最小值为“1”,最大值为父租户的全部存储配额。单位为MB或GB。例如:50000,单位为MB。此参数值表示租户可使用的HDFS存储空间上限,不代表一定使用了这么多空间。如果参数值大于HDFS物理磁盘大小,实际最多使用全部的HDFS物理磁盘空间。 说明: 为了保证数据的可靠性,HDFS中每保存一个文件则自动生成1个备份文件,即默认共2个副本。HDFS存储空间表示所有副本文件在HDFS中占用的磁盘空间大小总和。例如“存储空间配额”设置为“500MB”,则实际只能保存约500/2=250MB大小的文件。 存储路径 例如:“tenant/spark_test”,系统默认将自动在“/tenant”目录中以租户名称创建文件夹。例如租户“spark_test”,默认HDFS存储目录为“tenant/spark_test”。第一次创建租户时,系统自动在HDFS根目录创建“/tenant”目录。支持自定义存储路径。 服务 配置当前租户关联使用的其他服务资源,支持HBase。单击“关联服务”,在“服务”选择“HBase”。在“关联类型”选择“独占”表示独占服务资源,选择“共享”表示共享服务资源。 描述 配置当前租户的描述信息。 单击“确定”保存,完成租户添加。 保存配置需要等待一段时间,界面右上角弹出提示“租户创建成功。”,租户成功添加。 创建租户时将自动创建租户对应的角色、计算资源和存储资源。 新角色包含计算资源和存储资源的权限。此角色及其权限由系统自动控制,不支持通过“角色管理”进行手动管理。 使用此租户时,请创建一个系统用户,并分配Manager_tenant角色以及租户对应的角色。
  • 步骤一:添加Task节点 在MRS集群的集群详情页面,选择“节点管理”页签,单击“新增节点组”,进入“新增节点组”页面。 根据需求配置参数。 表1 新增节点组参数说明 参数名称 描述 节点规格 选择节点组内主机的规格类型。 节点数量 设置新增节点组内的节点数量。 系统盘 设置新增节点的系统盘的规格与容量。 数据盘/数据盘数量 设置新增节点的数据盘的规格与容量及数量。 部署角色 添加“NodeManager”角色。 单击“确定”。
  • 步骤四:队列配置 在集群详情页,单击“租户管理”。 单击“队列配置”页签。 在租户队列表格,指定租户队列的“操作”列,单击“修改”。 在“租户管理”页签左侧租户列表,单击目标的租户,切换到“资源”页签,单击也能打开修改队列配置页面(仅适用于MRS 3.x之前版本)。 一个队列只能绑定一个非default资源池。 默认资源标签选择步骤二:添加资源池时填写的标签,其他参数请根据实际情况填写。 单击“确定”。 在集群详情页,单击“租户管理”。 单击“资源分布策略”页签,资源池选择步骤二:添加资源池创建的资源池。 在租户tenant_spark“操作”列,单击“修改”。 权重:20 最小资源:20 最大资源:80 预留资源:10 单击“确定”。
  • 步骤六:使用spark-submit提交任务 使用root用户登录客户端节点,执行如下命令: cd 客户端安装目录 source bigdata_env source Spark2x/component_env 安全集群(开启kerberos认证)执行命令kinit spark_test,普通模式(关闭kerberos认证)无需执行。 输入密码,完成认证(第一次登录需要修改密码)。 使用认证后的用户提交Spark作业任务。 cd Spark2x/spark/bin sh spark-submit --queue tenant_spark --class org.apache.spark.examples.SparkPi --master yarn-client ../examples/jars/spark-examples_*.jar
  • 方案架构 租户是MRS大数据平台的核心概念,使传统的以用户为核心的大数据平台向以多租户为核心的大数据平台转变,更好的适应现代企业多租户应用环境,如图1所示。 图1 以用户为核心的平台和以多租户为核心的平台 对于以用户为核心的大数据平台,用户直接访问并使用全部的资源和服务。 用户的应用可能只用到集群的部分资源,资源利用效率低。 不同用户的数据可能存放在一起,难以保证数据安全。 对于以租户为核心的大数据平台,用户通过访问租户来使用需要的资源和服务。 按照应用需求分配和调度出需要的资源,以租户来统一使用,资源利用效率高。 用户通过分配不同的角色获得使用不同租户资源的权限,以保障访问安全。 不同的租户之间数据隔离,以保证数据安全。
  • 弹性伸缩规则与资源计划叠加使用 登录MRS管理控制台。 选择“现有集群”,单击待操作的集群名称,进入集群详情页面。 选择“弹性伸缩”页签,进入配置弹性伸缩界面。 单击“新增弹性伸缩”按钮,并配置“节点数量范围”为“2 - 4”。 图2 配置弹性伸缩 配置资源计划。 单击默认范围下方的“配置指定时间段的节点数量范围”。 配置“时间范围”和“节点数量范围”。 “时间范围”:“07:00-13:00” “节点数量范围”:“5-8” 图3 弹性伸缩 配置弹性伸缩规则。 勾选“扩容”。 单击右侧“添加规则”,进入“添加规则”页面。 图4 添加规则 “规则名称”:default-expand-2 “如果”:在下拉框中选择规则对象及约束要求,例如YARNAppRunning大于75 “持续”:1个五分钟 “添加”:1个节点 “冷却时间”:20分钟 单击“确定”。 勾选“我同意授权MRS服务根据以上策略自动进行节点扩容/缩容操作。”。 单击“确定”,等待弹性伸缩集群设置完成。
  • 参考信息 在添加规则时,可以参考表1配置相应的指标。 混合集群的支持分析集群和流式集群的所有指标。 表1该表中不同数值类型取值精度如下: 整型:整数。 百分比:0.01。 比率:0.01。 表1 弹性伸缩指标列表 集群类型 指标名称 数值类型 说明 流式集群 StormSlotAvailable 整型 Storm组件的可用slot数。 取值范围为[0~2147483646]。 StormSlotAvailablePercentage 百分比 Storm组件可用slot百分比。是可用slot数与总slot数的比值。 取值范围为[0~100]。 StormSlotUsed 整型 Storm组件的已用slot数。 取值范围为[0~2147483646]。 StormSlotUsedPercentage 百分比 Storm组件已用slot百分比。是已用slot数与总slot数的比值。 取值范围为[0~100]。 StormSupervisorMemAverageUsage 整型 Storm组件Supervisor的内存平均使用量。 取值范围为[0~2147483646]。 StormSupervisorMemAverageUsagePercentage 百分比 Storm组件Supervisor进程使用的内存占系统总内存的平均百分比。 取值范围[0 ~ 100]。 StormSupervisorCPUAverageUsagePercentage 百分比 Storm组件Supervisor进程使用的CPU占系统总CPU的平均百分比。 取值范围[0 ~ 6000]。 分析集群 YARNAppPending 整型 YARN组件挂起的任务数。 取值范围为[0~2147483646]。 YARNAppPendingRatio 比率 YARN组件挂起的任务数比例。是YARN挂起的任务数与YARN运行中的任务数比值。 取值范围为[0~2147483646]。 YARNAppRunning 整型 YARN组件运行中的任务数。 取值范围为[0~2147483646]。 YARNContainerAllocated 整型 YARN组件中已分配的container个数。 取值范围为[0~2147483646]。 YARNContainerPending 整型 YARN组件挂起的container个数。 取值范围为[0~2147483646]。 YARNContainerPendingRatio 比率 YARN组件挂起的container比率。是挂起的container数与运行中的container数的比值。 取值范围为[0~2147483646]。 YARNCPUAllocated 整型 YARN组件已分配的虚拟CPU核心数。 取值范围为[0~2147483646]。 YARNCPUAvailable 整型 YARN组件可用的虚拟CPU核心数。 取值范围为[0~2147483646]。 YARNCPUAvailablePercentage 百分比 YARN组件可用虚拟CPU核心数百分比。是可用虚拟CPU核心数与总虚拟CPU核心数比值。 取值范围为[0~100]。 YARNCPUPending 整型 YARN组件挂起的虚拟CPU核心数。 取值范围为[0~2147483646]。 YARNMemoryAllocated 整型 YARN组件已分配内存大小。单位为MB。 取值范围为[0~2147483646]。 YARNMemoryAvailable 整型 YARN组件可用内存大小。单位为MB。 取值范围为[0~2147483646]。 YARNMemoryAvailablePercentage 百分比 YARN组件可用内存百分比。是YARN组件可用内存大小与YARN组件总内存大小的比值。 取值范围为[0~100]。 YARNMemoryPending 整型 YARN组件挂起的内存大小。 取值范围为[0~2147483646]。 在添加资源计划时,可以参考表2配置相应的参数。 表2 资源计划配置项说明 配置项 说明 生效日期 资源计划的生效日期。默认是每日生效,也可以选择周一至周日任意一天或几天生效。 时间范围 资源计划的起始时间和结束时间,精确到分钟,取值范围[00:00, 23:59]。例如资源计划开始于早上8:00,结束于10:00,则配置为8:00-10:00。结束时间必须晚于开始时间至少30分钟。不同资源计划配置的时间段不可交叉。 节点数量范围 资源计划内的节点数量上下限,取值范围[0,500],在资源计划时间内,集群Task节点数量小于最小节点数时,弹性伸缩会将集群Task节点一次性扩容到最小节点数。在资源计划时间内,集群Task节点数量大于最大节点数时,弹性伸缩会将集群Task节点一次性缩容到最大节点数。最小节点数必须小于或等于最大节点数。
  • 操作场景 本入门指导以如下业务场景为例,介绍弹性伸缩规则与资源计划均叠加使用的操作: 某项实时处理业务数据量在周一、周二和周六7:00~13:00出现规律性变化,但是数据量变化并非非常平稳。假设在周一、周二和周六7:00~13:00期间,需要Task节点的数量范围是5~8个,其他时间需要Task节点数量是2~4个。 因此可以在资源计划的基础上,设置基于负载的弹性伸缩规则,以实现当数据量超出预期后,Task节点数量可以在资源计划规定的范围内根据负载情况进行浮动,但不会超出该规定范围。资源计划触发时,会以变化最小的方式使节点数量满足计划规定范围,即如果需要扩容则扩容到计划节点数量范围的下限,如果需要缩容则缩容到计划节点数量范围的上限。
  • 添加Task节点 MRS集群创建成功之后,如果需要规划Task类型的节点组进行弹性伸缩,可通过手动添加节点组的方式进行配置。 “自定义”类型集群添加Task节点操作步骤: 在集群详情页面,选择“节点管理”页签,单击“新增节点组”,进入“新增节点组”页面。 节点类型选择“Task”,“部署角色”参数默认选择“NM”部署NodeManager角色,则新增节点组为Task节点组,其他参数根据需要配置。 图1 添加Task节点组 非“自定义”类型集群添加Task节点操作步骤: 在集群详情页面,选择“节点管理”页签,单击“配置Task节点”,进入“配置Task节点”页面。 配置“节点类型”、“节点规格”、“节点数量”、“系统盘”,如开启“添加数据盘”后,还需要配置数据盘的存储类型、大小和数量。 单击“确定”。
  • 如何查看所有MRS集群? MRS所有的集群都展示在MRS管理控制台的“MRS集群”页面中,进入“MRS集群”页面,可查看所有集群。集群数量较多时,可采用翻页显示,您可以查看任何状态下的集群。 现有集群:包括除了“失败”和“已删除”状态以外的所有集群。 历史集群:仅包含“已删除”状态的集群,目前界面只显示6个月内创建且已删除的集群,如果需要查看6个月以前删除的集群,请联系技术支持人员。 失败任务管理:仅包含“失败”状态的任务。 集群创建失败的任务 集群删除失败的任务 集群扩容失败的任务 集群缩容失败的任务 父主题: 集群管理类
  • 节点隔离 当用户发现某个主机出现异常或故障,无法提供服务或影响集群整体性能时,可以临时将主机从集群可用节点排除,使客户端访问其他可用的正常节点。在为集群安装补丁的场景中,也支持排除指定节点不安装补丁。隔离主机仅支持隔离非管理节点。 主机隔离后该主机上的所有角色实例将被停止,且不能对主机及主机上的所有实例进行启动、停止和配置等操作。另外,主机隔离后无法统计并显示该主机硬件和主机上实例的监控状态及指标数据。 父主题: 集群管理
  • 原因分析 PostgreSQL缓存:除了常见的执行计划缓存、数据缓存,PostgreSQL为了提高生成执行计划的效率,还提供了catalog,relation等缓存机制。长连接场景下这些缓存中的某些缓存是不会主动释放的,因此可能导致长连接占用大量的内存不释放。 PMS是MRS的监控进程,此进程会经常创建表分区或者新表,由于PostgreSQL会缓存当前会话访问过的对象的元数据,且PMS的数据库连接池连接会长时间存在,所以连接占用的内存会逐渐上升。
  • 问题现象 在MRS 2.x集群详情页面调整集群Task节点,将Task节点调整成0个,最终缩容失败,提示如下: This operation is not allowed because the number of instances of NodeManager will be less than the minimum configuration after scale-in, which may cause data loss.