-
Notifications
You must be signed in to change notification settings - Fork 740
Allow customizing etcd podSpec by sourcing from podTemplate #552
Comments
My thoughts: Due to the disadvantage point, we need to define what can be allowed to do. |
We should hard code self-hosted related annotation for now. we already have a special case for selfhosted. If more users start to want customized spec, we can do it. But I would like to wait to see the demand first. |
I'd love the ability to add custom labels so that we can more effectively target these pods in our prometheus aggregates. |
Hi David, can you describe more details about what you want to do? What
labels do you need in order for prom to target it?
…On Fri, Mar 3, 2017 at 5:47 PM David Quarles ***@***.***> wrote:
I'd love the ability to add custom labels so that we can more effectively
target these pods in our prometheus aggregates.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#552 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AA4NND7-Too23bjmGX4VU7zB58hd-PgTks5riMKagaJpZM4LXxzN>
.
|
sure thing -- we put a generic
we then have grafana utilization dashboards that allow parameterization by namespace and/or role, and we target this label in generic alertmanager rules as well. |
@davidquarles |
Cool, totally -- access to the raw pod template is definitely way more than I need. Given direct access to the pod template, the only other thing I might have modified / am curious about in terms of the spec is member storage. Does exposing stable / persistent storage (as opposed to I'm also happy to contribute if you'd like a hand. I'm just trying to map everything out. Thanks! |
@davidquarles There are a few stuff on pod spec that the etcd operator wants to take full control of. We do not want to expose these at the moment. Stable storage is actually one of them. We suggest you to use backup instead of local "stable" storage. etcd has built in replication mechanism. Over-replication is mostly unnecessary. We can revisit that in the future. We do not use stateful set for the same reason. I am OK with adding customized labels though |
One other random "this future feature might be useful" are pod presets: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/pod-preset.md This might allow a user to set presets on a pod, but they won't override anything etcd sets on the pod if there is a conflict. |
@xiang90 Thanks, that's all good to know. Would it make sense for these nodes to mount a separate disk for |
That is also a valid requirement. do you mind opening a separate issue to track it? |
I am closing this. We solved this issue by providing pod policy, which contains the pod options that we want users to customize. In such way, we can do better validation and restrict what can be changed. It works well for now. If we see a real requirement for exposing all pod fields, we might expose pod template in pod policy itself. but we did not see that requirement for now. |
In some cases, a user may want to customize the etcd pods which are created by the etcd-operator, but this is not currently possible, as the podSpec is hard-coded in the operator itself.
An example use case:
Adding a custom annotation, such as
checkpointer.alpha.coreos.com/checkpoint=true
so that the CoreOS pod-checkpointer will save local copies of the launched etcd pods.This could be hard-coded in the etcd-operator spec - but there may be other use-cases for customization.
One option here would be to allow (maybe by flag) sourcing a podTemplate, which the user is responsible for creating, then the etcd-operator can use to make copies from.
Example podTemplate:
Then maybe source by flag:
Not sure if this is the right way forward, but I can foresee the need for users to make minor customizations to the launched etcd pods - and wanted to track this as an option
The text was updated successfully, but these errors were encountered: