> they have to prepend PULSAR_PREFIX_ to the other options.

Good point. It should be taken carefully.

Thanks,
Yunze

On Tue, Dec 13, 2022 at 10:46 PM Enrico Olivelli <eolive...@gmail.com> wrote:
>
> I agree that we should make it simpler.
> There are too many knobs that people shouldn't try to turn if they
> don't know what they are doing.
>
> Il giorno mar 13 dic 2022 alle ore 14:19 Kai Wang
> <wangkai744567...@gmail.com> ha scritto:
> >
> > +1, we can provide a minimal configuration file to users. It only contains 
> > the required config and a few commonly used configs.
> >
> > The full configuration file can be named `broker.full.conf`, and it is used 
> > to provide a reference for users.
>
> I am not sure that we need this file, we can use the documentation
> website to advertise about all the possibilities.
>
> I want to add a point:
> currently k8s users use the script that handles only the options
> explicitly written in broker.conf and proxy.conf.
> and they have to prepend PULSAR_PREFIX_ to the other options.
>
> We should make changes that are compatible with current k8s users,
> otherwise it will be a big pain.
> Maybe we have to change the script that applies the ENV to the .conf file
>
>
> Enrico
>
> >
> > Thanks,
> > Kai
> > On Dec 13, 2022 at 9:03 PM +0800, Yunze Xu <y...@streamnative.io.invalid>, 
> > wrote:
> > > For example, when running a standalone (without TLS enabled), only the
> > > following configs are required:
> > >
> > > ```properties
> > > brokerServicePort=6650
> > > webServicePort=8080
> > > allowLoopback=true
> > > clusterName=standalone
> > > managedLedgerDefaultEnsembleSize=1
> > > managedLedgerDefaultWriteQuorum=1
> > > managedLedgerDefaultAckQuorum=1
> > > ```
> > >
> > > Actually only these two ports and `clusterName` are needed, other
> > > configurations can be configured with a default values for standalone.
> > > However, I found there are over 600 configurations in the
> > > `standalone.conf`:
> > >
> > > ```bash
> > > $ grep "^[^#]" conf/standalone.conf | wc -l
> > > 629
> > > ```
> > >
> > > Thanks,
> > > Yunze Xu
> > >
> > > On Tue, Dec 13, 2022 at 8:53 PM Yunze Xu <y...@streamnative.io> wrote:
> > > >
> > > > Hi all,
> > > >
> > > > As more people joined the development of Pulsar and more PIPs are
> > > > opened, I found the configurations became very large. At the moment
> > > > for commit 9917aac, there are 426 configuration items in broker.conf,
> > > > which is too many.
> > > >
> > > > ```bash
> > > > $ grep "^[^#]" conf/broker.conf | wc -l
> > > > 426
> > > > ```
> > > >
> > > > For beginners, finding the real useful configs from the `broker.conf`
> > > > is hard. For developers, it's also bad. For example, the IDE code
> > > > completion works significantly slower for a method of
> > > > `ServiceConfiguration` than other classes.
> > > >
> > > > Let's look at Apache Kafka, there are only 17 configs in the server
> > > > configuration file.
> > > >
> > > > ```bash
> > > > kafka_2.13-3.3.1$ grep "^[^#]" config/server.properties | wc -l
> > > > 17
> > > > ```
> > > >
> > > > I think this difference makes Pulsar far more complicated to customize
> > > > than Kafka, or than Pulsar should be.
> > > >
> > > > I have an idea that we can split `ServiceConfiguration` into different
> > > > configuration classes. Some configs that are not commonly used should
> > > > be moved into another configuration file. Just a brainstorm, does
> > > > anyone else have better ideas?
> > > >
> > > > Thanks,
> > > > Yunze

Reply via email to