Ошибка воздушного потока как сервиса: нет модуля с именем google.api_core - PullRequest
0 голосов
/ 31 марта 2020

Я пытаюсь запустить Airflow как службу в Cloud Engine (Ubuntu 16.04) с virtualenv, однако при попытке запустить airflow-webserver.service возникает ошибка:

   File "/usr/local/lib/python3.6/dist-packages/googleapiclient/discovery.py", line 49, in <module>
   import google.api_core.client_options
   ModuleNotFoundError: No module named 'google.api_core'

Но пакет установлен. Более подробная информация ниже.

Есть идеи как это исправить? Спасибо !!!!


Общая информация

  • python 3.6.9
  • воздушный поток 1.10.9
  • google-api-core 1.16.0
  • airflow home: / home / myuser / airflow

Подробнее

Я создал virtualenv для запуска воздушного потока (расположен в /home/myuser/airflow-env), где я установил все следующие требования.txt:

pymongo==3.8.0
dnspython
apache-airflow
apache-airflow[postgres,gcp,celery]
google-cloud-storage
google-api-python-client
pandas==0.25.3
pandas-gbq==0.13.0
psycopg2==2.8.4
mysqlclient

Мой airflow-webserver.service:

[Unit]
Description=Airflow webserver daemon
After=network.target postgresql.service mysql.service redis.service rabbitmq-server.service
Wants=postgresql.service mysql.service redis.service rabbitmq-server.service

[Service]
EnvironmentFile=/home/myuser/airflow/airflow-env
User=
Group=
Type=simple
ExecStart=/home/myuser/airflow-env/bin/airflow webserver --pid /home/myuser/run/airflow/airflow-webserver.pid
Restart=on-failure
RestartSec=5s
PrivateTmp=true

[Install]
WantedBy=multi-user.target

Также запущена служба airflow-scheduler.service:

     ____________       _____________
  ____    |__( )_________  __/__  /________      __
 ____  /| |_  /__  ___/_  /_ __  /_  __ \_ | /| / /
 ___  ___ |  / _  /   _  __/ _  / / /_/ /_ |/ |/ /
  _/_/  |_/_/  /_/    /_/    /_/  \____/____/|__/
 [2020-03-31 14:44:36,247] {__init__.py:51} INFO - Using executor LocalExecutor
 [2020-03-31 14:44:36,254] {scheduler_job.py:1344} INFO - Starting the scheduler
 [2020-03-31 14:44:36,254] {scheduler_job.py:1352} INFO - Running execute loop for -1 seconds
 [2020-03-31 14:44:36,255] {scheduler_job.py:1353} INFO - Processing each file at most -1 times
 [2020-03-31 14:44:36,255] {scheduler_job.py:1356} INFO - Searching for files in /home/myuser/airflow/dags
 [2020-03-31 14:44:36,258] {scheduler_job.py:1358} INFO - There are 13 files in /home/myuser/airflow/dags
 [2020-03-31 14:44:36,411] {scheduler_job.py:1409} INFO - Resetting orphaned tasks for active dag runs
 [2020-03-31 14:44:36,445] {dag_processing.py:556} INFO - Launched DagFileProcessorManager with pid: 26644
 [2020-03-31 14:44:36,484] {settings.py:54} INFO - Configured default timezone <Timezone [UTC]>
 [2020-03-31 14:44:36,495] {settings.py:253} INFO - settings.configure_orm(): Using pool settings. pool_size=5, max_overflow=10, pool_recycle=1800, pid=26644
...