Uploaded image for project: 'Aurora'
  1. Aurora
  2. AURORA-1948

Adding instances leads to constraints conflict

    XMLWordPrintableJSON

Details

    • Story
    • Status: Open
    • Minor
    • Resolution: Unresolved
    • None
    • None
    • Scheduler
    • None
    • Important

    Description

      Problem:
      When scaling instances (adding more instances) there could be a constraint conflict.

      Example:
      Let's say you have a mesos cluster with 3 racks. You want to deploy a service and create aurora job with the "rack" constraint "limit" set to 1. So basically it means that no more than 1 instance per rack. The job has number of instances set to 2, for example. The deployment will succeed and user would get 2 instances running on 2 different racks.
      Next user would like to scale it to 4 instances by adding 2 more instances. In this case if user won't update the rack constraint (set limit to 2 or larger), the update job would fail showing "Limit not satisfied: rack". If user would modify the constraints, then the regular Job update would be involved which would add new instances but also update the existing ones (rolling deploy).

      Proposal:
      The proposal is to be able to update the constraints while adding new instances in order to satisfy the limits and be sure that the currently running instances won't be redeployed.
      So in my example, when scaling up we can recalculate the rack limit on our end, update it's value in the job config, update number of instances and start job update. Aurora would leave 2 currently running instances as they are and only add two new instances making sure that the new constraints are satisfied..

      Attachments

        Activity

          People

            Unassigned Unassigned
            sanofi2104 Vladimir
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated: