Project

General

Profile

Actions

Feature #24428

closed

Allow an `osd destroy` if it was just created

Added by Alfredo Deza almost 6 years ago. Updated almost 6 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
Monitor
Target version:
-
% Done:

0%

Source:
Tags:
Backport:
Reviewed:
Affected Versions:
Pull request ID:

Description

ceph-volume asks the monitor for an ID when the OSD provisioning starts. If the process doesn't complete correctly, ceph-volume will try to rollback the creation of the OSD,
the docstring explains:

    When the process of creating or preparing fails, the OSD needs to be either
    purged (ID fully removed) or destroyed (ID persists). This is important
    because otherwise it would leave the ID around, which can cause confusion
    if relying on the automatic (OSD.N + 1) behavior.
    When the OSD id is specified in the command line explicitly (with
    ``--osd-id``) , the the ID is then preserved with a soft removal (``ceph
    osd destroy``), otherwise it is fully removed with ``purge``.

This requires an admin keyring, and we are trying to not require an admin keyring for ceph-volume operations. It is understandable why an admin
keyring is required to destroy any OSD. But in this case it is an OSD that:

  • was just created (within the last 5 minutes)
  • it was never up

I am not sure how this logic would be possible on the monitor side to allow this operation, but it would help ceph-volume to be able to rollback
changes when things fail without requiring the admin keyring

Actions #1

Updated by Alfredo Deza almost 6 years ago

  • Tracker changed from Bug to Feature
Actions #3

Updated by Kefu Chai almost 6 years ago

  • Status changed from New to Resolved
  • Assignee set to Sage Weil
Actions

Also available in: Atom PDF