On 09/23/2013 10:10 AM, Fuchs, Andreas (SwissTXT) wrote:
I'm following different threads here, mainly the poor radosgw performance one.
And what I see there are often recommendation to put a certain config to ceph.conf, but often it's unclear to me where exactly to put them
- does it matter if I put a config for all OSD's in [global] or [osd] ?
Example:
[osd]
osd max attr size = 655360
or should it be
[global]
osd max attr size = 655360
[global] is quite self-explanatory: options will be applied to any
daemon or subsystem, library or whatever that might use ceph.conf. Not
all options are used by all components though. For instance, if you
were to specify 'debug osd = 10' on [global], for all intents and
purposes, only OSDs would make use of it; otoh, if you were to specify
'keyring = /tmp/foo' under [global], then any components using the
keyring would use that option.
All options under [osd] however would be applied only to OSDs. For
instance, consider you wanted the global keyring to be on '/tmp/foo',
and the OSDs keyring to be on '/tmp/foo.osd' (merely illustrative, don't
take this seriously). Then you'd have:
[global]
keyring = /tmp/foo
[osd]
keyring = /tmp/foo.osd
The same thing that happens for [osd] would be valid for other
components: mon, mds, etc.
You could even have a global keyring, an osd-specific keyring, and then
specific keyrings for just a couple of specific osds. Once again, I
don't even know if this is feasible, this is just an example.
[global]
keyring = /tmp/foo
[osd]
keyring = /tmp/foo.osd
[osd.0]
keyring = /tmp/foo.osd.0
[osd.10]
keyring = /tmp/foo.osd.10
Back to your question, in that particular case, adding it under [osd] or
under [global] should bear the same effect, as that option is only used
on the osd. Having it under [osd] should be slightly more
straightforward on who is being affected by it though.
- different syntax
We saw recommendations to add
rgw enable ops log = false
but also
rgw_enable_ops_log disabled
which one is correct?
From ceph's point-of-view, having 'rgw enable ops log' or
'rgw_enable_ops_log' or even (I think!) 'rgw-enable-ops-log' is pretty
much the same thing. What really matters here is that the option
expects to be a 'key = value', so the latter would be incorrect.
However, I would imagine that someone meant 'having rgw_enable_ops_log
disabled' as having 'rgw_enable_ops_log = false', which in turn is
equivalent to the first one. From ceph.conf's PoV, the correct syntax
would be
rgw enable ops log = false
or
rgw_enable_ops_log = false
can it be added to [client.radosgw] and it is valid for both of our radosgw's? or does it need to be added to global or somewhere else?
According to what I stated before, it is my belief that having it under
[client.radosgw] would affect as many instances as you may have. Having
it under [global] would only mean that, if any other component would
happen to use the same option, that said option would be available to
any component using it.
- is there a way to verify which confg rules are applied?
I believe you can obtain it through the service's admin socket, using
ceph --admin-socket /var/run/ceph/foo.asok config show
Hope this helps.
-Joao
--
Joao Eduardo Luis
Software Engineer | http://inktank.com | http://ceph.com
_______________________________________________
ceph-users mailing list
ceph-users@xxxxxxxxxxxxxx
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com