我正在使用Amazon Managed Workflows for Apache Airflow (MWAA)。
我们在实例中成功运行了一些dag。它们使用bash操作符和python操作符。我们目前没有为实例指定的requirements .txt文件,因为没有默认情况下不包含在MWAA中的python外部模块依赖项。我需要部署一个新的DAG,它将引用一些默认情况下不包含在MWAA中的外部python库。为此,我必须为MWAA实例指定一个requirements .txt文件。
在运行的实例上设置一个requirements.txt文件的风险是什么?如果文件有问题,例如:
- 文件格式错误
- 未知库-在pypi.org上不可用
- 库版本在pypi.org上不可用
- 库与其他库冲突
在引入requirements.txt文件之前已经工作的现有dag会继续工作吗,或者这个文件会破坏正在运行的系统吗?
我想知道测试/部署一个requirements .txt到实时生产环境是否安全。不幸的是,我没有可用的非生产环境,也没有在相关AWS账户中创建非生产环境的访问/权限。
在运行的实例上设置一个requirements.txt文件的风险是什么?
一般来说,是的,您列出的所有问题(例如,错误的文件格式,未知的库等)都可能导致现有dag出现问题。这包括诸如不正确的包版本之类的错误,这些错误可能正确安装,但可能无法正确实现。
错误示例:https://docs.aws.amazon.com/mwaa/latest/userguide/t-apache-airflow-11012.html#troubleshooting-dependencies我想知道测试/部署一个requirements .txt到实时生产环境是否安全。不幸的是,我没有可用的非生产环境,也没有在相关AWS账户中创建非生产环境的访问/权限。
在MWAA本地运行程序中测试新的requirements.txt
文件。本地运行程序具有测试requirements.txt
的特定功能。
./mwaa-local-env test-requirements
引用:
- aws-mwaa-local-runner (GitHub)
- Testing requirements.txt (GitHub)
- 教程:在持续交付管道中配置laws -mwaa-local-runner