On Thu, Nov 2, 2017 at 2:26 AM, Enrico Olivelli <eolive...@gmail.com> wrote:
> 2017-11-02 10:11 GMT+01:00 Sijie Guo <guosi...@gmail.com>: > > > On Thu, Nov 2, 2017 at 12:44 AM, Enrico Olivelli <eolive...@gmail.com> > > wrote: > > > > > 2017-11-02 8:34 GMT+01:00 Sijie Guo <guosi...@gmail.com>: > > > > > > > Hi all, > > > > > > > > in apache/bookkeeper#499 <https://github.com/apache/ > > > bookkeeper/issues/499 > > > > >, > > > > we moved packaging distribution pkgs from bookkeeper-server to > > > > bookkeeper-dist and included all the plugins. so people can choose > > which > > > > stats provider and which http server binding to use. It provides the > > > > flexibility for users, but it also increases the size of the binary > > > > packages. > > > > > > > > I am wondering if we should consider providing another distribution > > > package > > > > -- we can call it `standard` -- which it only includes one stats > > provider > > > > (e.g. prometheus) and one http server (e.g. vertx). so in the docker > > > > images, we can provide two images, one includes everything, the other > > > > includes one default plugin. so user can choose which one to use and > it > > > can > > > > be a good tradeoff between flexibility and package size. > > > > > > > > Any thoughts? > > > > > > > > > > It would be good to have an idea of how users run Bookies. > > > It is not very clear to me in the BookKeeper ecosystem how Bookies are > > > deployed usually. > > > > > > > I think there are two things to distinguish, packaging and deployment. > > packaging are about to include the dependencies and offer scripts for > > running services, > > deployment is actually more about how to distribute the package and run > > services using the scripts to run bookie services. As a community, we > can't > > control > > how people wants to deploy, we only offer recommendations and tutorials > on > > how to deploy in different environments. And the deployment process is > > usually > > customized in different companies with different deployment mechanisms in > > different environments. > > > > Packages (both binary package and docker images) are things we > distributed > > for each release. Essentially what we need to provide is a package (it > can > > be > > a gzip, bz2 tar ball or a docker image), that includes all the necessary > > assets and scripts for running bookies. How to deploy is tight with the > > deployment system > > and it is up to how the deployment method uses the offer package. For > sure, > > people can include bookkeeper dependency and tightly integrate their > > tooling chain > > and deployment method, that's out of the scope of release packages. > > > > > Clear > > > > > > > > > > > I have very limited knowledge, as far as I know we have: > > > - run bookie using scripts provided in the distribution package. Does > > > anyone really uses it ? Twitter, Salesforce, custom scripts ? > > > > - Docker, Kubernetes...... > > > - Mesos/Aurora ? still Docker ? > > > - Embedded bookies, packaged together with other applications (this is > my > > > case) > > > > > > > I don't know best practices for Pulsar, DL, Pravega....do users run > > Bookie > > > or use scripts provided by the "main" technology ? > > > For my products (non opensource) we provide custom scripts and we > package > > > the bookie tailoring it to our needs > > > > > > There is only two categories - 1) applications use a package (the package > > can be the official binary tar ball or docker images, or a customized > > package) > > to install a bookkeeper cluster; 2) applications take bookkeeper as a > > library and integrate with their own software. The release packages are > > only for category 1). > > I don't think we are responsible for packaging for category 2). > > > > Makes sense > > > > > > > > > > > I think that for the Docker world it is good to do as you Sijie are > > > proposing, two packages: > > > - uber package > > > - small package, but working > > > so I am +1 with your idea of having 2 images > > > > > > > Just to clarify, I don't mean docker image only. It is more a question on > > providing the tar balls -- when people download the tarballs, what are > > available for users to run a bookie. > > > > > OK. > > I think that we should provide at least one stats provider which enables > JMX and an Http Server with the basic ('standard'?) bundle. > And we could provide another package with the full set of supported > options. > As you are saying we are missing the first, the base package with a stats > logger and an http server. > Does Prometheus provide JMX support as Codahale ? > I am proposing we releasing two binary packages for each release: bookkeeper-dist-all => include all stats providers and all https servers bookkeeper-dist => include one stats provide and one http server. the stat provider can be Prometheus or Codahale, the http server can be vertx. > > Enrico > > > > > > > > > > > > > > > Enrico > > > > > > > > > > > > > > > > > - Sijie > > > > > > > > > >