Bug 1041145

Summary: [RFE][nova]: Improve image cache handler
Product: Red Hat OpenStack Reporter: RHOS Integration <rhos-integ>
Component: RFEsAssignee: RHOS Maint <rhos-maint>
Status: CLOSED UPSTREAM QA Contact: Ami Jeain <ajeain>
Severity: unspecified Docs Contact:
Priority: low    
Version: unspecifiedCC: markmc, ndipanov, sgordon, yeylon
Target Milestone: ---Keywords: FutureFeature, Triaged, Upstream
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
URL: https://blueprints.launchpad.net/nova/+spec/multiple-image-cache-handlers
Whiteboard: upstream_milestone_none upstream_status_not-started upstream_definition_review
Fixed In Version: Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-03-19 17:44:48 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description RHOS Integration 2013-12-12 13:47:13 UTC
Cloned from launchpad blueprint https://blueprints.launchpad.net/nova/+spec/multiple-image-cache-handlers.

Description:

This blueprint aims to implement support for multiple image cache handlers on
compute nodes (only one manager will be chosen from the set of available
drivers). Currently there is only one ImageCacheManager, that removes
images older than N seconds. This appliest to the libvirt driver (and baremetal,
since it uses libvirt's manager).

Features to implement:

BaseImageCacheManager
=====================

Split the current manager into an abc BaseImageCacheManager that will be inherited
by all the other image cache managers.

Thresholds
=========

The current manager deletes all the files, regardless of the free space on disk. We may add a threshold so that images are only removed if that threshold is reached.

Configurable image cache manager
================================

With this change it will be possible to change the manager, so we should add
support for this, via a configuration option.

Implementation of some other ImageCacheManager
==============================================

There are some more advanced managers that can be implemented:

 - A popularity-based ImageCacheManager.
 - LRU manager.
 - Protected images manager (i.e. once an image is cached, do not remove it).

Specification URL (additional information):

None