Fuel does not allow to deploy environments without controllers

Bug #1538233 reported by Aleksandr Didenko
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Fuel for OpenStack
Fix Released
High
Roman Prykhodchenko
8.0.x
Fix Released
High
Roman Prykhodchenko
Mitaka
Fix Released
High
Roman Prykhodchenko

Bug Description

Fuel does not allow to deploy environment without controllers and gives error like this:

Error: Not enough controllers, ha_compact mode requires at least 1 controller(s)

This blocks any possibility to deploy deeply customized configurations using Fuel Plugins. For instance: I may want to introduce brand new role that will replace our standard controller role and use this role in my deployment. But Nailgun will not allow this.

Steps to reproduce:
1) Create env without controllers (for example with 1 compute)
2) Deploy changes

Expected result:
Some kind of warning about possible problems and started deployment process

Actual result:
Deployment is not started, "Not enough controllers, ha_compact mode requires at least 1 controller(s)" is shown

VERSION:
  feature_groups:
    - mirantis
  production: "docker"
  release: "8.0"
  api: "1.0"
  build_number: "461"
  build_id: "461"
  fuel-nailgun_sha: "be3b6aa15ead51a0d080796316bf60e61cef24dc"
  python-fuelclient_sha: "4f234669cfe88a9406f4e438b1e1f74f1ef484a5"
  fuel-agent_sha: "9d550d821ef2d2b310803fccd953baa7cbb2152b"
  fuel-nailgun-agent_sha: "92ebd5ade6fab60897761bfa084aefc320bff246"
  astute_sha: "b81577a5b7857c4be8748492bae1dec2fa89b446"
  fuel-library_sha: "60edcca1b81fe50afe36796c2f5d98ea752bd55c"
  fuel-ostf_sha: "f66b1208bb9214513a042d52226583473f6117ea"
  fuel-mirror_sha: "b62f3cce5321fd570c6589bc2684eab994c3f3f2"
  fuelmenu_sha: "6c1888a48e2c3244d7fdf6409c22874aac8a7495"
  shotgun_sha: "63645dea384a37dde5c01d4f8905566978e5d906"
  network-checker_sha: "9f0ba4577915ce1e77f5dc9c639a5ef66ca45896"
  fuel-upgrade_sha: "616a7490ec7199f69759e97e42f9b97dfc87e85b"
  fuelmain_sha: "1777390e250c6889158a0f74c3287a4565f3fef2"

description: updated
tags: added: feature
Revision history for this message
Krzysztof Szukiełojć (kszukielojc) wrote :

I would propose feature to enable fuel-plugin declare controller role that would make our checks happy.
That's means it is a feature that requires blueprint.

Controller node is *crucial* role and removing checks for it seems like a drastic solution.

Revision history for this message
Dmitry Pyzhov (dpyzhov) wrote :

We don't backport features

no longer affects: fuel/mitaka
Changed in fuel:
assignee: Krzysztof Szukiełojć (kszukielojc) → nobody
Changed in fuel:
assignee: nobody → Fuel Python Team (fuel-python)
Changed in fuel:
assignee: Fuel Python Team (fuel-python) → Roman Prykhodchenko (romcheg)
Revision history for this message
Aleksandr Didenko (adidenko) wrote :

If we can implement the possibility to merge roles from plugin with the ones from releases, then it could actually provide very flexible solution that will satisfy everyone. For instance I add something like the following into node_roles.yaml in my plugin:

controller:
  limits:
    min: 0

So for environment with plugin enabled we'll have a possibility to deploy env without controllers (because limits.min == 0). For default envs without plugin we'll still have the check for controller roles.

Revision history for this message
Aleksandr Didenko (adidenko) wrote :

We've agreed that we can fix it in 8.0 by disabling the verification on the backend side. There's a big red warning about wrong configuration of cluster without controllers on UI, so it's hard to miss it. So I've changed it to confirmed for 8.0.
In 9.0 we should implement a possibility to modify any role limits via plugin.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to fuel-web (master)

Fix proposed to branch: master
Review: https://review.openstack.org/275122

Changed in fuel:
status: Confirmed → In Progress
Revision history for this message
Roman Prykhodchenko (romcheg) wrote :

The patch was not merged today doe to extremely high rate of random CI failures. As soon as there is one more core review, it's going to be merged to master and backported, if possible.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to fuel-web (master)

Reviewed: https://review.openstack.org/275122
Committed: https://git.openstack.org/cgit/openstack/fuel-web/commit/?id=450bbce4c1b4f3bbfdc5d0397566857f1ad569c6
Submitter: Jenkins
Branch: master

commit 450bbce4c1b4f3bbfdc5d0397566857f1ad569c6
Author: Roman Prykhodchenko <email address hidden>
Date: Tue Feb 2 11:28:16 2016 +0100

    Allow provisioning without controllers

    This patch removes validation of the number of controllers
    in a cluster from pre-deployment task.

    Closes-bug: #1538233
    Change-Id: I5325af73367d6c3edab873a8080cd8a7e24e9692

Changed in fuel:
status: In Progress → Fix Committed
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to fuel-web (stable/8.0)

Fix proposed to branch: stable/8.0
Review: https://review.openstack.org/275562

Revision history for this message
Roman Prykhodchenko (romcheg) wrote :
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to fuel-web (stable/8.0)

Reviewed: https://review.openstack.org/275562
Committed: https://git.openstack.org/cgit/openstack/fuel-web/commit/?id=c36fc5e1868616d1329619c41c973db0a06ac5f6
Submitter: Jenkins
Branch: stable/8.0

commit c36fc5e1868616d1329619c41c973db0a06ac5f6
Author: Roman Prykhodchenko <email address hidden>
Date: Tue Feb 2 11:28:16 2016 +0100

    Allow provisioning without controllers

    This patch removes validation of the number of controllers
    in a cluster from pre-deployment task.

    Closes-bug: #1538233
    Change-Id: I5325af73367d6c3edab873a8080cd8a7e24e9692

tags: added: on-verification
Revision history for this message
Veronica Krayneva (vkrayneva) wrote :

Verified on #522 iso.

tags: removed: on-verification
Revision history for this message
Ksenia Svechnikova (kdemina) wrote :

Verify on 9.0 -250: http://paste.openstack.org/show/495521/

There is possibility to start deploy process on env without controllers

Changed in fuel:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.