zoukankan      html  css  js  c++  java
  • 记录一次CDH集群邮件报警功能的设置

    1.通用的配置CDH邮件报警设置

    • 进入cloudera manager service页面,选择配置
    • 左侧菜单Alert Publisher
    • 勾选【启用电子邮件警报】
    • 邮件服务协议smtp,如果使用ssl加密的,请选择smtps
    • 输入邮件服务器主机名称或者IP
    • 输入邮件服务器用户名,一般和邮箱一致
    • 输入邮箱密码或者授权码,授权码具体百度,邮箱授权码
    • 填写邮件发件人邮箱
    • 填写邮件收件人邮箱
    • 第二页设置,修改TCP端口为25,这里的端口就是SMTP服务的端口
    • 回到CDH主页,管理--警报--发送测试警报

    2.内网环境,邮件登录失败,不能发送邮件的问题

    点击发送测试警报之后,查看Alert Publisher日志,发现经过以上配置之后,居然显示邮件认证失败,错误代码:334 ntlm supported

    从报错的问题来看,我是没有发现一点儿的TLS加密方面的信息,因此一开始排查问题的时候也丝毫没有往这个方向考虑过。

    当我手动构建了javamail进行服务器环境下的邮件发送,python直接调用airflow的send_email方法等测试验证之后,确定了账号密码没错,服务器环境也没有问题等之后,注意力放在CDH密码解析上!

    手动修改邮箱的密码,由于公司的LDAP不允许简单密码,无论如何都需要特殊符号,经过几次设置之后,也无奈的放弃了密码解析的想法。

    然后开始漫无目的的搜百度,没错,是的,只能搜百度,公司不让有FQ的工具!

    直到看到有博客说,office365需要使用ssl,但是不知道怎么启动时,下面有人回复可以修改邮件程序的启动命令,来启动TLS加密

    于是我突然想到了airflow邮件配置中,默认是smtp_starttls=true的状态

    然后又意识到javamail中并没有设置该参数,在纠结于到底是不是该参数造成的时,果断选择了修改参数做测试。于是问题解决

    3.问题解决,通过java启动参数开启SMTP服务的TLS加密

    在alter中搜索java,修改alter的java参数,添加

    -Dmail.smtp.starttls.enable=true -Dmail.smtp.ssl.trust={your_email_smtp_host}
    

    大概说明一下这个-D参数的作用:D是用来在启动一个java程序时设置系统属性值的,此参数的优先级最高,会覆盖项目中配置的此项!

  • 相关阅读:
    24 Scrapy爬虫的基本使用
    22 Scrapy框架简介
    21 Scrapy框架的安装
    19 正则表达式的基本知识
    18 “中国大学排名定向爬虫”实例介绍
    17 基于bs4库的HTML内容查找方法
    16 信息标记形式及信息提取的一般方法
    python中with as语句的用法
    Firefox安装Charles配置https后无法上网解决方案(转载)
    Windows下(Win10)Charles从下载安装到证书设置和浏览器抓包测试,亲测有效!(转载)
  • 原文地址:https://www.cnblogs.com/night-xing/p/11973694.html
Copyright © 2011-2022 走看看