Введение

В этой статье мы покажем, как установить WSL, настроить Python в WSL, установить Apache Airflow, настроить Apache Airflow и запустить его. Airflow — это система управления рабочими процессами с открытым исходным кодом, которая позволяет легко создавать, планировать и отслеживать сложные конвейеры данных.

Что такое Apache Airflow и зачем его использовать?

Apache Airflow — это платформа с открытым исходным кодом, используемая для программного создания, планирования и управления рабочими процессами. Airflow был разработан Airbnb и позже стал проектом Apache. Он предназначен для обеспечения расширяемой и гибкой среды для организации сложных рабочих процессов с данными и реализован на Python.

Airflow позволяет пользователям определять направленные ациклические графы (DAG) для представления рабочих процессов, где каждый узел представляет задачу, а ребра определяют зависимости между задачами. Задачи в Airflow могут быть любыми, вызываемыми Python, что позволяет вам использовать богатую экосистему библиотек и инструментов Python. Кроме того, в Airflow есть встроенный планировщик, который управляет выполнением задач на основе определенных зависимостей и расписаний.

Вот несколько причин, по которым вам следует использовать Apache Airflow:

1. Масштабируемость. Airflow легко масштабируется, что позволяет вам одновременно управлять сотнями или тысячами задач и отслеживать их.

2. Расширяемость. Airflow обладает широкими возможностями расширения и предоставляет богатую экосистему плагинов и операторов, которые можно использовать для интеграции с различными системами и службами.

3. Гибкость: Airflow поддерживает различные шаблоны рабочего процесса, такие как параллельное выполнение, условное ветвление и динамическое создание конвейера.

4. Мониторинг и ведение журнала. Airflow предоставляет комплексный пользовательский веб-интерфейс для мониторинга и управления задачами. Он также интегрируется с различными системами ведения журналов, что упрощает отслеживание и устранение проблем в рабочих процессах.

5. Обработка ошибок и повторные попытки: Airflow имеет встроенную поддержку механизмов обработки ошибок, повторных попыток и предупреждений, гарантируя, что ваши рабочие процессы будут надежными и отказоустойчивыми.

6. Сообщество и поддержка. Apache Airflow имеет активное сообщество разработчиков и пользователей, которые вносят свой вклад в проект и оказывают поддержку через форумы, списки рассылки и конференции.

В целом Apache Airflow — это мощная и универсальная платформа для управления сложными рабочими процессами данных, предлагающая надежную функциональность, масштабируемость и расширяемость. Используя Airflow, вы можете оптимизировать процесс разработки и обслуживания вашего конвейера данных, упрощая управление и мониторинг ваших рабочих процессов данных.

Настройка Apache Airflow

Есть два способа настроить воздушный поток apache на ваших окнах:

  1. Докер-образ
  2. Использование Linux WSL

В этой статье мы будем использовать второй метод. Итак, давайте начнем.

Шаг 1. Настройка WSL

Установите подсистему Windows для Linux (WSL), следуя инструкциям с сайта Microsoft: https://docs.microsoft.com/en-us/windows/wsl/install.

После того, как вы правильно выполнили все шаги, это должно выглядеть примерно так:

Шаг 2. Настройте Python на WSL

Когда WSL будет готов, введите эти команды для установки python:

sudo apt update
sudo apt install python3 python3-pip

И вуаля! Вы успешно настроили python3 в своем WSL.

Шаг 3. Установка Apache Airflow

pip3 install apache-airflow

Попробуйте написать airflow в WSL, и если он вернется с ошибкой, это означает, что вам нужно добавить путь воздушного потока к переменным среды.

Для этого просто напишите в своем WSL-терминале

which airflow

Или, если это не сработает, вы можете попробовать это:

find ~/.local -name airflow -type f -executable
export PATH=$PATH:<directory_containing_airflow_executable>

Это даст вам путь, по которому установлен ваш воздушный поток.

Затем просто введите команду ниже, чтобы добавить воздушный поток к переменным среды:

export PATH=$PATH:<directory_containing_airflow_executable>

В моем случае это:

export PATH=$PATH:export PATH=$PATH:/home/abdullah/.local/bin/airflow

Ваш воздушный поток, наконец, будет установлен на ваших окнах, и мы готовы его настроить и использовать.

Шаг 3. Настройка Apache Airflow

Инициализируйте базу данных Airflow:

airflow db init

Запустите веб-сервер Airflow:

airflow webserver --port 8080

Или вы можете выбрать любой другой порт, если 8080 занят или в соответствии с вашими предпочтениями.

Откройте другой терминал WSL и запустите планировщик Airflow:

airflow scheduler

После выполнения этих шагов вы сможете получить доступ к веб-интерфейсу Airflow по адресу http://localhost:8080.

Шаг 4. Создание пользователя

Чтобы создать нового пользователя в airflow, откройте новый терминал WSL и введите следующую команду:

airflow create_user -r <role> -u <username> -e <email> -f <first_name> -l <last_name> -p <password>

Замените следующие заполнители соответствующей информацией:

  • <role>: роль пользователя, например Admin, Op или User.
  • <username>: желаемое имя пользователя для нового пользователя Airflow.
  • <email>: Действительный адрес электронной почты для нового пользователя.
  • <first_name>: Имя пользователя (необязательно).
  • <last_name>: Фамилия пользователя (необязательно).
  • <password>: пароль для нового пользователя.

Например:

airflow create_user -r Admin -u new_user -e [email protected] -f New -l User -p my_password

Это добавит вас в качестве пользователя в Apache Airflow, и теперь вы можете получить доступ к панели управления Airflow. Теперь перейдите на http://localhost:8080 и введите свои учетные данные, и вы увидите что-то вроде этого:

Поздравляем!!! Вы успешно установили и настроили Apache Airflow.

Вот и все, да пребудет с вами Сила.

Увидимся в следующей статье, где мы создадим и развернем конвейер машинного обучения с использованием Apache Airflow.