从airflow celery executor连接到启用tls的elasticache redis

kzipqqlq  于 2021-06-08  发布在  Redis
关注(0)|答案(1)|浏览(706)

我目前正在使用气流1.10celery 执行器。我的经纪人是aws elasticache redis(v。5.0.6). 如何在传输过程中启用加密?
根据源代码, ssl_keyfile , ssl_certfile 以及 ssl_ca_certs 是必需的。

elif 'redis://' in broker_url:
    broker_use_ssl = {'ssl_keyfile': conf.get('celery', 'SSL_KEY'),
                      'ssl_certfile': conf.get('celery', 'SSL_CERT'),
                      'ssl_ca_certs': conf.get('celery', 'SSL_CACERT'),
                      'ssl_cert_reqs': ssl.CERT_REQUIRED}

https://github.com/apache/airflow/blob/1.10.10/airflow/config_templates/default_celery.py#l68-l72型
但是ElasticacheRedis不提供这些tls证书。官方文档只解释了rediscli的一个解决方案,它使用stunnel的tls隧道。
https://docs.aws.amazon.com/amazonelasticache/latest/red-ug/in-transit-encryption.html#connect-tls公司
airflow celery executor是否支持在elasticache redis上传输加密?如果是这样,我们如何实施?

p8h8hvxi

p8h8hvxi1#

以下气流配置与elasticache和redis ssl一起工作,请注意额外的 srediss ```
broker_url = rediss://:password@host:port/db?ssl_cert_reqs=required
broker_use_ssl = { "ssl_cert_reqs": ssl.CERT_REQUIRED }

ssl_active = False
ssl_key =
ssl_cert =
ssl_cacert =

相关问题