分享

阿里开源Zeus云梯分布式作业调度平台安装教程

本帖最后由 pig2 于 2016-5-1 21:50 编辑


第一步:软件包的下载
[mw_shl_code=html,false]apache-tomcat-7.0.69.tar.gz  下载URL:
http://mirror.bit.edu.cn/apache/tomcat/tomcat-7/v7.0.69/bin/
apache-maven-3.2.5-bin.tar.gz下载URL:
http://mirror.bit.edu.cn/apache//maven/maven-3/3.2.5/binaries/
zeus2-master.zip下载URL:
https://github.com/michael8335/zeus2
[/mw_shl_code]

第二步:解压和环境变量配置
1.apache tomcatmaven软件包上传到/root/soft/apache/
zeus2 上传到/root/soft  (如果没有这两个路径可执行创建)
并进入软件包目录下解压
[mw_shl_code=shell,false]tar -zxvf apache-tomcat-7.0.69.tar.gz
tar -zxvf apache-maven-3.2.5-bin.tar.gz
unzip zeus2-master.zip[/mw_shl_code]
2.配置maven
vi /etc/profile 在里面新增mavenhome目录,并将它的bin加入到path后面
[mw_shl_code=shell,false]MAVEN_HOME=/root/soft/apache/apache-maven-3.2.5
exportPATH=$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin

cd /root/soft/apache/
mkdir mvn_repo 资源库存放文件夹
cd /root/soft/apache/apache-maven-3.2.5/conf[/mw_shl_code]

编辑settings.xml
将里面对应的localRepository 标签注释去掉,修改内容为:
[mw_shl_code=xml,false]<localRepository>/root/soft/apache/mvn_repo</localRepository>[/mw_shl_code]
第三步:配置Zeus
1. [mw_shl_code=shell,false]vi /root/soft/zeus2-master/web/src/main/filter/antx.properties[/mw_shl_code]
[mw_shl_code=xml,false]#环境配置,用来标记环境,可以配合Environment使用
zeus.env=test-env
zeus.loggingRoot=/root/soft/zeuslog
zeus.loggingLevel=warn
#任务执行文件夹,每次任务都会在此文件夹下新建一个临时文件夹
zeus.localdata.dir=/root/soft/run_job_dir
#此处必须是hdfs路径,所有的上传附件都会存放在下面路径上
zeus.hdfsLibPath=/hdfs-upload-dir
#环境配置,如果是在一个集群中,需要配置城同一个名称
zeus.schedule.group=test-env
#Scheduler 与 Worker 通信的端口
zeus.connect.port=9887
#hadoop jobtracker地址,填写ip+port 或者domain+port
zeus.jobtracker=127.0.0.1:50030
#zk配置非必选,可以为空,此处的zk是用来通知任务的成功失败事件的
zeus.zookeeper.host=[/mw_shl_code]
2.拷贝antx.properties 到用户home目录下
[mw_shl_code=shell,false]cp antx.properties ~/[/mw_shl_code]
3.设置/root/soft/zeus2-master/web/pom.xml修改相应的highcharts-1.4.0.jar 路径
[mw_shl_code=xml,false]<local.highcharts>/root/soft/zeus2-master/web/libs/highcharts-1.4.0.jar</local.highcharts>[/mw_shl_code]
4.mysql中创建zeus数据库
mysql> create database zeus;
Query OK, 1 row affected (0.00 sec)
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| hive               |
| mysql              |
| test               |
| zeus               |
+--------------------+
5 rows in set (0.02 sec)
配置zeus数据库连接
/root/soft/zeus2-master/web/src/main/resources/persistence.xml
[mw_shl_code=xml,false]<bean id="dataSource"class="org.apache.commons.dbcp.BasicDataSource">             <propertyname="driverClassName" value="com.mysql.jdbc.Driver"/>
               <propertyname="url" value="jdbc:mysql://master:3306/zeus2?createDatabaseIfNotExist=true&useUnicode=true&characterEncoding=utf-8&autoReconnect=true&autoReconnectForPools=true"/>
                <propertyname="username" value="root"/>
                <propertyname="password" value="123456"/>
                <propertyname="maxActive" value="20" />
                <propertyname="initialSize" value="3" />
                <propertyname="maxWait" value="60000" />
                <propertyname="maxIdle" value="15" />
                <propertyname="minIdle" value="5" />
     <propertyname="removeAbandoned" value="true" />  <propertyname="removeAbandonedTimeout" value="180" />
       <property name="validationQuery" value="SELECT 1"/>
       <property name="testOnBorrow" value="true" />
       </bean>[/mw_shl_code]

5.配置hadoop homehive home
[mw_shl_code=shell,false]HADOOP_HOME=/opt/cloudera/parcels/CDH/lib/hadoop
HIVE_HOME=/opt/cloudera/parcels/CDH/lib/hive
export HADOOP_HOME  HIVE_HOME[/mw_shl_code]

安装dos2unix
[mw_shl_code=shell,false]yum install -y dos2unix[/mw_shl_code]
6.打包zeus
进入zeus根目录顺序执行以下命令
[mw_shl_code=shell,false]mvn clean:clean
mvn package -Dmaven.test.skip=true
cd deploy
mvn assembly:assembly[/mw_shl_code]

7.war发布到tomcat
构建出的war包在/deploy/target/zeus.war 复制到tomat/webapps 目录下
重启tomcat
http://192.168.1.100:8080/zeus
zeus.jpg

已有(6)人评论

跳转到指定楼层
xuliang123789 发表于 2016-5-4 08:26:33
谢谢楼主,学习一下,赞~~
回复

使用道具 举报

oozie 发表于 2017-2-10 11:26:29
lz,请问一下,zeus2读取hive元数据库的信息在哪配置? 按照以上步骤部署到tomcat的时候报错,大概意思就是读取hive元数据信息错误
回复

使用道具 举报

一期一会 发表于 2018-7-21 20:05:22
楼主,您好
我按照您的方案执行,zeus一直没有办法在tomcat启动项目,一直报错
我的环境:
hadoop 2.5.0
hive 0.14
jdk 1.7
mvn 3.2
Caused by: org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [com.taobao.zeus.store.CliTableManager]: Constructor threw exception; nested exception is java.lang.NumberFormatException: For input string: "0s"
        at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:115)
        at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:61)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:877)
        ... 45 more
Caused by: java.lang.NumberFormatException: For input string: "0s"
        at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
        at java.lang.Long.parseLong(Long.java:441)
        at java.lang.Long.parseLong(Long.java:483)
        at org.apache.hadoop.conf.Configuration.getLong(Configuration.java:972)
        at org.apache.hadoop.hive.conf.HiveConf.getLongVar(HiveConf.java:989)
        at org.apache.hadoop.hive.conf.HiveConf.getLongVar(HiveConf.java:1002)
        at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.init(HiveMetaStore.java:357)
        at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.<init>(HiveMetaStore.java:286)
        at org.apache.hadoop.hive.metastore.RetryingHMSHandler.<init>(RetryingHMSHandler.java:54)
        at org.apache.hadoop.hive.metastore.RetryingHMSHandler.getProxy(RetryingHMSHandler.java:59)
        at org.apache.hadoop.hive.metastore.HiveMetaStore.newHMSHandler(HiveMetaStore.java:4060)
        at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.<init>(HiveMetaStoreClient.java:121)
        at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.<init>(HiveMetaStoreClient.java:104)
        at com.taobao.zeus.store.CliTableManager.<init>(CliTableManager.java:39)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
        at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:100)
        ... 47 more

Jul 21, 2018 4:34:32 AM org.apache.catalina.core.StandardContext startInternal
SEVERE: One or more listeners failed to start. Full details will be found in the appropriate container log file
Jul 21, 2018 4:34:32 AM org.apache.catalina.core.StandardContext startInternal
SEVERE: Context [/zeus] startup failed due to previous errors
Jul 21, 2018 4:34:32 AM org.apache.catalina.core.ApplicationContext log
INFO: Closing Spring root WebApplicationContext
回复

使用道具 举报

一期一会 发表于 2018-7-24 16:30:19
一期一会 发表于 2018-7-21 20:05
楼主,您好
我按照您的方案执行,zeus一直没有办法在tomcat启动项目,一直报错
我的环境:

自己来填下坑
  因为自己的hive是0.14版本,里面关于时间的参数都带有‘s’,但是读取配置的时候,就无法吧‘0s’转化为Long型


解决办法:
   将hive-site.xml中的所有带有‘s’的参数都去掉‘s’,成功解决。


ps:首次使用tomcat, 因为排查问题,反复启动关闭了tomcat(./startup.sh ,./shutdown.sh) ,最后发现系统越来越慢,什么鬼?    ps -ef | grep tomcat  ,WTF,发现之前关闭的项目进程还在活着,这是什么问题?
    后来上网Google,发现这个问题还有挺多人解决的,就是因为程序中有非守护线程导致的。解决的办法是找到pid,kill -9 pid;
  希望帮到其他人
回复

使用道具 举报

Climber 发表于 2019-5-12 14:13:28
能不能在jdk1.8上安装呀。我在jdk1.8上安装失败,报这个问题:
Caused by: java.lang.IllegalStateException: Context namespace element 'annotation-config' and its parser class [org.springframework.context.annotation.AnnotationConfigBeanDefinitionParser] are only available on JDK 1.5 and higher



请问应该要怎样解决?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条