inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Airflow 마스터 클래스

Email Operator로 메일 전송하기

Email Operator로 메일 전송하기 task 실패

198

edu2

작성한 질문수 7

0

수업내용 따라서 dag 작성 및 docker-compose.yaml 파일 수정하고 실행하였는데,
ConnectionRefusedError: [Errno 111] Connection refused
해당 오류로 작업실패를 하게 됩니다. 어떻게 해결하면 될지 도움 부탁드립니다.😭

스크린샷 2025-01-15 오후 5.20.02.png스크린샷 2025-01-15 오후 5.20.16.pngimage.png

 

python 데이터-엔지니어링 airflow

답변 2

0

김현진

안녕하세요 edu2님

worker 컨테이너 안으로 들어가셔서 직접 smtplib를 써보실래요?

로컬에서

sudo docker exec -it {worker ID} python

명령으로 python 으로 진입하시고 아래처럼 명령해보시겠어요?

>>> import smtplib

>>> server = smtplib.STMP('smtp.gmail.com',587)

>>> server.ehlo()

 

server.ehlo()는 SMTP서버와 핸드쉐이크하는 부분입니다.

지금 edu2님은 server를 얻어내는 과정부터 진행이 안되고 있는건데 일단 위 단계부터 진행해보시겠어요?

 

python

0

edu2

답변 감사합니다! 문제해결하여 task 정상 실행 확인하였습니다!

0

김현진

해결되었다니 다행입니다. ^^

그런데 원인이 뭐였나요?

제가 알려드린 건 원인을 찾아가는 과정이었는데... 벌써 문제를 찾으셨다니 문제가 뭐였는지 궁금하네요 ^^

0

edu2

정확한 이유는 모르겠습니다만, 제가 했던 시도는 docker-compose.yaml 파일에 작성시 아래와 같이 내용 수정하였고, AIRFLOW__SMTP__SMTP__HOST -> AIRFLOW__SMTP__SMTP_HOST

이후 발생한 오류에 대해서는 복사 붙여 넣기가 아닌 직접 수기로 작성하니 해결 되었습니다.
오류내용: UnicodeEncodeError: 'ascii' codec can't encode character '\u2018' in position 1: ordinal not in range(128)

대단한 내용은 아니지만, 공유차 댓글 남깁니다.

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.

edu2님, Email Operator를 사용한 메일 전송 실패 관련 문제에 대해 도와드리겠습니다. ConnectionRefusedError: [Errno 111] Connection refused 오류는 일반적으로 SMTP 서버와의 연결을 설정하는 데 실패했음을 의미합니다. 이와 관련하여 몇 가지 문제 확인 사항과 해결 방법을 안내드리겠습니다:

  1. SMTP 서버 설정 확인:

    • docker-compose.yaml 파일 내에 SMTP_HOST, SMTP_PORT, SMTP_USER, SMTP_PASSWORD가 정확히 설정되었는지 확인해 주세요.
    • 일반적으로 smtp.gmail.com과 포트 587이 이메일 전송에 사용됩니다.
  2. SMTP 서버와의 연결 가능 여부 확인:

    • Airflow가 실행되는 환경에서 Google SMTP 서버에 직접 연결할 수 있는지 확인해 보세요. 이를 확인하기 위해 터미널이나 커맨드 라인에서 telnet smtp.gmail.com 587 명령어를 입력하여 서버 연결이 허용되는지 테스트할 수 있습니다.
  3. Gmail 보안 설정 확인:

    • 만약 Gmail을 사용 중이라면, ‘보안 수준이 낮은 앱 허용’이 활성화되어 있는지 확인하거나, 2단계 인증을 사용 중이라면 앱 비밀번호를 생성해서 사용해야 합니다.
  4. Airflow SMTP 설정:

    • airflow.cfg 또는 Airflow 웹 UI를 통해 SMTP 설정이 올바르게 구성되어 있는지 확인해 주세요.
  5. 네트워크 설정 문제 확인:

    • Docker 환경 내 컨테이너 네트워크 설정을 확인하여 내부 네트워크에서 외부로 SMTP 요청을 제대로 보낼 수 있는지 확인해야 합니다.

유사한 문제를 해결한 다른 사용자들의 경험을 통해 추가적인 정보를 얻고자 한다면, EmailOperator로 메일 전송하기 실패를 참조해 보시면 도움이 될 수 있습니다.

제가 제공한 안내가 도움이 되었기를 바라며, 추가적으로 궁금한 점이 있으시면 추가 질문해 주세요. 곧 강의 지식공유자께서도 답변해 주실 것입니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

pykrx 회원제 전환으로 인한 실습 불가

0

114

2

수료증 발급

0

84

3

에러 발생 관련 질문드립니다.

0

83

2

vscode 작업화면에 오류가 발생하지 않습니다.

0

69

2

plugins 폴더 생성

0

75

2

WSL에서 git push 가 안되요 ㅠ

0

114

2

chatGPT&Airflow로 블로그 자동 포스팅하기 는 Deprecated 가 필요합니다.

0

67

2

github에 회원가입이 안되는데 원인이 뭔지 모르겠어요 ㅠ

0

735

2

설치중인데 venv를 꼭 써야할까요?

0

126

2

설치 버전 관련 질문입니다.

0

68

1

우분투 버전 다운받아야하는데 어떤걸로 설치해야할까요?

0

62

1

DAG 만들기 중 airflow 패키지 로드 에러

0

106

2

3.0에서도 수업노트가 성립하는지 확인 부탁드립니다!

0

95

3

task_id 사용법이 뭔가 바뀐 것 같습니다.

0

76

3

email operator 오류 관련

0

66

2

plugins 폴더 관련

0

100

2

bash operator 관련 문의입니다

0

78

3

스케쥴러 - DAG 파싱 부하 줄이는 과정 질문

0

79

2

Dags refresh 주기 관련 질문

0

125

2

wsl 관련 질문입니다.!

0

75

2

macOS에서 docker 설치

0

94

2

템플릿 변수에 대한 오류

0

61

2

custom_image 디렉토리 문의드립니다.

0

54

2

ETL 인터뷰 관련 문의

0

103

2