Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Kafka通常オペレーションで遭遇する問題集 #kafkajp

1,072 views

Published on

Apache Kafka Meetup Japan #2 https://kafka-apache-jp.connpass.com/event/45923/ 発表資料

Published in: Technology
  • Be the first to comment

Kafka通常オペレーションで遭遇する問題集 #kafkajp

  1. 1. 2016/12/15 ヤフー株式会社 梁 浩軒 Kafka 通常オペレーションで遭遇する問題集 1
  2. 2. アジェンダ 本LTの説明 -サーバ追加時のBroker Idどうするか問題 -サーバリプレイス時Broker Id歯抜け問題 -TOPICリアサイン時disk使用率問題 -TOPICパーティション割り振りどうするか問題 -Kafka-managerのConsumer-version不一致 まとめ 2
  3. 3. 本LTの説明 Kafkaを運用してきて、頻繁に遭遇する各種オペレーションに 付いてまとめる 主にKafka0.8系と0.10系で発生した問題について述べる 3
  4. 4. サーバ追加時のBroker Idどうするか問題 ・新規Brokerを追加するときにBroker Idの割り振り方をホスト 名にそって連番でつけたい、ただし、デフォルトの機能 (0.9~0.10系)を使うとずれる ー>ホスト名からBroker Idを作成するシェルをつくります 4
  5. 5. サーバリプレイス時Broker Id歯抜け問題 Broker Id歯抜け問題 ・ホスト名から連番を設定していたため、新たに追加するとリ プレイスしたホスト名とBroker Idが歯抜けになる ー>ホスト名を変更して対応しようとするとデータ一時避難 用のサーバとリプレイス用のサーバが2つ必要になる 5
  6. 6. TOPICリアサイン時disk使用率問題 ・TOPICをリアサインするとタイムスタンプが更新され、データ が削除されなくなるため、disk使用量が2倍になる ー>サーバに割り振るトピックの総データサイズが50%になら ないようにする 6
  7. 7. TOPICパーティション割り振りどうするか問題 ・リーダとレプリカは同時に落とせない。適当に割り振るとオ ペレーションが大変になる ー>奇数にリーダ、偶数にレプリカなどルールを決めて割り 振るシェルを作成する ー>0.10系からはラックアウェアネスというラックごとのリーダ とレプリカの割り振り機能がある 7
  8. 8. Kafka-managerのConsumer-version不一致 ・Kafka-managerで複数versionのkafkaクラスタを管理すると き、kafka-managerのconsumerが1-versionしかないため、 データをconsumeできないときがある ー>別々のversionのKafka-managerを立てる 8
  9. 9. まとめ ・サーバ追加時やサーバリプレイス時、TOPIC操作時にも面 倒な対応が必要になる ・このほかにも、TOPICリアサイン時やパーティションリーダ 再抽選時のトラフィック問題など、通常オペレーションで気に しなければいけないことはいろいろある。 ー>今後の改善に期待 9

×