zoukankan      html  css  js  c++  java
  • 取消impala失败的任务

    环境信息:

    问题现象:

    CDH集群impala失败任务取消不掉。

    组件 版本
    cdh版本 5.13
    操作系统版本 centos 6.9
    kerberos

    问题原因:

    在cm界面取消impala任务会发送post请求,而post响应请求返回结果一般都超过10s,这时如果刷新或者执行别的操作,会使请求失败。从而导致取消任务失败。
    image

    解决方法:

    方法一:
    按F12 查看post 是否结束
    此方法,只能一个任务一个任务取消,而且响应请求较慢,比较浪费时间。

    方法二:
    使用脚本批量取消impala失败任务,脚本流程如下:

    • 查询失败的impala任务
    • 取消失败的impala任务

    脚本内容如下:

    #!/usr/bin/python27
    # -*- coding:utf-8 -*-
    
    import sys
    import commands
    import requests
    
    cmip = "10.11.4.247"
    #填写cm的用户名密码
    cmuser = "username"
    cmpasswd = "password"
    
    # 查询失败任务
    def get_faled_job():
      api = "http://%s:7180/api/v17/clusters/cluster/services/impala/impalaQueries?filter=(queryState=EXCEPTION)"%(cmip)
      s = requests.session()
      s.auth = (cmuser, cmpasswd)
      try:
        res = s.get(api)
        data = res.json()
    
        querys = data['queries']
      except Exception:
        pass
      return querys
    
    # 取消失败任务
    def cancel_faled_job(querys):
      for query in querys:
        print query['queryId']
        queryId = query['queryId']
        canelapi = "http://%s:7180/api/v17/clusters/cluster/services/impala/impalaQueries/%s/cancel"%(cmip,queryId)
        s = requests.session()
        s.auth = (cmuser, cmpasswd)
        try:
          canelres = s.post(canelapi)
          caneldata = canelres.json()
          print canelapi
       except Exception:
          pass
    
    
    if __name__ == '__main__':
       querys = get_faled_job()
       cancel_faled_job(querys)
    

    此时impala查询界面已经没有不能取消的任务了,问题解决!
    image

  • 相关阅读:
    java HTTP代码示例
    eclipse创建文件package,source folder和folder区别及相互转换
    spring 及 spring boot 资源文件配置
    深入理解Java枚举类型(enum)
    Linux环境变量配置的三个方法--/etc/profile,~/.bashrc,shell
    JAXB和XStream比较
    java将配置信息写在数据库(利用反射)
    【大数据实战】Logstash采集->Kafka->ElasticSearch检索
    Linux 安装rabbitmq 遇到的一些问题
    Linux 下的jdk安装
  • 原文地址:https://www.cnblogs.com/erlou96/p/14623176.html
Copyright © 2011-2022 走看看