如何在E-MapReduce上使用引导操作安装kafka组件

1. 什么是引导操作

关于E-MapReduce上引导操作的概念和使用方式请参考文档。

2. 编写安装Kafka组件的脚本

在E-MapReduce中编写安装Kafka组件脚本主要有以下几步:

  1. 下载Kafka-0.10.0.0安装包
  2. 修改Kafka配置文件
  3. 创建Kafka Log目录
  4. 启动Kafka daemon进程

以下是安装Kafka组件的脚本简单示例:

#!/bin/bash
isMaster=`hostname --fqdn | grep emr-header`

if [ -n "$isMaster" ] ;then
    echo "Master Node does not need to start kafka!"
else
    echo "=> Download kafka package"
    wget http://emr-agent-pack.oss-cn-hangzhou-internal.aliyuncs.com/bootstrap/kafka/0-10-0-0/kafka_2.10-0.10.0.0.tgz
    tar xvf ./kafka_2.10-0.10.0.0.tgz -C /opt/apps/

    echo "=> Modify Kafka Configuration"
    echo "===> Replace broker id"
    WORKER_ID=`hostname | cut -d '-' -f 3 | cut -d '.' -f 1`
    sed -i "s/broker_id/$WORKER_ID/g" /opt/apps/kafka_2.10-0.10.0.0/config/server.properties

    echo "===> Replace zookeeper address"
    ZK_ADDR="emr-header-1:2181,emr-header-2:2181,emr-header-3:2181\/kafka-0.10.0.0"
    sed -i "s/zookeeper_address/$ZK_ADDR/g" /opt/apps/kafka_2.10-0.10.0.0/config/server.properties

    echo "===> Create kafka log dir"
    mkdir -p "/mnt/disk1/log/kafka-0.10.0.0"
    mkdir -p "/mnt/disk2/log/kafka-0.10.0.0"
    mkdir -p "/mnt/disk3/log/kafka-0.10.0.0"
    mkdir -p "/mnt/disk4/log/kafka-0.10.0.0"

    echo "===> Replace log dirs"
    KAFKA_LOG_DIR_STRING="\/mnt\/disk1\/log\/kafka-0.10.0.0,\/mnt\/disk2\/log\/kafka-0.10.0.0,\/mnt\/disk3\/log\/kafka-0.10.0.0,\/mnt\/disk4\/log\/kafka-0.10.0.0"
    sed -i "s/log_dirs/$KAFKA_LOG_DIR_STRING/g" /opt/apps/kafka_2.10-0.10.0.0/config/server.properties

    echo "===> Replace listeners"
    WORKER_HOSTNAME=`hostname`
    echo "listeners=PLAINTEXT://$WORKER_HOSTNAME:9092" >> /opt/apps/kafka_2.10-0.10.0.0/config/server.properties

    echo "===> Replace advertised listeners"
    echo "advertised.listeners=PLAINTEXT://$WORKER_HOSTNAME:9092" >> /opt/apps/kafka_2.10-0.10.0.0/config/server.properties

    echo "=> Start kafka daemon"
    /opt/apps/kafka_2.10-0.10.0.0/bin/kafka-server-start.sh -daemon /opt/apps/kafka_2.10-0.10.0.0/config/server.properties &

    echo "=> Clean"
    rm -f ./kafka_2.10-0.10.0.0.tgz
fi

上述脚本可以直接使用,安装的软件也是由E-MapReduce提供的。当然你可以基于这个脚本再修改,也可以使用自己的Kafka安装包,安装任意版本。

另外需要注意的是,这个脚本中只修改了几个必要的参数,自定义的调优参数需要你额外补充到脚本中,或者直接在安装包里预先修改好。

上传脚本

将上面的脚本上传到你自己的OSS中,可以通过OSS控制台上传,这里我们命名这个脚本为install_kafka.sh(任意你喜欢的名字都可以)。

安装

参照帮助文档,创建集群时点击添加引导操作,分别选择刚才上传的install_kafka.sh脚本,创建1个引导操作步骤。集群创建好后,通过集群详情页的引导/软件配置:无异常来确定引导操作执行成功

时间: 2024-08-05 10:19:37

如何在E-MapReduce上使用引导操作安装kafka组件的相关文章

E-MapReduce中引导操作安装使用Kylin

        目前E-MapReduce的开源组件还未包含Kylin,下面介绍一种通过创建集群时设置的引导操作来完成集群上Kylin的部署. 1.引导操作shell脚本(kylin_bootstrap.sh) 入参: 参数名 取值 备注 regionId cn-hangzhou/cn-beijing 创建集群所在的regionId isVpc 0/1 创建的是否是vpc集群 #!/bin/bash regionId="$1" isVpc=$2 echo $regionId echo

用引导操作给E-MapReduce集群安装impala

当前emr最新版本2.0.1没有impala组件,需要额外安装.本文介绍如何在emr 2.0.1版本上用E-MapReduce软件配置功能修改hdfs配置,引导操作安装impala 2.5.0 for cdf 5.7.1版本,shell作业来启动impala的完整过程. 软件配置 impala对hdfs组件的配置有要求,需要用软件配置功能修改hdfs的配置.软件配置功能可以修改hadoop组件的配置,详见: 帮助文档 本地创建一个hdfs.json文件,可以直接从oss下载,内容如下,通过oss

如何在Web页面上直接打开、编辑、创建Office文档

web|创建|页面 有朋友询问如何在Web页面上做到像SharePoint中的效果一样,能直接激活客户端的Word来打开.doc文件,而不是类似直接点击.doc文档链接时Word在IE中被打开那样.想想这个问题应该很多人都会感兴趣,所以干脆写一篇blog来大致描述一下方法. 在安装Office2003以后,有一个ActiveX控件被安装到了系统中,这个控件位于"Program Files\Microsoft Office\OFFICE11\owssupp.dll".通过这个控件,客户端

用引导操作打通presto访问oss数据

目前产品组件presto还不能直接访问oss数据,如果有需求,可以参考本文用引导操作打通presto访问oss数据. 准备脚本 下载 脚本,放在您的oss合适的目录里. 创建集群 参照 帮助文档 ,创建集群时点击添加引导操作,分别选择刚才上传的ossforpresto.sh脚本,创建以个引导操作步骤.集群创建好后,通过集群详情页的引导/软件配置:无异常来确定引导操作执行成功 验证 hive建表 下文举了一二创建数据在oss上的uservisits表的例子,请将表名,字段,oss信息替换为您oss

如何在 Linux 系统上安装 Suricata 入侵检测系统

如何在 Linux 系统上安装 Suricata 入侵检测系统 随着安全威胁的不断发生,入侵检测系统(IDS)在如今的数据中心环境中显得尤为必要.然而,随着越来越多的服务器将他们的网卡升级到10GB/40GB以太网,对如此线路上的硬件进行计算密集型的入侵检测越来越困难.其中一种提升入侵检测系统性能的途径是多线程入侵检测系统,它将 CPU 密集型的深度包检测工作并行的分配给多个并发任务来完成.这样的并行检测可以充分利用多核硬件的优势来轻松提升入侵检测系统的吞吐量.在这方面有两个知名的开源项目,分别

如何在 CentOS 7 上安装 Redis 服务器

如何在 CentOS 7 上安装 Redis 服务器 大家好,本文的主题是 Redis,我们将要在 CentOS 7 上安装它.编译源代码,安装二进制文件,创建.安装文件.在安装了它的组件之后,我们还会配置 redis ,就像配置操作系统参数一样,目标就是让 redis 运行的更加可靠和快速. Redis 服务器 Redis 是一个开源的多平台数据存储软件,使用 ANSI C 编写,直接在内存使用数据集,这使得它得以实现非常高的效率.Redis 支持多种编程语言,包括 Lua, C, Java,

用引导操作给E-MapReduce集群安装presto组件

当前emr最新版本1.3.0没有presto组件,需要额外安装.本文介绍如何用E-MapReduce引导操作来安装presto 0.147版本.引导操作可以在集群创建时执行指定的脚本,详见: 帮助文档 .我们要执行的引导操作是安装配置jdk8,安装配置presto 0.147,安装presto cli(可选). 准备脚本 上传安装jdk8的脚本 当前emr集群的jdk版本是1.7,由于presto 0.86以上版本最低jdk要求是jdk8,所以需要给集群安装jdk8.以后集群默认jdk版本升级到

如何在Web页面上直接打开、编辑、创建Office文档_javascript技巧

如何在Web页面上直接打开.编辑.创建Office文档  有朋友询问如何在Web页面上做到像SharePoint中的效果一样,能直接激活客户端的Word来打开.doc文件,而不是类似直接点击.doc文档链接时Word在IE中被打开那样.想想这个问题应该很多人都会感兴趣,所以干脆写一篇blog来大致描述一下方法. 在安装Office2003以后,有一个ActiveX控件被安装到了系统中,这个控件位于"Program Files\Microsoft Office\OFFICE11\owssupp.d

如何在 AIX 系统上安装和配置 IBM OpenPages GRC

了解在 AIX 系统上安装和配置 IBM OpenPages GRC IBM OpenPages GRC 简介 IBM OpenPages GRC(Governance.Risk and Compliance)平台是一个帮助企业管理整个企业风险和合规性的综合性平台.它提供一组涵盖风险和合规性领域(包括操作风险.策略和合规性.财务控制管理.IT 治理和内部审计)的核心服务和功能组件.从而帮助管理者全面和深入了解企业管理.风险和合规性.本文旨在介绍如何在 AIX 系统上安装和配置 IBM OpenP