私は糸(より正確にはAWS EMR糸クラスター)でflinkを実行しています。なぜflinkコンテナのvcoreサイズは常に1
私はflinkドキュメントとソースコードを読んで、各タスクマネージャコンテナのデフォルトでは、スレッドからリソースを要求するときに、タスクマネージャごとのスロット数をvcoresの数として要求します。 そして、私はまた、ソースコードから確認:私は-yn 1 -YS 3が、私は、糸が唯一のタスクマネージャコンテナの3 vcoresを割り当てますと仮定FLINKを開始するために使用
// Resource requirements for worker containers
int taskManagerSlots = taskManagerParameters.numSlots();
int vcores = config.getInteger(ConfigConstants.YARN_VCORES,
Math.max(taskManagerSlots, 1));
Resource capability = Resource.newInstance(containerMemorySizeMB,
vcores);
resourceManagerClient.addContainerRequest(
new AMRMClient.ContainerRequest(capability, null, null,
priority));
が、私がチェックしたときにヤーンリソースマネージャのWebから各コンテナのためのvcoresの数、私は常に1のvcoresの数を参照してください。私はまた、ヤングリソースマネージャーのログから1になることをvcoreを参照してください。
私は以下の貼り付けラインにFLINKソースコードをデバッグ、およびIはvcoresの値を見ては、あります。 これは本当に私を混乱させる、誰でも私のために明確にすることができます、ありがとう。
どのようにあなたのアプリケーションを実行するのですか?コマンドを使用するか、IDEでコマンドを使用する場合は、コマンドを教えてください – soheil
コマンドラインから開始:flink run -m yarn-cluster -yn 1 -ys 3 uber.jar "flinkジョブを開始します – yinhua
いずれかが助けてください? – yinhua