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

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

Сегодня вы узнаете, как установить платформу на виртуальную машину, настроить ее и установить SSH-соединение с помощью терминала и кода Visual Studio.

Статья построена следующим образом:

  • Шаг 1. Загрузите и установите Ubuntu Server
  • Шаг 2: Установите SSH-соединение через терминал
  • Шаг 3. Установите Apache Airflow
  • Шаг 4. Установите соединение SSH с помощью кода Visual Studio.
  • Заключение

Шаг 1. Загрузите и установите Ubuntu Server.

Начнем с самого простого. Я предполагаю, что у вас уже установлен VirtualBox. Если это не так, установите его, прежде чем продолжить.

Начнем с загрузки ISO-файла Ubuntu Server. Его объем загрузки составляет около 1 ГБ, так что это не займет много времени:

Во время загрузки вы можете настроить виртуальную машину. Перейдите в VirtualBox и создайте новую машину согласно следующему изображению:

Оттуда просто нажмите Далее несколько раз и выберите подходящую конфигурацию ОЗУ и хранилища. Я выбрал 4 ГБ для ОЗУ и 25 ГБ для хранилища, но не стесняйтесь выделять по-другому.

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

Давайте настроим еще пару вещей во время загрузки ISO. Откройте Настройки для нового компьютера и перейдите в Сеть. В разделе Дополнительно нажмите кнопку Перенаправление портов:

Нам нужно будет перенаправить два порта:

  1. От гостя 8080 до хоста 8250 (или любой другой, в документации рекомендуется 8080, но он занят на моем компьютере) для пользовательского интерфейса Airflow.
  2. От гостя 22 к узлу 2222 для подключения по SSH

После этого ваше окно должно выглядеть так:

Вот и все - с точки зрения конфигурации. Мы надеемся, что файл ISO уже загружен, поэтому запустите виртуальную машину и загрузите файл ISO для установки. Установите ОС как обычно. Вам нужно будет создать пользователя - я назвал свой airflow.

Вот скриншот из установки:

Если вы видите что-то подобное, значит, вы на правильном пути. После завершения установки вы можете перезапустить виртуальную машину и войти в систему под своим пользователем. Вот и все - Ubuntu Server установлен!

Шаг 2: Установите SSH-соединение через терминал

Теперь мы можем установить SSH-соединение из Терминала (или PuTTY, если вы работаете в Windows).

Для macOS и Linux вам нужно будет ввести в Терминал следующую строку:

ssh -p 2222 airflow@localhost

Как показано на изображении ниже:

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

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

Установка Apache Airflow - это многоэтапный процесс. Все это основано на Python, а Ubuntu Server не поставляется с Python 3. Следующая команда изменит это:

sudo apt install python3-pip

Теперь у вас установлен Python 3.8.x (или более новая версия), так что вы готовы к установке Airflow. Следующая команда терминала сделает это:

sudo pip3 install “apache-airflow==2.0.2” — constraint “https://raw.githubusercontent.com/apache/airflow/constraints-2.0.2/constraints-3.8.txt"

Пожалуйста помни:

  • Замените 2.0.2 нужной версией
  • Свяжите constraints-3.8.txt с вашей версией Python. Например, если вы используете Python 3.9.x, это должно быть: constraints-3.9.txt

Установлен воздушный поток! Но это не значит, что он настроен. Вам также потребуется инициализировать базу данных и создать пользователя. Следующая команда инициализирует базу данных для Airflow:

airflow db init

И следующий создает пользователя:

airflow users create — username admin — firstname <your_first_name> — lastname <your_last_name> — role Admin — email <your_email>

После этого вы можете запустить веб-сервер Airflow в качестве демона с помощью следующих команд:

airflow webserver -D

Вот и все - Apache Airflow запущен!

Для проверки откройте веб-браузер и перейдите к localhost:8250 (замените 8250 на порт хоста для Airflow). Вы должны увидеть следующий экран:

Чтобы продолжить, введите учетные данные пользователя базы данных, созданные минуту назад, и нажмите Войти. Вы сразу увидите следующий экран:

Вот и все - вы в деле! Не беспокойтесь о тоннах DAG, которые загружаются изначально. Вы можете быстро удалить их из веб-приложения или указать не загружать их в конфигурации Airflow.

Далее давайте посмотрим, как установить удаленное SSH-соединение с вашей виртуальной машиной из Visual Studio Code.

Шаг 4. Установите соединение SSH с помощью кода Visual Studio.

Если вы похожи на меня, ручная передача файлов с хоста на клиент - слишком большая работа. К счастью, бесплатный редактор кода - Visual Studio Code - может управлять подключением за вас.

Для начала установите бесплатный плагин под названием Remote - SSH:

Затем нажмите маленькую синюю кнопку в нижнем левом углу и выберите параметр Подключиться к хосту:

Затем введите команду подключения, идентичную той, которую вы ввели в Терминале:

Visual Studio Code попросит вас добавить конфигурацию подключения в список конфигураций SSH, поэтому выберите первый вариант:

Еще раз нажмите маленькую синюю кнопку, чтобы подключиться к локальному хосту:

Как только вы это сделаете, появится новое окно кода Visual Studio, и вам нужно будет ввести пароль. Это тот же пароль, который вы выбрали для пользователя Ubuntu Server:

И, наконец, вы можете нажать кнопку Открыть папку, чтобы открыть любой каталог на удаленном хосте. Давайте откроем папку /home/airflow:

Вот и все - вы готовы создать свой первый Airflow DAG. Обязательно поместите их в папку dags (сначала вам нужно создать ее), так как именно там Airflow попытается их найти. Вы всегда можете изменить файл конфигурации, но это выходит за рамки сегодняшнего дня.

Давайте подведем итоги в следующем разделе.

Заключение

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

Далее мы узнаем, как создать и запланировать первую группу DAG, так что следите за новостями в блоге, если хотите узнать больше.

Учить больше

Оставайся на связи

  • Следуйте за мной на Medium, чтобы увидеть больше подобных историй
  • Подпишитесь на мою рассылку"
  • Подключиться к LinkedIn