E-MapReduce集群脚本-包年包月集群修改软件环境的利器

本文涉及的产品
EMR Serverless StarRocks,5000CU*H 48000GB*H
简介: 集群,特别是包年报月集群,在使用过程中,可能会有新的安装第三方软件,修改集群运行环境的需求。 E-MapReduce控制台1.5.0版本提供了集群脚本的功能,可以在集群创建好后批量选择节点,运行您指定的脚本,以实现个性化的需求。

集群,特别是包年报月集群,在使用过程中,可能会有新的安装第三方软件,修改集群运行环境的需求。例如Presto组件想增加udf、支持更多类型的插件,安装第三方软件,安装操作系统软件包,等等。由于包年包月集群不能直接释放了新建,所以需要一种引导操作的功能在集群使用中执行安装脚本。

E-MapReduce控制台1.5.0版本提供了集群脚本的功能,可以在集群创建好后批量选择节点,运行您指定的脚本,以实现个性化的需求。

集群脚本类似引导操作,您可以在集群创建好后安装很多目前集群尚未支持的软件到您的集群上,例如:

  • 使用 yum 安装已经提供的软件。
  • 直接下载公网上的一些公开的软件。
  • 读取 OSS 中您的自有数据。
  • 安装并运行一个服务,例如 Flink 或者 Impala,但需要编写的脚本会复杂些。

强烈建议您先用单个节点进行集群脚本的测试,测试都正确以后再在整个集群上操作。

如何使用

  1. 集群状态是空闲或者运行中的集群可以运行集群脚本,集群列表页面点击对应集群的查看详情按钮
  2. 左侧菜单单击集群脚本,即会进入该集群的集群脚本执行界面,右侧是已经执行过的集群脚本列表。
  3. 单击右上角创建并执行,进入创建界面。
  4. 填写创建界面上的配置项,选择执行的节点,点击执行,完成添加并执行操作。
  5. 集群脚本列表可以看到新创建的集群脚本,点击刷新可以更新集群脚本的状态。
  6. 点击查看详情可以看到脚本在各个节点上的运行情况,点击刷新可以更新脚本在各个节点上的运行状态。

只有空闲或者运行中的可用集群才能使用集群脚本功能。集群脚本适用于长期存在的集群,对按需创建的临时集群,应使用引导操作来完成集群初始化工作。

集群脚本会在您指定的节点上下载oss上的脚本并运行,根据返回值是否为0判断执行成功还是失败。如果运行状态是失败,您可以登录到各个节点上查看运行日志,运行日志记录在每个节点的/var/log/cluster-scripts/clusterScriptId目录下。如果集群配置了oss日志目录,运行日志也会上传到osslogpath/clusterId/ip/cluster-scripts/clusterScriptId目录下方便查看。

默认会使用 root 账户执行您指定的脚本,您可以在脚本中使用 su hadoop 切换到 Hadoop 账户。

集群脚本可能在部分节点上运行成功,部分节点上运行失败,例如节点重启导致的脚本运行失败。您可以在解决异常问题后,单独指定失败的节点再次运行。当集群扩容后,您也可以指定扩容的节点单独运行集群脚本。

1个集群同一时间只能运行一个集群脚本,如果有正在运行的集群脚本,无法提交执行新的集群脚本。每个集群最多保留10个集群脚本记录,超过10个需要将之前的记录删除才能创建新的集群脚本。

脚本的例子

类似引导操作的脚本,您可以在脚本中指定从 OSS 下载需要的文件,下面的例子会将 oss://yourbucket/myfile.tar.gz 这个文件下载到本地,并解压到 /yourdir 目录下:

#!/bin/bash
osscmd --id=<yourid> --key=<yourkey> --host=oss-cn-hangzhou-internal.aliyuncs.com get oss://<yourbucket>/<myfile>.tar.gz ./<myfile>.tar.gz
mkdir -p /<yourdir>
tar -zxvf <myfile>.tar.gz -C /<yourdir>

osscmd 已预安装在节点上,可以直接调用来下载文件。

注意:OSS 地址 host 有内网地址、外网地址和 VPC 网络地址之分。如果用经典网络,需要指定内网地址,杭州是 oss-cn-hangzhou-internal.aliyuncs.com。如果用 VPC 网络,要指定 VPC 内网可访问的域名,杭州是 vpc100-oss-cn-hangzhou.aliyuncs.com。

脚本也可以通过 yum 安装额外的系统软件包,下面的例子会安装 ld-linux.so.2:

#!/bin/bash
yum install -y ld-linux.so.2
相关实践学习
基于EMR Serverless StarRocks一键玩转世界杯
基于StarRocks构建极速统一OLAP平台
快速掌握阿里云 E-MapReduce
E-MapReduce 是构建于阿里云 ECS 弹性虚拟机之上,利用开源大数据生态系统,包括 Hadoop、Spark、HBase,为用户提供集群、作业、数据等管理的一站式大数据处理分析服务。 本课程主要介绍阿里云 E-MapReduce 的使用方法。
目录
相关文章
|
4月前
|
SQL 分布式计算 关系型数据库
阿里云E-MapReduce Trino专属集群外连引擎及权限控制踩坑实践
本文以云厂商售后技术支持的角度,从客户的需求出发,对于阿里云EMR-Trino集群的选型,外连多引擎的场景、Ldap以及Kerberos鉴权等问题进行了简要的实践和记录,模拟客户已有的业务场景,满足客户需求的同时对过程中的问题点进行解决、记录和分析,包括但不限于Mysql、ODPS、Hive connector的配置,Hive、Delta及Hudi等不同表格式读取的兼容,aws s3、阿里云 oss协议访问异常的解决等。
|
17天前
|
分布式计算 资源调度 Hadoop
在YARN集群上运行部署MapReduce分布式计算框架
主要介绍了如何在YARN集群上配置和运行MapReduce分布式计算框架,包括准备数据、运行MapReduce任务、查看任务日志,并启动HistoryServer服务以便于日志查看。
31 0
|
4月前
|
分布式计算 Hadoop Java
【集群模式】执行MapReduce程序-wordcount
【集群模式】执行MapReduce程序-wordcount
|
4月前
|
分布式计算 Java Hadoop
IDEA 打包MapReduce程序到集群运行的两种方式以及XShell和Xftp过期的解决
IDEA 打包MapReduce程序到集群运行的两种方式以及XShell和Xftp过期的解决
|
数据库 数据安全/隐私保护
阿里云E-MapReduce集群-开源Ldap密码不安全问题解决方案
社区开源Ldap密码不安全问题解决方案
|
分布式计算 资源调度 Hadoop
Hadoop基础学习---5、MapReduce概述和WordCount实操(本地运行和集群运行)、Hadoop序列化
Hadoop基础学习---5、MapReduce概述和WordCount实操(本地运行和集群运行)、Hadoop序列化
|
分布式计算 Ubuntu Hadoop
【集群模式】执行MapReduce程序-wordcount
因为是在hadoop集群下通过jar包的方式运行我们自己写的wordcount案例,所以需要传递的是 HDFS中的文件路径,所以我们需要修改上一节【本地模式】中 WordCountRunner类 的代码
|
弹性计算 分布式计算 Java
E-MapReduce集群-JAVA客户端远程连接HDFS
阿里云E-MapReduce集群-JAVA客户端远程连接HDFS
|
分布式计算 资源调度 Java
Hadoop中的MapReduce概述、优缺点、核心思想、编程规范、进程、官方WordCount源码、提交到集群测试、常用数据序列化类型、WordCount案例实操
Hadoop中的MapReduce概述、优缺点、核心思想、编程规范、进程、官方WordCount源码、提交到集群测试、常用数据序列化类型、WordCount案例实操
Hadoop中的MapReduce概述、优缺点、核心思想、编程规范、进程、官方WordCount源码、提交到集群测试、常用数据序列化类型、WordCount案例实操
|
数据采集 分布式计算 搜索推荐
Hadoop学习---7、OutputFormat数据输出、MapReduce内核源码解析、Join应用、数据清洗、MapReduce开发总结(一)
Hadoop学习---7、OutputFormat数据输出、MapReduce内核源码解析、Join应用、数据清洗、MapReduce开发总结(一)