当前位置: 首页 > 知识库问答 >
问题:

从Airflow Celery Executor连接到启用TLS的Elasticache Redis

白光耀
2023-03-14

我目前在Airflow 1.10上使用芹菜执行器。我的经纪人是AWS Elasticache Redis(v.5.0.6)。如何在传输中启用加密?

根据Airflow源代码,需要ssl_keyfilessl_certfilessl_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级

但是Elasticache Redis不提供这些TLS证书。官方文档仅解释了redis-cli的解决方案,该解决方案使用TLS隧道。

https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/in-transit-encryption.html#connect-tls

Airflow Celery Executor是否支持Elasticache Redis上传输的加密?如果是,我们如何实施?

共有1个答案

令狐翰
2023-03-14

以下气流配置适用于elasticache和redis ssl注意redis上的额外

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 =
 类似资料:
  • 问题内容: 在Linux Mint 17.1 x86_64上,内核3.13.0-48-generic和OpenSSL版本1.0.1f-1ubuntu2.11; 每当我尝试执行任何docker命令(如或)时,都会出现以下错误: 我做了一组名为使用,我试图同时运行的根和正常的命令,添加到的指示在这里,重新开始我的电脑并重新安装OpenSSL的。 知道我想念什么吗?这可能是硬件问题吗? 问题答案: 您可

  • 我如何启用nginx入口来支持没有直通的端到端TLS连接。入口处负载均衡器在PublicCA中是允许的,后端服务器也在私人CA的TLS端口上运行 以下入口定义将在边缘安装公共证书的情况下执行TLS卸载。 后端Pod运行在安全端口上,出于安全原因,不允许纯文本连接。 为了支持端到端设置,我需要在nginx入口中进行哪些上游更改? 根据Amit回复添加 nginx.ingress.kubernetes

  • 我试图通过TLS连接到使用JMS的IBM MQ。我将TLS_RSA_WITH_AES_256_CBC_SHA256设置为IBM MQ控制台通道上的SSL密码规范。 在连接工厂中,我执行以下操作: 我得到: 我不确定这个错误是否意味着握手失败(由于证书/密钥库配置错误)或其他原因。

  • 我正试图通过MQTT发布服务器发布事件。在提供程序URL中提到了tls://URL:port 当我试图执行时,它会给出以下错误:。我使用的是apache jmeter 5.0和MQTT jar版本:mqtt-jmeter-0.0.1-snapshot java.lang.IllegalArgumentException:tls://...:1887 at org.eclipse.paho.clie

  • 问题内容: 我无法弄清楚如何使用ftplib查看FTP站点的文件内容。 我可以很好地使用WinSCP连接到FTP站点,并在根目录中看到6个文件。 在Python 3.4中,我使用以下代码: 产生: 然后,我可以运行以下命令: …我看到我在根目录中: 一切似乎都是肉汁。但是,当我尝试使用ftps.dir()或ftps.retrlines(’NLST’)或其他任何尝试查看目录中的内容时,出现超时: 我

  • 我有以下证书层次结构: 根-- 整个链都明确定义了serverAuth和clientAuth作为扩展密钥用法。 在我的go代码中,我创建了一个tls。像这样配置对象: certFile是证书链文件,keyFile是私钥文件。caCertFile是信任库,仅由根证书组成 所以基本上,这是我期望在我的tls里面有什么。配置来自此函数的对象: RootCAs:仅来自caCertFile的根证书Clien