Airflow是否支持通过TLS进行代理URL的连接?

问题描述 投票:1回答:1

[目前,我正在尝试将Apache Airflow与Celery执行器一起使用。为此,我有来自IBM云的Redis服务。该服务具有TLS连接类型,这意味着它的Redis协议为rediss://。侧面不是:我正在使用puckel的气流dockerfile。

我已经设置了redis参数,并且代理URL的形式为rediss:// username:password @ hostname:port / virtual_host。例如,当我尝试运行“花”时,出现以下错误:

指定的安全redis方案(rediss),没有ssl选项,默认为不安全的SSL行为。

到目前为止,我已经完成的步骤:

  • 我已将以下几行添加到entrypoint.sh:
    : "${AIRFLOW__CELERY__SSL_ACTIVE:="True"}"
    : "${AIRFLOW__CELERY__BROKER_USE_SSL:="{'ssl_cert_reqs': ssl.CERT_REQUIRED, 'ssl_ca_certs': '/6be25d73-0600-11ea-9bce-eaebe975ceba.crt'}"}"
    AIRFLOW__CELERY__BROKER_USE_SSL="${AIRFLOW__CELERY__BROKER_USE_SSL}"
    AIRFLOW__CELERY__SSL_ACTIVE="${AIRFLOW__CELERY__SSL_ACTIVE}"
    export AIRFLOW__CELERY__SSL_ACTIVE
    export AIRFLOW__CELERY__BROKER_USE_SSL
  • 我尝试将redis://与相同的代理URL一起使用,但flower甚至没有启动。
redis celery airflow tls1.2 flower
1个回答
0
投票

是的,但是您需要一个较新版本的Kombu和redis-py。我们仅拥有一个看起来像rediss://:[email protected]:6379/12?ssl_cert_reqs=CERT_OPTIONAL的代理URL,它“可以正常工作”。

© www.soinside.com 2019 - 2024. All rights reserved.