서비스 상태가 나빠지면 CM Service Monitor 가 이벤트를 만들고, Alert Publisher 역할이 그 이벤트를 받아 설정된 SMTP 서버로 메일을 보낸다. 설정은 CM → Cloudera Management Service → Alert Publisher 의 구성에 있다.
| 항목 | 설명 |
|---|---|
| Alerts: Mail Server Hostname · Port | 릴레이 서버 |
| Alerts: Mail Server Username · Password | 필요 시 |
| Alerts: Mail Message Recipients | 수신자 (쉼표 구분) |
| Alerts: Mail "From" Address | 발신자 |
로그는 /var/log/cloudera-scm-alertpublisher/ 에 쌓인다. 다음 두 줄이 나오면 CM 쪽은 정상이다.
Setting up html email notification with mail server 'smtp://relay.example.com:25?from=...'
250 2.0.0 Ok: queued as 4ABCD1234
250 Ok: queued as ... 는 릴레이 서버가 받아서 큐에 넣었다는 뜻이지 최종 수신자에게 도착했다는 뜻이 아니다. 이 응답이 보이면 문제는 Cloudera 가 아니라 메일 인프라에 있다.
SMTP 연결 자체를 확인하려면 다음을 쓴다.
timeout 5 bash -c 'cat < /dev/tcp/relay.example.com/25'
디버그가 더 필요하면 CM → Alert Publisher → 구성의 Log4j 안전 밸브에 javamail · camel 메일 컴포넌트 DEBUG 를 추가하고 역할을 재시작한다.
Delivery Status Notification, Undelivered Mail Returned to Sender)을 찾는다. 구체적인 거부 사유가 들어 있다.queued as ...)를 넘겨 추적을 요청한다.