2016-03-23 18 views
3

私はMesosにKafkaをインストールしようとしています。インストールが成功したようです。Mesos DCOSはKafkaをインストールしません

しかし、kafkaタスクは開始されません。

[email protected]:/dcos$ dcos kafka 
Error: Kafka is not running 
[email protected]:/dcos$ 

マラソンUIはサービスがwaitingだと言います。それに割り当てられたリソースを受け入れていないように見えます。その他のログhere

Mar 23 03:52:59 ip-10-0-4-194.ec2.internal java[1425]: [2016-03-23 03:52:59,335] INFO Offer ID: [54f71504-b37a-4954-b082-e1f2a04b7fa4-O77]. Considered resources with roles: [*]. Not all basic resources satisfied: cpu not in offer, disk SATISFIED (0.0 <= 0.0), mem not in offer (mesosphere.mesos.ResourceMatcher$:marathon-akka.actor.default-dispatcher-11) 
Mar 23 03:52:59 ip-10-0-4-194.ec2.internal java[1425]: [2016-03-23 03:52:59,370] INFO Offer [54f71504-b37a-4954-b082-e1f2a04b7fa4-O77]. Insufficient resources for [/kafka] (need cpus=0.5, mem=307.0, disk=0.0, ports=(1 dynamic), available in offer: [id { value: "54f71504-b37a-4954-b082-e1f2a04b7fa4-O77" } framework_id { value: "54f71504-b37a-4954-b082-e1f2a04b7fa4-0000" } slave_id { value: "54f71504-b37a-4954-b082-e1f2a04b7fa4-S1" } hostname: "10.0.4.190" resources { name: "ports" type: RANGES ranges { range { begin: 1 end: 21 } range { begin: 23 end: 5050 } range { begin: 5052 end: 32000 } } role: "slave_public" } resources { name: "cpus" type: SCALAR scalar { value: 4.0 } role: "slave_public" } resources { name: "mem" type: SCALAR scalar { value: 14019.0 } role: "slave_public" } resources { name: "disk" type: SCALAR scalar { value: 32541.0 } role: "slave_public" } attributes { name: "public_ip" type: TEXT text { value: "true" } } url { scheme: "http" address { hostname: "10.0.4.190" ip: "10.0.4.190" port: 5051 } path: "/slave(1)" }] (mesosphere.mesos.TaskBuilder:marathon-akka.actor.default-dispatcher-11) 

Mesosマスターログ..

Mar 23 15:38:22 ip-10-0-4-194.ec2.internal mesos-master[1371]: I0323 15:38:22.339759 1376 master.cpp:5350] Sending 2 offers to framework 54f71504-b37a-4954-b082-e1f2a04b7fa4-0000 (marathon) at [email protected]:60450 
Mar 23 15:38:22 ip-10-0-4-194.ec2.internal mesos-master[1371]: I0323 15:38:22.341790 1381 master.cpp:3673] Processing DECLINE call for offers: [ 54f71504-b37a-4954-b082-e1f2a04b7fa4-O373 ] for framework 54f71504-b37a-4954-b082-e1f2a04b7fa4-0000 (marathon) at [email protected]:60450 
Mar 23 15:38:22 ip-10-0-4-194.ec2.internal mesos-master[1371]: I0323 15:38:22.342041 1381 master.cpp:3673] Processing DECLINE call for offers: [ 54f71504-b37a-4954-b082-e1f2a04b7fa4-O374 ] for framework 54f71504-b37a-4954-b082-e1f2a04b7fa4-0000 (marathon) at [email protected]:60450 

マラソンはその申し出好きではなかった理由はありません確認してください。私はかなりのリソースがあると確信しています。

+0

あなたはどのインスタンスの種類を使用していますか? –

+0

すべてのスレーブとマスターに対してm3.xlarge。私はガブリエルの答えが正しい方向にあると思う。 – Cheeko

答えて

4

マラソンは、カフカスケジューラに十分なリソースを持つオファーを待っています。それが拒絶しているオファーは、CPUやメモリを持たないようです。十分なリソースを持つオファーには、ロール "slave_public"に対してすでに静的に予約されています。

カフカスケジューラはロール*で実行されます。クラスタには、デフォルトの役割*に十分なリソースがありません。これはプライベートスレーブに関連する役割です。

mesos/stateを見て、 "*"の役割を持つスレーブ上の利用可能なリソースを見てください。

+0

あなたは正しいです。私は全てのプライベートインスタンスをシャットダウンしました。私はkafkaブローカーに公開IPを持たせて、私の開発マシンからアクセスできるようにしたい。カフカスケジューラに代わりに "slave_public"ロールを使用するように指示する方法はありますか? – Cheeko

+0

'DCOSパッケージインストールカフカ--options = /パス/への/ options.json' ' $猫options.json { "カフカ":{ "フレームワークロール": "slave_public" }} ' 上記はうまくいくかもしれません。それが動作しない場合は、クラスタ内またはVPN経由でKafkaにアクセスする必要があります。 – Gabriel

+0

これは機能しませんでした。それはまだ "*"役割のリソースを探すことを試みていました。 – Cheeko

関連する問題