このドキュメントはGoogle Compute Engine クラスタ上でHadoop 1 あるいは Hadoop 2 を使って自動的にFlinkをセットアップする方法の説明を提供します。これはクラスタを開始しHadoopと一緒にFlinkをデプロイするGoogleの bdutil によって可能になります。開始するには、以下のステップに従ってください。
Google クラウド SDKをセットアップする方法についての指示に従ってください。特に、以下のコマンドを使ってGoogleクラウドとの認証をするようにしてください:
gcloud auth login
現在のところ、Flink拡張を含むbdutilリリースはまだありません。しかし、GitHubからFlinkをサポートするbdutilの最新バージョンを取得することができます:
git clone https://github.com/GoogleCloudPlatform/bdutil.git
ソースをダウンロードした後で、新しく作成したbdutil
ディレクトリに変更し、次のステップを続けてください。
まだそうしていない場合は、bdutil設定とステージングファイルのためのbucketを作成します。新しいbucketはgsutilを使って生成することができます:
gsutil mb gs://<bucket_name>
bdutilを持つFlinkをデプロイするために、少なくとも以下の変数をbdutil_env.shに適用します。
CONFIGBUCKET="<bucket_name>"
PROJECT="<compute_engine_project_name>"
NUM_WORKERS=<number_of_workers>
# set this to 'n1-standard-2' if you're using the free trial
GCE_MACHINE_TYPE="<gce_machine_type>"
# for example: "europe-west1-d"
GCE_ZONE="<gce_zone>"
bdutilのFlink拡張は設定を処理します。さらに設定変数をextensions/flink/flink_env.sh
に適応するかも知れません。さらに設定をしたい場合は、Flinkの設定を見てください。設定を変更した後で bin/stop-cluster
とbin/start-cluster
を使ってFlinkを再起動する必要があるでしょう。
Google Compute Engine上でFlinkクラスタを起動するには、以下を実行します:
./bdutil -e extensions/flink/flink_env.sh deploy
./bdutil shell
cd /home/hadoop/flink-install/bin
./flink run ../examples/batch/WordCount.jar gs://dataflow-samples/shakespeare/othello.txt gs://<bucket_name>/output
クラスタのシャットダウンは実行と同じくらい簡単です
./bdutil -e extensions/flink/flink_env.sh delete