E-MapReduce中引导操作安装使用Kylin-阿里云开发者社区

开发者社区> 阿里云EMR> 正文

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

简介: 目前E-MapReduce的开源组件还未包含Kylin,下面介绍一种通过创建集群时设置的引导操作来完成集群上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 $isVpc
if [ ! $regionId ]; then
    regionId="cn-hangzhou"
fi

if [ ! $isVpc ]; then
    isVpc=0
fi

isMaster=`hostname --fqdn | grep emr-header-1`
masterIp=`cat /etc/hosts | grep emr-header-1 | awk '{print $1}'`

bucket=""
if [[ $regionId == "cn-hangzhou" ]]; then
    bucket="emr-agent-pack"
elif [[ $regionId == "cn-beijing" ]]; then
    bucket="emr-bj"
elif [[ $regionId == "cn-shanghai" ]]; then
    bucket="emr-public-shanghai"
elif [[ $regionId == "cn-shenzhen" ]]; then
    bucket="emr-public-shenzhen"
fi

kylinpackUrl="http://emr-agent-pack.oss-cn-hangzhou-int    ernal.aliyuncs.com/kylin/apache-kylin-1.6.0-hbase1.x-bin.tar.gz"
if [[ isVpc -eq 1 ]]; then
    kylinpackUrl="http://$bucket.vpc100-oss-$regionId.aliyuncs.com/kylin/apache-kylin-1.6.0-hbase1.x-bin.tar.gz"
else
    kylinpackUrl="http://$bucket.oss-$regionId-internal.aliyuncs.com/kylin/apache-kylin-1.6.0-hbase1.x-bin.tar.gz"
fi

cd /opt/apps
wget $kylinpackUrl
tar xvf apache-kylin-1.6.0-hbase1.x-bin.tar.gz
rm -rf /opt/apps/apache-kylin-1.6.0-hbase1.x-bin.tar.gz
chown -R hadoop:hadoop /opt/apps/apache-kylin-1.6.0-hbase1.x-bin

ln -s /opt/apps/apache-kylin-1.6.0-hbase1.x-bin /usr/lib/kylin-current
echo "export KYLIN_HOME=/usr/lib/kylin-current" >>/etc/profile.d/hadoop.sh
echo "export HIVE_CONF=/etc/emr/hive-conf" >>/etc/profile.d/hadoop.sh

echo "
if [ $isMaster ]; then
    sleep 5
    su -l hadoop -c '/opt/apps/apache-kylin-1.6.0-hbase1.x-bin/bin/kylin.sh start'
else
    echo 'slave no need to start kylin'
fi
" >/usr/local/emr/emr-bin/script/hive/after_start.sh

2.OSS存储kylin_bootstrap.sh

将1中的kylin_bootstrap.sh脚本上传到OSS中,创建集群的时候需要从OSS中选择

3.创建E-MapReduce集群(添加引导操作)

在E-MapReduce中创建集群(必须勾选HBase),在创建集群的基础配置页面,点击添加引导操作,选择2中OSS的kylin_bootstrap.sh脚本,并且根据需求填写可选参数(即1中介绍的脚本入参),如下图所示(在深圳region创建classic集群)
kylinbootstrap
)

4.验证

集群创建完成,状态显示为空闲后,打隧道到master节点,在浏览器中输http://localhost:7070/kylin , 查看Kylin是否正常。

备注
上述创建的Kylin是非HA,只有master上面一台Kylin的webserver。
如果需要多台,则可以在slave上面启动,需要做如下操作:
1). 修改kylin.properties 详见Kylin文档

kylin.rest.servers=emr-header-1:7070,emr-worker-1:7070,emr-worker-2:7070 //比如启动了三台
kylin.server.mode=all //只要有一台配置成all,其它配置成query

2). 在slave节点启动Kylin,并重启master节点的Kylin

sudo su hadoop
/usr/lib/kylin-current/bin/kylin.sh start

3). 配置SLB负载均衡

 通过阿里云的SLB负载均衡,将上述启动的所有Kylin的webserver进行负载均衡的配置,[详见SLB](https://help.aliyun.com/document_detail/27551.html?spm=5176.doc27552.6.561.90KCkd)

版权声明:本文中所有内容均属于阿里云开发者社区所有,任何媒体、网站或个人未经阿里云开发者社区协议授权不得转载、链接、转贴或以其他方式复制发布/发表。申请授权请邮件developerteam@list.alibaba-inc.com,已获得阿里云开发者社区协议授权的媒体、网站,在转载使用时必须注明"稿件来源:阿里云开发者社区,原文作者姓名",违者本社区将依法追究责任。 如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:developer2020@service.aliyun.com 进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
+ 订阅

阿里巴巴开源大数据技术团队成立阿里云EMR技术圈, 每周推送前沿技术文章,直播分享经典案例、在线答疑,营造纯粹的开源大数据氛围,欢迎加入!加入钉钉群聊阿里云E-MapReduce交流2群,点击进入查看详情 https://qr.dingtalk.com/action/joingroup?code=v1,k1,cNBcqHn4TvG0iHpN3cSc1B86D1831SGMdvGu7PW+sm4=&_dt_no_comment=1&origin=11

官方博客
官网链接