J'ai installé Python, Docker sur ma machine et j'essaye d'importer le
de airflow.contrib.operators.kubernetes_pod_operator import KubernetesPodOperator
mais lorsque je connecte le docker, je reçois le message que le module n'existe pas. J'ai déjà fait le pip install apache-airflow [kubernetes]
et j'ai toujours la même erreur. Y a-t-il un emplacement de machine spécifique que je devrais vérifier si la bibliothèque est réellement installée? Que puis-je faire pour résoudre ce problème?
from airflow import DAG from datetime import datetime, timedelta from airflow.contrib.operators.kubernetes_pod_operator import KubernetesPodOperator from airflow.operators.dummy_operator import DummyOperator import logging import os from airflow.utils.helpers import parse_template_string default_args = { 'owner': 'airflow', 'depends_on_past': False, 'start_date': datetime.utcnow(), 'email': ['airflow@example.com'], 'email_on_failure': False, 'email_on_retry': False, 'retries': 1, 'retry_delay': timedelta(minutes=5) } dag = DAG( 'kubernetes_sample', default_args=default_args, schedule_interval=timedelta(minutes=10)) start = DummyOperator(task_id='run_this_first', dag=dag) passing = KubernetesPodOperator(namespace='default', image="Python:3.6", cmds=["Python","-c"], arguments=["print('hello world')"], labels={"foo": "bar"}, name="passing-test", task_id="passing-task", get_logs=True, dag=dag ) failing = KubernetesPodOperator(namespace='default', image="ubuntu:1604", cmds=["Python","-c"], arguments=["print('hello world')"], labels={"foo": "bar"}, name="fail", task_id="failing-task", get_logs=True, dag=dag ) passing.set_upstream(start) failing.set_upstream(start)
3 Réponses :
Il essaie d'importer le module nommé kubernetes. Essayez ça:
pip install kubernetes
J'importe ça aussi ... mais rien n'a changé!
Exécutez le
pip install apache-airflow[kubernetes]
Redémarrez le serveur Web et le planificateur d'Airflow après cela.
J'ai eu la même erreur de mise à niveau de 1.10.3 à 1.10.4 mais cette suggestion de pip ne le corrige pas:
essayez l'une de ces importations. l'un d'entre eux est obsolète, il se peut donc que vous ayez une version qui n'est plus prise en charge.
#from airflow.providers.cncf.kubernetes.operators.kubernetes_pod import KubernetesPodOperator from airflow.contrib.operators.kubernetes_pod_operator import KubernetesPodOperator
Essayez:
pip install airflow ['kubernetes']
@FelipeFB - avez-vous résolu?
Je viens de redémarrer comme @Kalil a posté!
J'ai eu la même erreur de mise à niveau de 1.10.3 à 1.10.4 mais cette suggestion de pip ne le corrige pas: