Hi Michael, I was considering also using cloud-formation for setting up Mesos clusters. So the update is only possible for AutoScaling? Thats a bit limiting isnt it? What if you need to update other resources?
On Wed, Jul 16, 2014 at 5:47 PM, Michael Babineau < [email protected]> wrote: > I manage my Mesos clusters via CloudFormation. Upgrades are pretty > straightforward -- just apply an updated template (and/or parameters) to an > existing stack. For now, I manually terminate instances (one at a time) and > let the auto scaling groups bring up replacements with the new > configuration. > > This should be automated with an UpdatePolicy > <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatepolicy.html>, > I just haven't taken the time yet to implement and test it. > > By the way, the templates are open source, so feel free to use or steal > from them: https://github.com/thefactory/cloudformation-mesos > > As Dick mentioned, however, this still doesn't cover ad-hoc maintenance. > But it should make provisioning much less of a headache :) > > > On Wed, Jul 16, 2014 at 4:35 AM, Nayeem Syed <[email protected]> wrote: > >> you mean ad-hoc maintenance formations wont help? >> >> probably should have it deployed using formations initially and use >> user-data to customize the server with specific installs etc? >> >> >> On Wed, Jul 16, 2014 at 12:15 PM, Dick Davies <[email protected]> >> wrote: >> >>> For provisioning yes , for ad-hoc maintenance tasks won't help at all. >>> >>> On 16 July 2014 11:29, Nayeem Syed <[email protected]> wrote: >>> > Thanks for those! I will give it a try to get some deployment through >>> > ansible. >>> > >>> > I was also wondering if Cloudformation might be good for this? As it >>> clears >>> > up the things very cleanly when you remove the formation? Though I find >>> > their JSON file very difficult to navigate and their Update Feature >>> doesnt >>> > seem to work too well.. >>> > >>> > >>> > On Wed, Jul 16, 2014 at 10:46 AM, Dick Davies <[email protected]> >>> > wrote: >>> >> >>> >> I'd like to show you my playbooks, but unfortunately they're for a >>> client >>> >> - I can vouch for it being very easy to add nodes to a cluster etc. >>> if you >>> >> just have to edit an 'inventory' file and add IPs into the correct >>> groups. >>> >> >>> >> (NB: puppet and chef will automate your infrastructure too, it's just >>> >> they're >>> >> not as useful for things like rolling deployments in my experience >>> because >>> >> they're agent based, so it's harder to control when each server will >>> >> update and >>> >> restart services). >>> >> >>> >> A quick Google found: >>> >> >>> >> >>> >> >>> http://blog.michaelhamrah.com/2014/06/setting-up-a-multi-node-mesos-cluster-running-docker-haproxy-and-marathon-with-ansible/ >>> >> >>> >> which might be useful. >>> >> >>> >> The play books linked from that post are for bootstrapping a cluster, >>> but >>> >> it's >>> >> pretty simple to add a second playbook to manage rolling deploys etc. >>> >> There's some Ansible examples of rolling deploys (not Mesos specific) >>> >> at : >>> >> >>> >> http://docs.ansible.com/guide_rolling_upgrade.html >>> >> >>> >> >>> >> On 15 July 2014 14:41, Nayeem Syed <[email protected]> wrote: >>> >> > thanks! >>> >> > >>> >> > do you have some examples of how you are using it with ansible? i >>> dont >>> >> > have >>> >> > specific preferences, whatever works really. >>> >> > >>> >> > >>> >> > On Tue, Jul 15, 2014 at 2:35 PM, Dick Davies < >>> [email protected]> >>> >> > wrote: >>> >> >> >>> >> >> You want a rolling restart i'd guess, unless you want downtime for >>> some >>> >> >> reason. >>> >> >> >>> >> >> We use Ansible, it's pretty nice. >>> >> >> >>> >> >> On 15 July 2014 10:47, Nayeem Syed <[email protected]> wrote: >>> >> >> > whats the best way to update mesos master instances. eg I want to >>> >> >> > update >>> >> >> > things in there, install new frameworks, but at the moment I am >>> >> >> > ssh'ing >>> >> >> > to >>> >> >> > the instances and installing them one by one. that feels wrong, >>> >> >> > shouldnt >>> >> >> > it >>> >> >> > be done in parallel to all the instances? >>> >> >> > >>> >> >> > what do people currently do to keep all the masters in sync? >>> >> > >>> >> > >>> > >>> > >>> >> >> >

