目次
1. DataX-Web の概要
1.1 DataX-Webとは
项目地址:https://github.com/WeiYe-Jing/datax-web
datax-web は、DataX 上で開発された分散データ同期ツールです。シンプルで使いやすい操作インターフェイスを提供し、DataX を使用するためのユーザーの学習コストを削減します。タスクの設定時間を短縮し、設定中のエラーを回避します。ユーザーはページからデータ ソースを選択し、データ同期タスクを作成できます。 RDBMS、Hive、HBase、ClickHouse、MongoDB、その他のデータ ソースをサポートします。 RDBMS データ ソースは、データ同期タスクをバッチで作成でき、データ同期の進行状況とログのリアルタイム表示をサポートし、同期終了機能を提供します。xxl-job を統合して二次開発し、時間と自動に基づいて段階的にデータを同期できます。 -増加された主キー。
タスク「エグゼキュータ」は、クラスタの展開、エグゼキュータのマルチノード ルーティング戦略の選択、タイムアウト制御、失敗の再試行、失敗アラーム、タスクの依存関係、エグゼキュータの CPU、メモリ、負荷監視などをサポートします。
1.2 DataX-Web アーキテクチャ
2. DataX-Web のインストールと展開
2.1 環境要件
環境 | 必要とする |
---|---|
オペレーティング·システム | マック、Windows、Linux |
ジャワ | Java8、jdkバージョンは1.8.201以上を推奨 |
パイソン | Python (2.x) (Python3 をサポートするには、datax/bin にある 3 つの Python ファイルを変更して置換する必要があります。置換ファイルは doc/datax-web/datax-python3 にあります)。必須です。主にスケジュールを設定するために使用されます。基礎となる DataX の起動スクリプトを実行します。デフォルトの方法は、DataX を Java サブプロセス モードで実行することです。ユーザーは、Python モードでカスタマイズされた変換を行うことを選択できます。 |
MySQL | MySQL 5.7+ |
メイビン | Apache Maven 3.6.1+、インストール パッケージのコンパイルに必要 (オプション) |
データX | データX3 |
対応する基本環境については、この記事のインストールを確認してください:Big Data DataX の詳細なインストール チュートリアル - CSDN ブログ
2.2 インストール
インストール パッケージを直接ダウンロードします (ダウンロード アドレス: https://pan.baidu.com/s/13yoqhGpD00I82K4lOYtQhg、抽出コード: cpsk) )、解凍して指定されたパスにインストールします。
(base) [root@hadoop03 ~]# ls
datax-web-2.1.2.tar.gz
(base) [root@hadoop03 ~]# tar -zxvf datax-web-2.1.2.tar.gz -C /usr/local/
2.3 導入
ワンクリック インストール スクリプトを実行し、解凍したディレクトリに移動し、bin ディレクトリの下にある install.sh ファイルを見つけます。対話型インストールを選択した場合は、次のコマンドを直接実行します。
(base) [root@hadoop03 ~]# cd /usr/local/datax-web-2.1.2/
(base) [root@hadoop03 /usr/local/datax-web-2.1.2]# ./bin/install.sh
対話型モードでは、各モジュールの圧縮パッケージを解凍し、configure 構成スクリプトを呼び出すときに、ユーザーに確認が求められます。プロンプトに従って、インストールが成功したかどうかを確認できます。インストールが成功しなかった場合は、次の操作を試してください。対話モードを使用したくない場合は、確認プロセスを通過した後、次のコマンドを実行してインストールします。
./bin/install.sh --force
2.4 データベースの初期化
mysql コマンドがローカル サービスにインストールされている場合、インストール スクリプトの実行中に次のリマインダーが表示されます。
Scan out mysql command, so begin to initalize the database
Do you want to initalize database with sql: [{INSTALL_PATH}/bin/db/datax-web.sql]? (Y/N)y
Please input the db host(default: 127.0.0.1):
Please input the db port(default: 3306):
Please input the db username(default: root):
Please input the db password(default: ):
Please input the db name(default: exchangis)
プロンプトに従ってデータベース アドレス、ポート番号、ユーザー名、パスワード、データベース名を入力すると、ほとんどの場合、初期化はすぐに完了します。 mysql コマンドがローカル サービスにインストールされていない (mysql がサーバーにインストールされていない) 場合は、ディレクトリ内の /bin/db/datax-web.sql スクリプトを使用して手動で実行できます。完了後、関連するスクリプトを変更します。設定ファイル:
(base) [root@hadoop03 /usr/local/datax-web-2.1.2]# vim modules/datax-admin/conf/bootstrap.properties
#Database
DB_HOST=192.168.170.136
DB_PORT=3306
DB_USERNAME=root
DB_PASSWORD=xxx
DB_DATABASE=dataxweb
特定の状況に応じて、対応する値を設定するだけです。
2.5 構成
インストールが完了したら、プロジェクト ディレクトリ /modules/datax-execute/bin/env.properties で PYTHON_PATH のパス (つまり、DataX の Python スクリプト パス) を指定します。
(base) [root@hadoop03 /usr/local/datax-web-2.1.2]# vim modules/datax-executor/bin/env.properties
······
## PYTHON脚本执行位置
#PYTHON_PATH=/home/hadoop/install/datax/bin/datax.py
PYTHON_PATH=/usr/local/datax/bin/datax.py
2.6 サービスを開始する
2.6.1 ワンクリックですべてのサービスを開始
./bin/start-all.sh
一部のモジュールは起動に失敗したり、プロセス中に停止したりする場合があります。終了して実行を繰り返すことができます。特定のモジュールのサービス ポート番号を変更する必要がある場合は、次のようにします。
vi ./modules/{module_name}/bin/env.properties
SERVER_PORT 構成項目を見つけて、その値を変更します。もちろん、特定のモジュール サービスを個別に開始することもできます。
./bin/start.sh -m {module_name}
2.6.2 ワンクリックですべてのサービスをキャンセルする
./bin/stop-all.sh
もちろん、特定のモジュール サービスだけを停止することもできます。
./bin/stop.sh -m {module_name}
2.7 サービスの表示 (注意! 注意!)
Linux 環境で JPS コマンドを使用して、DataXAdminApplication プロセスと DataXExecutorApplication プロセスが表示されるかどうかを確認します。存在する場合は、プロジェクトが正常に実行されていることを意味します。
プロジェクトの開始に失敗した場合は、起動ログを確認してください: modules/datax-admin/bin/console.out または modules/datax-executor/bin/console.out
ヒント: スクリプトは bash 命令セットを使用します。sh を使用してスクリプトを呼び出すと、不明なエラーが発生する可能性があります。
2.8 Web UI へのアクセス
導入が完了したら、ブラウザに「 http://ip:port/index.html 」と入力して、対応するメイン インターフェースにアクセスします。 (ip は datax-admin が展開されているサーバーの IP で、port は datax-admin によって指定された動作ポート 9527 です。) ユーザー名 admin とパスワード 123456 を入力して、システムに直接アクセスします。
ログインできず、アカウントとパスワードが間違っている場合は、まずデータベースにアクセスして、生成された dataxweb データベースがあるかどうかを確認します。そうでない場合は、datax_web.sql を dataxweb データベースに手動でインポートする必要があります。最初に dataxweb データベースを作成しますデータベースを選択し、このデータベースに入り、最後に datax_web .sql ファイルをインポートします。
(base) [root@hadoop03 /usr/local/datax-web-2.1.2/bin/db]# pwd
/usr/local/datax-web-2.1.2/bin/db
(base) [root@hadoop03 /usr/local/datax-web-2.1.2/bin/db]# ls
datax_web.sql
2.9 操作ログ
デプロイメントが完了すると、モジュール/対応するプロジェクト/データ/アプリログ (ユーザーは自分でログを指定することもできます。application.yml のログパス アドレスを変更するだけです) で、ユーザーは次の情報に基づいてプロジェクトの実際の起動ステータスを追跡できます。このログ
executor が admin よりも早く起動すると、executor は接続に失敗し、ログに「接続が拒否されました」エラーが報告されます。
解決策は、最初に admin を起動し、次に executor を起動することです。30 秒後に再接続されます。成功した場合は、この例外を無視してください。
(base) [root@hadoop03 /usr/local/datax-web-2.1.2/bin]# ./start.sh -m datax-admin
# 30s 后再启动
(base) [root@hadoop03 /usr/local/datax-web-2.1.2/bin]# ./start.sh -m datax-executor
3. DataX-Web タスクのデプロイメント
3.1 プロジェクトの作成
3.2 執行者の管理
すべてのオンライン Executor のリストは次のとおりです。
3.3 データソースの作成
3.3.1 mysql データソース
3.3.2 ハイブデータソース
datax-web は、ThriftServer を通じて Hive に接続されます。したがって、Hive の hiveserver2
サービスがオンになっていることを確認する必要があります。