启动 Airflow 网络服务器失败并出现 sqlalchemy.exc.NoInspectionAvailable:没有可用的检查系统
Posted
技术标签:
【中文标题】启动 Airflow 网络服务器失败并出现 sqlalchemy.exc.NoInspectionAvailable:没有可用的检查系统【英文标题】:Starting Airflow webserver fails with sqlalchemy.exc.NoInspectionAvailable: No inspection system is available 【发布时间】:2020-07-20 22:13:46 【问题描述】:安装正确。 db 正确启动并尝试启动网络服务器显示以下错误。
我重新安装了所有东西,但仍然无法正常工作。
如果有人帮助我,我将不胜感激。
控制台输出:
$:~/airflow# airflow webserver -p 8080
____________ _____________
____ |__( )_________ __/__ /________ __
____ /| |_ /__ ___/_ /_ __ /_ __ \_ | /| / /
___ ___ | / _ / _ __/ _ / / /_/ /_ |/ |/ /
_/_/ |_/_/ /_/ /_/ /_/ \____/____/|__/
[2020-04-08 13:14:20,573] __init__.py:51 INFO - Using executor SequentialExecutor
[2020-04-08 13:14:20,574] dagbag.py:403 INFO - Filling up the DagBag from /home/cato_service/airflow/dags
Traceback (most recent call last):
File "/usr/local/bin/airflow", line 37, in <module>
args.func(args)
File "/usr/local/lib/python3.6/dist-packages/airflow/utils/cli.py", line 75, in wrapper
return f(*args, **kwargs)
File "/usr/local/lib/python3.6/dist-packages/airflow/bin/cli.py", line 900, in webserver
app = cached_app_rbac(None) if settings.RBAC else cached_app(None)
File "/usr/local/lib/python3.6/dist-packages/airflow/www/app.py", line 233, in cached_app
app = create_app(config, testing)
File "/usr/local/lib/python3.6/dist-packages/airflow/www/app.py", line 103, in create_app
models.Chart, Session, name="Charts", category="Data Profiling"))
File "/usr/local/lib/python3.6/dist-packages/flask_admin/contrib/sqla/view.py", line 330, in __init__
menu_icon_value=menu_icon_value)
File "/usr/local/lib/python3.6/dist-packages/flask_admin/model/base.py", line 818, in __init__
self._refresh_cache()
File "/usr/local/lib/python3.6/dist-packages/flask_admin/model/base.py", line 913, in _refresh_cache
self._search_supported = self.init_search()
File "/usr/local/lib/python3.6/dist-packages/flask_admin/contrib/sqla/view.py", line 581, in init_search
if tools.is_hybrid_property(self.model, name):
File "/usr/local/lib/python3.6/dist-packages/flask_admin/contrib/sqla/tools.py", line 209, in is_hybrid_property
return last_name in get_hybrid_properties(last_model)
File "/usr/local/lib/python3.6/dist-packages/flask_admin/contrib/sqla/tools.py", line 190, in get_hybrid_properties
for key, prop in inspect(model).all_orm_descriptors.items()
File "/usr/local/lib/python3.6/dist-packages/sqlalchemy/inspection.py", line 72, in inspect
"available for object of type %s" % type_
sqlalchemy.exc.NoInspectionAvailable: No inspection system is available for object of type <class 'method'>
【问题讨论】:
你好,欢迎来到 ***。我建议您通读***.com/help/how-to-ask 或查看其他一些问题以改进您未来的问题。例如:尝试将代码或控制台输出标记为代码或预先格式化的文本,以便于阅读。此外,如果您复制了您运行的确切命令,它可能会帮助人们回答您的问题,而不是db initiated properly
。
【参考方案1】:
自己打这个。这是 SQLAlchemy 依赖的问题
为了解决问题,我做了以下操作:
pip3 uninstall SQLAlchemy
pip3 install SQLAlchemy==1.3.15
https://github.com/apache/airflow/issues/8211
【讨论】:
【参考方案2】:在 Dockerfile 中包含指令pip install SQLAlchemy==1.3.15
并重建镜像已经解决了这个问题。非常感谢@Java Guy!
【讨论】:
【参考方案3】:我遇到了上述问题。
我在Dockerfile
中添加了以下行
&& pip install SQLAlchemy==1.3.15 \
构建 docker 镜像
docker build --rm -t <tag> .
运行:
docker run -d -p 8080:8080 <tag>
【讨论】:
以上是关于启动 Airflow 网络服务器失败并出现 sqlalchemy.exc.NoInspectionAvailable:没有可用的检查系统的主要内容,如果未能解决你的问题,请参考以下文章
启动气流网络服务器时如何解决“错误:没有名为'airflow.www'的模块”
为啥启动sql server 配置管理器出现请求失败或服务未及时响应
DataFlow 使用 Airflow DataflowHook.start_python_dataflow 失败并返回代码 1