単一ノードクラスタは、ノードが 1 つだけの Dataproc クラスタです。この単一ノードは、Dataproc クラスタのマスターとワーカーの両方として機能します。単一ノードクラスタはノードが 1 つだけですが、以下に挙げるものを除く、Dataproc のほとんどのコンセプトと機能が同じように適用されます。
単一ノードの Dataproc クラスタは、次のような場合に役に立ちます。
- Spark と Hadoop の新しいバージョン、または他のオープンソース コンポーネントを試す場合
- 概念実証(PoC)用のデモンストレーションを構築する場合
- 軽量のデータ サイエンス
- 小規模の重要ではないデータ処理
- Spark と Hadoop のエコシステムに関する教育
単一ノードクラスタのセマンティクス
単一ノードの Dataproc クラスタには、次のセマンティクスが適用されます。
- 単一ノードクラスタは、マルチノードの Dataproc クラスタと同じように構成され、HDFS や YARN などのサービスが含まれます。
- 単一ノードクラスタは、初期化アクションに対してはマスターノードとして報告されます。
- 単一ノードクラスタは、単一ノードがマスターとワーカーの両方として機能するので、ワーカーが 0 と表示されます。
- 単一ノードクラスタには、
clustername-m
というパターンのホスト名が付けられます。 このホスト名を使用すると、SSH 接続や、ノード上のウェブ UI への接続を行えます。 - 単一ノードクラスタをマルチノード クラスタにアップグレードすることはできません。いったん作成された単一ノードクラスタは、1 ノードに制限されます。同様に、マルチノード クラスタを単一ノードクラスタにスケールダウンすることはできません。
制限事項
単一ノードクラスタは、大規模な並列データ処理にはおすすめしません。単一ノードクラスタではリソースが不足する場合は、マルチノードの Dataproc クラスタをおすすめします。
単一ノードクラスタは、クラスタ内のノードが 1 つのみとなるため、高可用性では使用できません。
単一ノードクラスタでは、プリエンプティブ VM を使用できません。
単一ノードクラスタの作成
gcloud コマンド
gcloud
コマンドライン ツールを使用して、単一ノードの Dataproc クラスタを作成できます。単一ノードクラスタを作成するには、gcloud dataproc clusters create コマンドに --single-node
フラグを渡します。
gcloud dataproc clusters create cluster-name \ --region=region \ --single-node \ ... other args
REST API
Dataproc REST API で、clusters.create リクエストを使用して単一ノードクラスタを作成できます。このリクエストを行うときは、次のことが必要になります。
- クラスタ リクエストの SoftwareConfig にプロパティ
"dataproc:dataproc.allow.zero.workers":"true"
を追加します。 workerConfig
とsecondaryWorkerConfig
の値は送信しないでください(ClusterConfig を参照)。
Console
Dataproc の [クラスタの作成] ページにある [クラスタの設定] パネルの [クラスタタイプ] セクションで、[単一ノード(マスター 1 個、ワーカー 0 個)] を選択して単一ノードクラスタを作成できます。