当您已经完成数栖云的注册及下单流程后,想要完成后续的开发工作,您需要先进行执行代理及客户端的部署,以及计算引擎与执行代理的配置。具体的操作步骤请仔细按照如下文档进行操作。
一、执行代理及集群客户端部署
注:执行代理部署步骤为通用版本,即无论您使用何种集群,都需要按照此步骤进行执行代理的部署;在执行代理服务器上配置集群客户端则需要您根据企业自身所拥有的集群,进行相应的配置,如果您选择错误,则无法进行正常配置。
Step 1. 执行代理部署:
1、安装前准备
1.1 确认自己的集群类型和下载的执行代理安装包类型是否一致。
下载的执行代理安装包名即为集群类型,如果发现安装包名与集群类型不一致,请重新联系客服并索取正确的执行代理安装包下载地址。
1.2 确认部署的执行代理的服务器环境。
1.2.1 确认安装执行代理的服务操作系统是centos7.0及以上。
1.2.2 确保服务器上没有运行其他的服务(否则可能会影响其他程序的运行)。
1.2.3 服务器配置至少需要4c/8g/100g数据盘。
1.2.4 服务器上的时间服务器同步需要配置正确。
1.3 为执行代理服务器申请LICENSE。
获取执行代理服务器的内网MAC地址,登陆数栖云-工单系统(登录后界面右上角)发起工单,标题:申请License,描述:MAC地址。
1.4 为执行代理服务器申请IP白名单开通。
IP白名单开通,登陆数栖云-工单系统(登录后界面右上角)发起工单,标题:申请白名单开通,描述:公网IP。
2、准备基础环境(使用有 root 权限的账号操作)
2.1 关闭部署执行代理的服务器上的防火墙和selinux
sudo systemctl stop firewalld
sudo systemctl disable firewalld
sudo setenforce 0
sudo sed -i '/SELINUX/s/enforcing/disabled/' /etc/selinux/config
2.2 使用sudo权限的账号创建deploy用户并设置登录密码
sudo useradd deploy
sudo passwd deploy
2.3 建议单独挂载 {你的数据盘} 至/data/目录并配置开机自启(若已挂载数据盘则无需操作)
sudo mount {你的数据盘} /data
echo "mount {你的数据盘} /data" | sudo tee -a /etc/rc.d/rc.local > /dev/null
sudo chmod +x /etc/rc.d/rc.local
2.4 创建程序部署目录并授权给deploy用户
sudo mkdir -p /opt/{workspace,third} /data/{dubhe-node,dsource} /opt/conf/{dubhe-node,dsource}
sudo chown -R deploy:deploy /opt/conf /opt/third /opt/workspace /data
2.5 部署jdk1.8环境
#安装jdk环境,请先将包放置到/opt/third/目录下
cd /opt/third
tar -zxvf jdk-8u144-linux-x64.tar.gz #根据您的实际jdk版本进行修改
ln -sfT ./jdk1.8.0_144 jdk #根据您的实际jdk版本进行修改
#配置单deploy用户的java环境变量
echo -e "export JAVA_HOME=/opt/third/jdk\nexport PATH=\$JAVA_HOME/bin:\$PATH" | sudo tee -a /home/deploy/.bashrc > /dev/null
sudo chown -R deploy:deploy /home/deploy/.bashrc /opt/third/jdk1.8.0_144 /opt/third/jdk
#验证安装是否正确,看到输出:java version "1.8.0_144"等字样即可
sudo su - deploy -c "source ~/.bashrc && java -version"
2.6 配置LICENSE环境变量。
#配置单deploy用户的LICENSE环境变量
echo -e "export SECURITY_LICENSE=您申请到的LICENSE"| sudo tee -a /home/deploy/.bashrc > /dev/null
3、部署执行代理
注意:以下所有操作均请用deploy用户操作。“{version}” 为您实际获取到的安装包的版本号。
3.1. 部署dubhe-node,“{version}” 为您实际获取到的dubhe-node安装包的版本号。
#请先将dubhe-node的压缩包放到/opt/workspace/
cd /opt/workspace/
tar -zxvf dubhe-node-{version}.tgz
ln -s dubhe-node-{version} dubhe-node
cp /opt/workspace/dubhe-node/conf/application.properties /opt/conf/dubhe-node/dubhe-node.properties
vi /opt/conf/dubhe-node/dubhe-node.properties
#然后根据注释提示填写配置文件,主要修改如下配置
cluster.vendor.type= #您的hadoop集群厂商类型
#登录 http://shuqi.dtwave.com/ent/account#/accessKey 查看并记录自己的accessKey和secretKey。
node.isNeedSigned=true
node.accessKey= #上面查看到的accessKey
node.secretKey= #上面查看到的secretKey
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/hive #hive的源数据库链接地址
spring.datasource.username=hive #hive的源数据库用户名
spring.datasource.password=hive #hive的源数据库密码
#最后启动服务:
cd /opt/workspace/dubhe-node && bash sbin/app.sh start
#验证,查询结果显示 "dubhe-node-provider-{version}.jar"等字样,即表示启动正常。
jps | grep dubhe-node
3.2. 部署dsource,“{version}” 为您实际获取到的dsource安装包的版本号。
#将dsource的压缩包放到/opt/workspace/
cd /opt/workspace/
tar -zxvf dsource-{version}.tgz
ln -s dsource-{version} dsource
cp /opt/workspace/dsource/conf/application.properties /opt/conf/dsource/dsource-service.properties
vi /opt/conf/dsource/dsource-service.properties
#然后根据注释提示填写配置文件,主要修改如下配置
spi.plugin.default.vendor.name= #您的hadoop集群厂商类型
#登录 http://shuqi.dtwave.com/ent/account#/accessKey 查看并记录自己的accessKey和secretKey。
dsource.isNeedSigned=true
dsource.accessKey= #上面查看到的accessKey
dsource.secretKey= #上面查看到的secretKey
#最后启动服务:
cd /opt/workspace/dsource && bash sbin/app.sh start
#验证,查询结果显示 "dsource-provider-{version}.jar"等字样,即表示启动正常。
jps | grep dsource
3.3. 部署aurora-gateway,“{version}” 为您实际获取到的aurora-gateway安装包的版本号。【目前只支持企业版】
#创建服务依赖目录
mkdir -p /opt/conf/aurora-gateway /data/aurora-gateway
#将aurora-gateway的压缩包放到/opt/workspace/
cd /opt/workspace/
tar -zxvf aurora-gateway-{version}.tgz
ln -s aurora-gateway-{version} aurora-gateway
cp /opt/workspace/aurora-gateway/conf/aurora-gateway.yaml /opt/conf/aurora-gateway/
vi /opt/conf/aurora-gateway/aurora-gateway.yaml
#然后根据注释提示填写配置文件,主要修改如下配置,请注意格式,key:和value之间有空格
exposeEndpoint: https://xxx.xxx.xxx.xxx:8925 #您的API对外提供服务地址,协议:https
#登录 http://shuqi.dtwave.com/ent/account#/accessKey 查看并记录自己的accessKey和secretKey。
accessKey: #上面查看到的accessKey
secretKey: #上面查看到的secretKey
#最后启动服务:
cd /opt/workspace/aurora-gateway && bash sbin/app.sh start
#验证,查询结果显示 "aurora-gateway-provider-{version}.jar"等字样,即表示启动正常。
jps | grep aurora-gateway
3.4. 部署datax/dipper-plugins/dsource-plugins
#将datax-v4.6.0.tgz,dipper-plugins-v4.6.0.tgz,dsource-plugins-v4.6.0.tgz三个压缩包放到/opt/third/
cd /opt/third/
tar -zxvf datax-v4.6.0.tgz
tar -zxvf dipper-plugins-v4.6.0.tgz
tar -zxvf dsource-plugins-v4.6.0.tgz
vi /opt/third/datax/conf/.secret.properties
# #配置datax,根据注释提示进行填写,主要修改如下配置:
hadoop.plugin.default.vendor.name= #您的hadoop集群厂商的类型
cluster.conf.dir= #您的hadoop配置文件目录
#datax配置好如上配置即可,无需启动。
#dipper-plugins/dsource-plugins只需要解压好,然后做个软链接:
ln -s dipper-plugins-v1.0.0 dipper-plugins
ln -s dsource-plugins-v1.0.0 dsource-plugins
datax无需特殊配置,也无需启动,dsource和dubhe-node需重启。
3.5. 开启kerberos的情况下
说明:开启kerberos的情况下,需要额外配置dubhe-node和dsource的配置,具体如下。
3.5.1 下载keytab认证信息并解压,将解压出来的user.keytab放到/etc/security/keytabs/下,解压出来的krb5.conf放到/etc/security/下
3.5.2 安装kerberos客户端
sudo yum install krb5-server krb5-libs krb5-workstation
3.5.3 根据下载的keytab查询对应的Principal
klist -ket /etc/security/keytabs/user.keytab
结果如下:
Keytab name: FILE:/etc/security/keytabs/user.keytab
KVNO Timestamp Principal
---- ------------------- ------------------------------------------------------
7 03/27/2019 20:16:46 test1@HADOOP.COM (aes256-cts-hmac-sha1-96)
7 03/27/2019 20:16:46 test1@HADOOP.COM (aes128-cts-hmac-sha1-96)
3.5.4 查找hiveserver2的Principal
在集群的hive-site.xml配置文件中找到“hive.server2.authentication.kerberos.principal”这个配置项的值。
vi hive-site.xml
-----------------------------------------------
<property>
<name>hive.server2.authentication.kerberos.principal</name>
<value>hive/hadoop.7333b9fe_1a81_41a5_9689_1c9306869c8e.com@7333B9FE_1A81_41A5_9689_1C9306869C8E.COM</value>
</property>
3.5.5 根据dubhe-node和dsource配置文件中的注释信息修改配置项,主要修改如下项:
security.auth.type= kerberos
keytab.dir=/etc/security/keytabs/
krb5.conf.path=/etc/krb5.conf
#通过kerberos认证使用的principal和keyTab,所有组件使用同一个
user.principal=test1@HADOOP.COM
user.keytab=/etc/security/keytabs/user.keytab
#hive Server2
hive.server2.principal=hive/hadoop.7333b9fe_1a81_41a5_9689_1c9306869c8e.com@7333B9FE_1A81_41A5_9689_1C9306869C8E.COM
按照上面的启动方式,重新启动dubhe-node和dsource服务。
Step 2.在执行代理上配置集群客户端:
注:请根据您的集群类型点击对应链接查看教程。(以下客户端配置成功之后,记得回来往下继续查看后续教程哦!)
--->【CDH】配置集群客户端教程
--->【HDP】配置集群客户端教程
--->【数栖EMR】配置集群客户端步骤
--->【华为 FusionInsight MRS】配置集群客户端教程
---> kerberos 认证相关配置教程
以上执行代理和集群客户端都部署完成之后,需要回到数栖平台界面上进行计算引擎和资源组的配置,下面将重点介绍如何进行配置及完成关键信息的查找。
二、计算引擎信息与资源组配置
关于计算引擎及资源组的问题,可以先通过《资源组是什么?选择资源组是做什么用的?》进行了解~
Step 1. 资源组配置
1.添加资源组
进入资源管理-资源组,点击添加资源组,在弹窗中输入名称,描述可选填,点击确定完成。
2.配置资源组
点击资源组名称,进入资源组配置。
2.1 添加服务器
点击添加服务器,在弹窗中输入服务器名称、IP地址(企业自己部署的服务器的外网IP(即可以通过这个IP访问到部署执行代理的这台服务器))、并发数,描述可选填,点击确定完成。注:一个服务器只能在一个资源组下。
2.2 配置服务器
点击配置,在弹窗中开启所需服务,并输入端口号。
- 数据源服务端口(默认8444)
登录部署的部署执行代理的服务器,查看dsource服务的配置文件:
grep 'server.port' /opt/conf/dsource/dsource-service.properties
- 数据开发服务端口(默认8443)
登录部署的部署执行代理的服务器,查看dubhe-node服务的配置文件:
grep 'server.port' /opt/conf/dubhe-node/dubhe-node.properties
点击测试连接,连接通过后,点击确定完成配置服务。
3.授权资源组
配置好资源组后,可将资源组授权到产品,点击授权,选择要授权的产品,点击确定。
step 2、计算引擎配置
注:以下图示为计算引擎配置样例,仅提供输入格式参考,不包含真实连接信息。
1.添加计算引擎
进入资源管理-计算引擎,点击添加计算引擎。注:目前仅支持Hadoop类型的计算引擎。输入引擎名称,选择类型为Hadoop,选择厂商(根据自身集群情况选择),配置Yarn、HiveServer、HDFS,用户名和密码选填,点击确定完成添加。
以下将为您说明不同厂商:CDH、HDP、Apache-Hadoop、FusionInsight & 华为云 MRS、阿里云EMR和腾讯云EMR的Yarn、HiveServer、HDFS信息查找方式,您可以根据自己的实际需求找到自己所需的对应厂商各信息查找方式。
1. CDH
①yarn信息查找
YARN服务的IP地址信息查找方式:集群->YARN (MR2 Included)->实例->{ResourceManager所在机器},如下图所示
YARN服务的端口信息(默认为8088)查找方式:集群->YARN (MR2 Included)->配置->搜索“yarn.resourcemanager.webapp.address”,如下图所示
YARN服务的队列信息查找方式:集群->YARN (MR2 Included)->资源池”,如下图所示
② HiveServer信息查找方式(高可用请按照实际情况配置)
HiveServer信息查找方式:集群->Hive->实例->{HiveServer2所在机器},如下图所示
HiveServer服务的端口信息(默认为10000)查找方式:集群->Hive->配置->搜索“hive.server2.thrift.port”,如下图所示
③ HDFS信息查找方式
HDFS信息查找方式:集群->HDFS->实例->{NameNode所在机器},如下图所示
HDFS服务的端口信息(默认为8020)查找方式:集群->HDFS->配置->搜索“fs.defaultFS”,如下图所示
高可用情况下HDFS服务的namespace信息查找方式:集群->HDFS->配置->搜索“NameNode Nameservice”,如下图所示
2. HDP
① YARN信息查找方式
② HiveServer信息查找方式(HDP集群默认为高可用模式)
③ HDFS信息查找方式
3. Apache-Hadoop
①YARN信息查找方式
grep -A5 'yarn.resourcemanager.webapp.address' /{部署路径}/hadoop/etc/hadoop/yarn-site.xml
#查询结果格式如下,示例引用了变量${yarn.resourcemanager.hostname},请自行在yarn-site.xml中查询该值。
...
<name>yarn.resourcemanager.webapp.address</name>
<!-- <value>${yarn.resourcemanager.hostname}:8088</value> -->
<value>0.0.0.0:8088</value>
</property>
...
② HiveServer信息查找方式
grep -A5 'hive.server2.thrift.port' /{启动hiveserver2进程的服务器上服务的部署路径}/hive/conf/hive-site.xml或hive-default.xml
#查询结果格式如下:
...
<name>hive.server2.thrift.port</name>
<value>10000</value>
<description>Port number of HiveServer2 Thrift interface when hive.server2.transport.mode is 'binary'.</description>
</property>
...
注意:hiveserver2的地址即为启动hiveserver2进程的服务器IP。
③ HDFS信息查找方式(示例为高可用模式)
grep -A5 'fs.defaultFS' /{部署路径}/hadoop/etc/hadoop/core-site.xml
#查询结果格式如下,bigdata就是fs.defaultFS的值:
<name>fs.defaultFS</name>
<value>hdfs://bigdata</value>
<description>The name of the default file system</description>
</property>
...
grep -A5 'dfs.namenode.rpc-address' /{部署路径}/hadoop/etc/hadoop/core-site.xml
#查询结果格式如下:
<name>dfs.namenode.rpc-address.bigdata.namenode1</name>
<value>127.0.0.1:8020</value>
</property>
<property>
<name>dfs.namenode.rpc-address.bigdata.namenode2</name>
<value>127.0.0.2:8020</value>
</property>
...
4. FusionInsight & 华为云 MRS
① YARN信息查找方式(端口默认26004)
② HiveServer信息查找方式(导出所有配置文件后再查询,端口默认21066)
③ HDFS信息查找方式(默认端口25000)
5. 阿里云EMR和腾讯云EMR
请直接在相关产品界面上按照产品使用文档进行查找。
按照以上步骤完成计算引擎的配置后,您即已完成全部的资源配置工作,可以按照后续的开发计划进入到离线开发中心进行操作啦!如果您之后遇到任何问题,依然可以向我们反馈,我们将及时帮您进行解决。