使用Azure Quickstart Template部署Airflow 2时应用持续关停如何解决
Azure部署Airflow 2镜像持续关停解决方案
你修改1.X模板切换官方Airflow 2镜像后服务持续关停,是旧模板配置与Airflow 2运行要求不兼容导致,按以下步骤修改即可正常运行:
- 调整镜像配置:不要直接使用
apache/airflow:latest,指定固定稳定小版本如apache/airflow:2.6.3,同时在容器配置中添加用户声明user: "50000",避免权限不足导致读写挂载目录、日志目录失败崩溃 - 更新环境变量配置:删除1.X专属的废弃环境变量,新增Airflow 2必填配置:
AIRFLOW__CORE__LOAD_EXAMPLES: "false"(关闭示例DAG减少启动负担)AIRFLOW__WEBSERVER__EXPOSE_CONFIG: "true"- 若使用CeleryExecutor,需要补充
AIRFLOW__CELERY__RESULT_BACKEND和AIRFLOW__CELERY__BROKER_URL的正确配置,旧模板内的1.X Celery配置参数多数已更名
- 升级元数据库版本:检查旧模板部署的PostgreSQL/MySQL版本,若PostgreSQL版本低于10或MySQL版本低于8.0,直接替换为更高版本的数据库服务,Airflow 2不兼容低版本元数据库,启动时会因表结构初始化失败直接退出
- 提升容器资源配额:Airflow 2的内存占用比1.X高30%左右,旧模板给Webserver、Scheduler的内存配额如果低于2G,容易被OOM kill导致持续关停,将单容器的内存上限调整到至少4G,CPU配额至少1核
- 修正初始化脚本:Airflow 2首次启动需要先执行
airflow db upgrade初始化元数据库,再执行airflow users create创建管理员用户,旧模板的1.X初始化脚本不兼容2.X命令,替换为对应2.X初始化命令,放在容器启动Command中优先执行
如果不想改造旧模板,也可直接使用Azure官方提供的Airflow 2托管部署方案,配置成本更低。
内容的提问来源于stack exchange,提问作者techrhl
相关产品推荐
相关产品推荐

