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.

Pulsarctl & Pulsar Manager

28 views

Published on

Apache Pulsar Meetup 1116

Published in: Data & Analytics
  • Be the first to comment

  • Be the first to like this

Pulsarctl & Pulsar Manager

  1. 1. 冉⼩⻰ 俄⼴宁 使⽤ pulsarctl 和 pulsar-manager 管理 pulsar 集群 2019/11/16
  2. 2. Who am I • Go programmer • PingCAP > Bitmain > StreamNative • Pulsar committer ◦ pulsar-client-go ◦ Go Functions ◦ … • https://github.com/wolfstudy
  3. 3. 01 Why develop pulsarctl 02 What is pulsarctl 03 How to use Admin Api 04 How to use CLI 05 How to contribute 06 Future Pulsarctl
  4. 4. Why develop pulsarctl • Apache Pulsar 是云原⽣的分布式系统 • pulsar admin 存在的问题 • 依赖多,需要加载JVM环境 • 描述信息不全 • 不易于 debug
  5. 5. 基于 REST API 使⽤ Go 语⾔开发的⼀个 CTL ⼯具 What is pulsarctl Go Admin API Command-cli tools pulsarctl
  6. 6. How to use Admin Api https://godoc.org/github.com/streamnative/pulsarctl
  7. 7. How to use Admin Api Cluster.List() instantiate a admin object Call interface 1 2 https://github.com/streamnative/pulsarctl/blob/master/examples.go
  8. 8. How to use CLI • Used for : 对该命令的使⽤场景进⾏描述 • Required Permission:使⽤该命令所需要的 权限 • Output:列出使⽤该命令所有的输出信息,包 括正确的输出和错误的输出 • Examples:列出命令的使⽤示例 • Flags: 该命令所需要的所有参数列表 https://streamnative.io/docs/pulsarctl/v0.1.0/
  9. 9. pulsarctl VS pulsar admin 废弃 json string, 使⽤特殊字符代替
  10. 10. pulsarctl VS pulsar admin 拆分 topics commands subscriptions topics
  11. 11. pulsarctl VS pulsar admin 整合 topics commands partition topic topic
  12. 12. How to contribute https://github.com/streamnative/pulsarctl/blob/master/docs/zh/developer-guide.md https://github.com/streamnative/pulsarctl/blob/master/CONTRIBUTING.md https://github.com/streamnative/pulsarctl/
  13. 13. Feature https://github.com/streamnative/pulsarctl/issues • Add pulsarctl to Homebrew • Add context for pulsarctl • Add bookkeeper cli • Separate policies from subscriptions • Support different ways to dump result • …
  14. 14. Thanks Q & A
  15. 15. Who am I • Java && Python programmer • Creditease > Meituan > StreamNative • Pulsar committer ◦ Pulsar Connector ◦ Pulsar Manager ◦ … • https://github.com/tuteng
  16. 16. 01 Motivation 02 Operation 03 Doing 04 Future Contents
  17. 17. Motivation 01
  18. 18. Motivation Dashboard Pulsar-managerVS • Focus on simple monitoring • Weak management • Multi-cluster is not supported • Focus on management • Simple monitoring • Multi-cluster, multi-environment management • More suitable for cloud • JWT authentication authorization and management • Deployment simple
  19. 19. Operation 02
  20. 20. Operation
  21. 21. Multiple environments
  22. 22. Multiple clusters • Geo replication • Global tenants, namespace • Topics management by cluster
  23. 23. Clusters management • Set basic configuration • Set failure domains • Isolation policies
  24. 24. Clusters management
  25. 25. Tenants management • Create Tenant • Delete Tenant • Update Configuration
  26. 26. Tenants management
  27. 27. Namespaces management • Create Namespace • Delete Namespace • Update Policies
  28. 28. Namespaces management
  29. 29. Topics management • More info(Storage, segment, cursor) • Create Topic(Persistent, non-persistent) • Delete Topic • Update Configuration • Topics monitor(Aggregated data)
  30. 30. Topics management
  31. 31. Topics monitor
  32. 32. Subscription management • Consumer information • Backlog skip • Backlog clear • Backlog expire • Reset cursor
  33. 33. Subscription management
  34. 34. Authentication and authorization • JWT tokens management • Namespace grant permission • Topic grant permission
  35. 35. Authentication and authorization
  36. 36. Deployment • Docker • K8s • Self build
  37. 37. Doing 03
  38. 38. Authentication and authorization
  39. 39. Authentication and authorization • User management • Role management • Deep into with multi tenant • More detailed permission design
  40. 40. Authentication and authorization
  41. 41. Future 04
  42. 42. Future • Aggregated data for tenants, namespaces • Support large of topics(search, query, page) • Bookies management
  43. 43. Thanks

×