1. 程式人生 > >阿里雲 azkaban 發郵件的坑

阿里雲 azkaban 發郵件的坑

azkaban : 是一個 任務排程平臺

安裝文件:

 

https://azkaban.readthedocs.io/en/latest/getStarted.html

 

因為阿里雲是禁止掉是STMP 25埠 ,只能用smtps協議,也就是ssl  465埠

 

檢視原始碼:

 

   azkaban   mail.smtp.starttls.enable  只支援tls認證。

 

 需要在以下檔案加入程式碼:
azkaban-common/src/main/java/azkaban/utils/EmailMessage.java中
在sendEmail()方法裡props的配置程式碼下加入以下幾行程式碼:

import java.security.Security;

 

Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());

final String SSL_FACTORY = "javax.net.ssl.SSLSocketFactory";
props.setProperty("mail.smtp.socketFactory.class", SSL_FACTORY);
props.setProperty("mail.smtp.socketFactory.fallback", "false");
props.setProperty("mail.smtp.socketFactory.port", "465");

    重新編譯,部署時將配置檔案中的mailPort改為465,即可在阿里雲上正常收發郵

 

 

 

模試:

  單機模式:azkaban-solo-server

  叢集模式:

    azkaban-exec-server

    azkaban-web-server

    還需要安裝mysql

 

坑點: 必須在這個相對目錄啟動{azkaban-web-server}/build/install/azkaban-web-server