この記事では、Conda環境内に安全なエアフローアプリケーションを展開し、Nginxをリバースプロキシとして活用し、SSL証明書の暗号化を行います。 強力なワークフロー管理ツールであるAirflowは、スケーラビリティと信頼性のためにVultr Serverに展開されています。
Airflowは、指向した非環式グラフ(DAG)を使用して、複雑なワークフローの定義、スケジューリング、および監視を簡素化します。そのオープンソースの性質により、コミュニティのサポートと継続的な改善が保証されます
(これは、世界中のスケーラブルなソリューションを提供する主要なクラウドコンピューティングプラットフォームであるVultrによるスポンサー記事です。)
vultrにサーバーを展開する:
Vultr Customer Portalにアクセスしてアカウントを作成します。
希望する場所を指定し、マーケットプレイスアプリケーションから「アナコンダ」を選択してください。
[今すぐ展開]をクリックします。
Vultr Managed PostgreSQLデータベースのセットアップ:
次に、Airflowのメタデータとセロリの結果のために、それぞれVultrが管理したPostgreSQLデータベースとその内部の2つの新しいデータベース(「Airflow-PGSQL」と「Airflow-Celerery」)を作成します。 手順には、「データベース」に移動し、PostgreSQLデータベースを追加し、「ユーザーとデータベース」の下に2つの新しいデータベースを追加することが含まれます。スクリーンショットは各ステップを示しています。 (オリジナルに似たスクリーンショットは、元の画像URLを参照して、こちらに含まれます。)
Condaバージョンを確認します(
conda環境()を作成します
)。conda --ver
)をインストールし、それを有効にして(conda create -n airflow python=3.8
)、そのステータス(
conda activate airflow
)。apt install -y redis-server
sudo systemctl enable redis-server
sudo systemctl status redis-server
)。
Airflow(pip install "apache-airflow[celery]==2.8.1" --constraint "https://raw.githubusercontent.com/apache/airflow/constraints-2.8.1/constraints-3.8.txt"
データベース資格情報を使用して
AIRFLOW__DATABASE__SQL_ALCHEMY_CONN
Airflow Metadataデータベース(airflow db init
(Airflow-PGSQLを使用して)を更新し、ワーカーとトリガーのログポート(8794および8795)、airflow.cfg
CeleryExecutor
Airflowユーザーを作成します(sql_alchemy_conn
)。 (プレースホルダーを実際の値に置き換えることを忘れないでください)
broker_url
redis://localhost:6379/0
result_backend
デーモー化気流サービス:airflow users create ...
Airflow Webサーバー、スケジューラ、およびセロリワーカーのSystemDサービスファイルを作成および有効にして、バックグラウンドで永続的に実行されるようにします。 これには、適切なパスとユーザー/グループ設定を使用してを使用してそれらを有効にして起動することが含まれます。 (オリジナルに似たスクリーンショットは、元の画像URLを参照して、こちらに含まれます。)
nginxリバースプロキシ構成:.service
airflow-webserver.service
セキュリティとスケーラビリティを改善するための逆プロキシとしてnginxを設定します。これには、nginxのインストール、仮想ホスト構成ファイル(ExecStart
)の作成(systemctl
)がAirflow WebServer(ポート8080)へのプロキシリクエストへのリクエスト、および構成の有効化が含まれます。 HTTP(ポート80)およびHTTPS(ポート443)トラフィックを許可するように、ファイアウォールルールを構成することを忘れないでください。 (オリジナルに似たスクリーンショットは、オリジナルの画像URLを参照して、ここに含まれます。)
SSL証明書を暗号化しましょう 最後に、CERTBOTを使用してLet's暗号化からSSL証明書を取得してインストールします。これにより、HTTPSで気流アプリケーションが保護されます。 このプロセスには、CERTBOTのインストール、証明書の取得(
)、およびAuto-Renewalのテストが含まれます。 (オリジナルに似たスクリーンショットは、オリジナルの画像URLを参照して、ここに含まれます。)
airflow.conf
この包括的なガイドの詳細は、Conda、Nginx、およびLet's Encyptを使用して、Vultrに堅牢で安全なエアフローアプリケーションを展開します。 その結果、制作可能で、スケーラブルで安全なワークフロー管理システムができました。
以上がAnacondaを使用して、Apache AirflowをVultrに展開する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。