1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Airflow_使い始め備忘録

Posted at

これは何?

  • Airflowの環境構築~デプロイの備忘録です。
  • Airflowを使い始めたい方の参考になれば幸いです。

環境

今回はDockerイメージを立ち上げ、vscodeから特定のスクリプトをAirflowにあげる流れを踏みます

  • Ubuntu
  • vscode
  • python 3.9.13
  • Airflow 2.4.3

※Ubuntuのインストールはされてある前提です、まだの方は以下の記事を参考にしてください(WSL2をインストールすれば、Ubuntuもあわせて落とされます)
1. WSL2のインストール
2. UbuntuにDockerをインストール

Airflow

1. Ubuntu上で準備

  • まず、Ubuntuの環境構築ができていれば以下の画面を開けます
    image.png

  • 次に、Airflowにあげるコードのディレクトリまで cd していきます

    • ルートディレクトリはmntからスタートする点ご注意を
    • 写真は、初めに ../../ としてルートまで行ってからのものです

image.png

2. Docker compose

  • $ sudo docker compose upで立ち上げ
    image.png

  • $ sudo docker psで動いているコンポーネントを一覧化

    • 作ったままにしているものがちらほら…(後で消す)
    • 今回はCONTAINER ID:a179a7246182を使用

image.png

image.png

  • ディレクトリを開くとcomposeされている
    image.png

  • このdugsフォルダの中にpythonコードを入れると、Airflowに反映される

  • 試しにtest.pyを入れ、copose upする

test.pyファイルの中身
from datetime import datetime, timedelta
from airflow import DAG
from airflow.operators.bash import BashOperator

with DAG(
  'test',
  default_args={
    'retries': 1,
    'retry_delay': timedelta(minutes=5),
  },
  description='Test DAG',
  start_date=datetime(2022, 11, 17),
) as dag:
  t1 = BashOperator(
    task_id='task1',
    bash_command='date',
  )

  t2 = BashOperator(
    task_id='task2',
    bash_command='echo current time is $AAAA',
    env={
      "AAAA": '{{ ti.xcom_pull(task_ids="task1") }}',
    },
  )

  t3 = BashOperator(
    task_id='task3',
    bash_command='sleep 20',
  )

  t1 >> [t2, t3]

image.png

  • 開いてみると以下

image.png

学び

  • ローカルからDockerイメージを立ち上げてデプロイまでの流れは掴めました
  • Airflowを使うあたり、DAG, タスク, TaskInstanceなどの概念を学ぶ必要があります…

参考

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?