Managed Airflow (דור 3) | Managed Airflow (דור 2) | Managed Airflow (דור 1 מדור קודם)
בדף הזה מוסבר איך להתחבר למכונה וירטואלית ב-Compute Engine מ-DAG.
יצירת DAG שמתחבר למכונה וירטואלית ב-Compute Engine
בפרמטר ssh_hook של SSHOperator, משתמשים ב-ComputeEngineSSHHook עם פרמטרים שמפנים למכונה וירטואלית ב-Compute Engine.
בדוגמה הבאה מוצג איך משתמשים ב-SSHOperator כדי להריץ פקודה במכונה וירטואלית (VM) של Compute Engine.
מחליפים את הערכים:
-
GCE_INSTANCEבשם של מופע ה-VM. -
GCE_ZONEעם האזור של Compute Engine שבו נמצאת המכונה הווירטואלית.
GCP_PROJECT_IDעם מזהה הפרויקט של פרויקט שבו נמצאת מכונת ה-VM והסביבה שמריצה את ה-DAG.
import datetime
import airflow
from airflow.providers.ssh.operators.ssh import SSHOperator
from airflow.providers.google.cloud.hooks.compute_ssh import ComputeEngineSSHHook
GCE_INSTANCE = 'example-compute-instance'
GCE_ZONE = 'us-central1-a'
GCP_PROJECT_ID = 'example-project'
with airflow.DAG(
'composer_compute_ssh_dag',
start_date=datetime.datetime(2025, 1, 1)
) as dag:
ssh_task = SSHOperator(
task_id='composer_compute_ssh_task',
ssh_hook=ComputeEngineSSHHook(
instance_name=GCE_INSTANCE,
zone=GCE_ZONE,
project_id=GCP_PROJECT_ID,
use_oslogin=True,
use_iap_tunnel=False,
use_internal_ip=True),
command='echo This command is executed from a DAG',
dag=dag)