hi,
i have a cluster of machines in various roles, which are installed and
configured by pallet :
https://github.com/trampoline/clustermap-mesos
so far, so good
now, the things i mostly seem to want to do with pallet are :
1. instantiate, install and configure new instances into the cluster
2. update package versions on existing instances
3. update configuration on existing instances
i would like to be able to
- do [1] without doing [2] across the cluster (though [1] may often
involve some element of [3], so that cluster peers, such as
elasticsearch or zookeeper masters, are aware of each other)
- do [3] without doing [2], since i want to make minimal changes to a
running production cluster
but i'm a bit stuck on how to achieve this :
currently i've got everything in a :configure phase, which causes [2] to
be run whenever i converge or lift, so [2] is always done whenever i do
[1] or [3]
how do other folks achieve this ?
i can see that if i put package updates into a separate phase then i
could do [3] without [2], but i would still have the problem of [1]
causing [2] across the cluster, since i would need to specify the update
phase when converging
thanks
:craig