1. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
ヤフー株式会社 テクノロジーグループシステム統括本部クラウドプラット
フォーム本部 技術3部 藤社陽実
OpenWhiskのMQをKafkaからPulsarに
変えてみた件
2019年9⽉4⽇
2. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
2
⾃⼰紹介
名前:藤社陽実
2017/7以前:ゲーム会社〜
SIerを経験
2017/7〜︓ヤフー株式会社に
⼊社 FaaSを扱う部署に配属
3. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
アジェンダ
3
• Apache OpenWhiskとは
• KafkaからPulsarに変えてみた件
• 変えてみた結果どうだった︖
4. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
Apache OpenWhiskとは
5. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
Apache OpenWhiskとは
5
• 分散型サーバレスクラウドプラットフォーム
• イベントドリブン型のプログラミングサービス
• 任意の⾔語でFunctionを書くことができる
• https://github.com/apache/openwhisk/
6. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
Apache OpenWhiskの構成
6
Apache OpenWhiskの構成を説明します。
Controller・・・イベントの受信
Invoker・・・処理の実⾏
転載元:https://github.com/apache/openwhisk/
7. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
Apache OpenWhiskの構成
7
Controller・・・イベントの受信
Invoker・・・処理の実⾏
変えてみたのは
ここ
転載元:https://github.com/apache/openwhisk/
8. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
KafkaからPulsarに変えてみた件
9. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
前提について
9
• 社内ではPulsarを中央管理しているチームがいる
• MQに対する知⾒があまりない
10. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
課題について
10
• Kafkaの管理が⼤変だった
• 開発業務に集中したい
11. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
参考にした資料
11
• 「Pulsar adaptor for Apache Kafka」を元に進めていく
• https://pulsar.apache.org/docs/en/adaptors-kafka
12. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
参考にした項⽬
12
• Using the Pulsar Kafka compatibility
wrapper
• Producer example
• Compatibility matrix
• Pulsar client properties
• Pulsar producer properties
13. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
調べてみた
13
• 簡単に差し替えはできないか︖
Ø Pulsar-client-kafkaをビルドの依存に追加するだけ
でPulsarに差し替えられそうだった