b

airflow broker_url 에 multiple rabbitMQ node 설정하기 본문

카테고리 없음

airflow broker_url 에 multiple rabbitMQ node 설정하기

dev.bistro 2020. 5. 20. 11:23

 

기존의 RabbitMQ 클러스터가 N 대 있고, VIP로 엮여있다. 그리고 legacy system 은 그 VIP 만을 broker_url로 사용하고 있었다. (잘 모르겠지만 이거 이래도 되나?)

그래서 VIP 사용을 제거하고 broker_url 을 node list로 변경하기로 했다. Spring 같은 경우는 Kafka, Elastic 등에서 Node List를 프로퍼티로 주고 많이 사용했기 때문에 문제가 없었지만 airflow 에서 설정이 문제였다.

celery 문서를 따라가보면 세미콜론 또는 List 형태로 줄 수 있다고 한다. (https://docs.celeryproject.org/en/stable/userguide/configuration.html#broker-settings

방법1) broker_url = 'amqp://id;password@host1:5672;amqp://id;password@host1:5673';

방법2) broker_url = [ 'amqp://id;password@host1:5672', 'amqp://id;password@host1:5673']



 

하지만 실제로 위의 방법을 써도 잘 안되는데. airflow 내에서의 파싱이 cfg 파일이 좀 다른것 같다. 아래처럼 ' (싱글 쿼테이션)을 빼고 하면 잘 된다 ㅠㅠ 아... 내 시간이여

실행 가능한 방법

broker_url = amqp://id;password@host1:5672;amqp://id;password@host1:5673

 

Comments