[RFE] New deploy driver using ansible for node bootstraping

Bug #1526308 reported by Vladyslav Drok
4
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Ironic
Fix Released
Wishlist
Pavlo Shchelokovskyy

Bug Description

Current use mode of IPA consists of clearly defined steps (clean disk, configure raid, download image etc). It should be possible to define those steps as parametrized configuration units and use existing configuration managers to perform those steps on the BM node during bootstrap process.

Ansible is already mature enough configuration management tool. As it is written in Python, it seems like a nice fit to OpenStack and Ironic in particular. Moreover, its minimal requirement is presence of Python and SSH access on node to be configured, so almost any modern Linux image can be used as bootstrap image without a need of any specific agent inside.

It is proposed to create a new deploy driver that would use Ansible for node configuration. Each appropriate step of node provision then is defined as Ansible role.

Tags: rfe-approved
Vladyslav Drok (vdrok)
Changed in ironic:
status: New → Confirmed
importance: Undecided → Wishlist
tags: added: rfe
Vladyslav Drok (vdrok)
Changed in ironic:
assignee: nobody → Yuriy Zveryanskyy (yzveryanskyy)
Revision history for this message
Vladyslav Drok (vdrok) wrote :

Copy of whiteboard:

I'm not sure if this makes sense for the project, however I'm interested in hearing more. Could you please write a spec for this?
// jroll 2015-10-15

Gerrit topic: https://review.openstack.org/#q,topic:bp/ansible-deploy-driver,n,z

Addressed by: https://review.openstack.org/238183
    [POC] Ansible deploy driver

Addressed by: https://review.openstack.org/241946
    Ansible deploy driver

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix proposed to ironic (master)

Related fix proposed to branch: master
Review: https://review.openstack.org/310042

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Related fix proposed to branch: master
Review: https://review.openstack.org/318609

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Related fix proposed to branch: master
Review: https://review.openstack.org/318610

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Related fix proposed to branch: master
Review: https://review.openstack.org/320802

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Related fix proposed to branch: master
Review: https://review.openstack.org/320803

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on ironic (master)

Change abandoned by Pavlo Shchelokovskyy (<email address hidden>) on branch: master
Review: https://review.openstack.org/310042
Reason: moved to ironic_staging_drivers https://review.openstack.org/#/c/325974/

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Change abandoned by Pavlo Shchelokovskyy (<email address hidden>) on branch: master
Review: https://review.openstack.org/318609
Reason: moved to ironic_staging_drivers https://review.openstack.org/#/c/325974/

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Change abandoned by Pavlo Shchelokovskyy (<email address hidden>) on branch: master
Review: https://review.openstack.org/318610
Reason: moved to ironic_staging_drivers https://review.openstack.org/#/c/325974/

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Change abandoned by Pavlo Shchelokovskyy (<email address hidden>) on branch: master
Review: https://review.openstack.org/320802
Reason: moved to ironic_staging_drivers https://review.openstack.org/#/c/325974/

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Change abandoned by Pavlo Shchelokovskyy (<email address hidden>) on branch: master
Review: https://review.openstack.org/320803
Reason: moved to ironic_staging_drivers https://review.openstack.org/#/c/325974/

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Change abandoned by Yuriy Zveryanskyy (<email address hidden>) on branch: master
Review: https://review.openstack.org/310816

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Change abandoned by Yuriy Zveryanskyy (<email address hidden>) on branch: master
Review: https://review.openstack.org/238183
Reason: Proposed to ironic-staging-drivers https://review.openstack.org/#/c/325974

Revision history for this message
Ruby Loo (rloo) wrote :

Although the ansible driver is in ironic-staging-drivers, they still would like it in-tree at some point.

Spec is at https://review.openstack.org/#/c/241946/

tags: added: needs-spec
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on ironic-specs (master)

Change abandoned by Yuriy Zveryanskyy (<email address hidden>) on branch: master
Review: https://review.openstack.org/241946
Reason: Driver implemented in staging.

Revision history for this message
Yuriy Zveryanskyy (yzveryanskyy) wrote :

Moved to staging drivers.

Changed in ironic:
status: Confirmed → Won't Fix
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix merged to ironic-specs (master)

Reviewed: https://review.openstack.org/241946
Committed: https://git.openstack.org/cgit/openstack/ironic-specs/commit/?id=92af905c61d22c712faae581d9bcec298997f993
Submitter: Jenkins
Branch: master

commit 92af905c61d22c712faae581d9bcec298997f993
Author: Yuriy Zveryanskyy <email address hidden>
Date: Thu Nov 5 11:25:16 2015 +0200

    Promote Ansible deploy driver to ironic

    This spec proposes to promote the `ansible` deploy driver interface
    available in `ironic-staging-drivers` to ironic tree.

    Related-bug: #1526308
    Change-Id: I3f10ded5d124576f73567b05ae5083c6c7f7891c

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix proposed to ironic (master)

Related fix proposed to branch: master
Review: https://review.openstack.org/510522

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix merged to ironic (master)

Reviewed: https://review.openstack.org/510522
Committed: https://git.openstack.org/cgit/openstack/ironic/commit/?id=9b1a7ceb4b32089ccec2e9aca530699ae5e7cedb
Submitter: Zuul
Branch: master

commit 9b1a7ceb4b32089ccec2e9aca530699ae5e7cedb
Author: Pavlo Shchelokovskyy <email address hidden>
Date: Mon Oct 9 07:09:31 2017 +0000

    Add ansible deploy interface

    this patch pulls the ansible deploy interface code
    and related ansible playbooks and auxiliary files
    from ironic-staging-drivers project into main ironic tree.

    As discussed in the spec, the use of ramdisk callbacks
    (lookup and hearbeats) is now mandatory with this deploy interface.
    Playbooks and modules were updated to require Ansible>=2.4,
    and custom Ansible module for executing 'parted' was replaced
    with usage of built-in Ansible module.

    The custom Ansible callback plugin now uses journald logger
    by default to adapt to the default DevStack setup.

    Documentation and devstack plugin changes enabling automated
    testing of this interface will be proposed in followup patches.

    Change-Id: I43f54688287953ccb1c2836437aea76236e6560b
    Related-Bug: #1526308

Ruby Loo (rloo)
Changed in ironic:
status: Won't Fix → Confirmed
tags: added: rfe-approved
removed: needs-spec rfe
Revision history for this message
Ruby Loo (rloo) wrote :

I think this is finished!

Changed in ironic:
assignee: Yuriy Zveryanskyy (yzveryanskyy) → Pavlo Shchelokovskyy (pshchelo)
status: Confirmed → 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.