.\" Man page generated from reStructuredText. . . .nr rst2man-indent-level 0 . .de1 rstReportMargin \\$1 \\n[an-margin] level \\n[rst2man-indent-level] level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] - \\n[rst2man-indent0] \\n[rst2man-indent1] \\n[rst2man-indent2] .. .de1 INDENT .\" .rstReportMargin pre: . RS \\$1 . nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin] . nr rst2man-indent-level +1 .\" .rstReportMargin post: .. .de UNINDENT . RE .\" indent \\n[an-margin] .\" old: \\n[rst2man-indent\\n[rst2man-indent-level]] .nr rst2man-indent-level -1 .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .in \\n[rst2man-indent\\n[rst2man-indent-level]]u .. .TH "GLANCE-SCRUBBER" "1" "April 18, 2024" "28.0.1" "glance" .SH NAME glance-scrubber \- Glance Scrubber Service .SH GLANCE SCRUB SERVICE .INDENT 0.0 .TP .B Author OpenStack Glance Project Team .TP .B Contact \fI\%glance@lists.launchpad.net\fP .TP .B Date 2019\-04\-10 .TP .B Copyright OpenStack Foundation .TP .B Version 18.0.0 .TP .B Manual section 1 .TP .B Manual group cloud computing .UNINDENT .SS SYNOPSIS .INDENT 0.0 .INDENT 3.5 .sp .EX glance\-scrubber [options] .EE .UNINDENT .UNINDENT .SS DESCRIPTION .sp glance\-scrubber is a utility that allows an operator to configure Glance for the asynchronous deletion of images or to revert the image\(aqs status from \fIpending_delete\fP to \fIactive\fP\&. Whether this makes sense for your deployment depends upon the storage backend you are using and the size of typical images handled by your Glance installation. .sp An image in glance is really a combination of an image record (stored in the database) and a file of image data (stored in a storage backend). Under normal operation, the image\-delete call is synchronous, that is, Glance receives the DELETE request, deletes the image data from the storage backend, then deletes the image record from the database, and finally returns a 204 as the result of the call. If the backend is fast and deletion time is not a function of data size, these operations occur very quickly. For backends where deletion time is a function of data size, however, the image\-delete operation can take a significant amount of time to complete, to the point where a client may timeout waiting for the response. This in turn leads to user dissatisfaction. .sp To avoid this problem, Glance has a \fBdelayed_delete\fP configuration option (False by default) that may be set in the \fBglance\-api.conf\fP file. With this option enabled, when Glance receives a DELETE request, it does \fIonly\fP the database part of the request, marking the image\(aqs status as \fBpending_delete\fP, and returns immediately. (The \fBpending_delete\fP status is not visible to users; an image\-show request for such an image will return 404.) However, it is important to note that when \fBdelayed_delete\fP is enabled, \fIGlance does not delete image data from the storage backend\fP\&. That\(aqs where the glance\-scrubber comes in. .sp The glance\-scrubber cleans up images that have been deleted. If you run Glance with \fBdelayed_delete\fP enabled, you \fImust\fP run the glance\-scrubber occasionally or your storage backend will eventually fill up with \(dqdeleted\(dq image data. .sp The glance\-scrubber can also revert a image to \fIactive\fP if operators delete the image by mistake and the pending\-delete is enabled in Glance. Please make sure the \fBglance\-scrubber\fP is not running before restoring the image to avoid image data inconsistency. .sp Configuration of glance\-scrubber is done in the \fBglance\-scrubber.conf\fP file. Options are explained in detail in comments in the sample configuration file, so we only point out a few of them here. .INDENT 0.0 .TP .B \fBscrub_time\fP minimum time in seconds that an image will stay in \fBpending_delete\fP status (default is 0) .TP .B \fBscrub_pool_size\fP configures a thread pool so that scrubbing can be performed in parallel (default is 1, that is, serial scrubbing) .TP .B \fBdaemon\fP a boolean indicating whether the scrubber should run as a daemon (default is False) .TP .B \fBwakeup_time\fP time in seconds between runs when the scrubber is run in daemon mode (ignored if the scrubber is not being run in daemon mode) .TP .B \fBmetadata_encryption_key\fP If your \fBglance\-api.conf\fP sets a value for this option (the default is to leave it unset), you must include the same setting in your \fBglance\-scrubber.conf\fP or the scrubber won\(aqt be able to determine the locations of your image data. .TP .B \fBrestore\fP reset the specified image\(aqs status from\(aqpending_delete\(aq to \(aqactive\(aq when the image is deleted by mistake. .TP .B \fB[database]\fP As of the Queens release of Glance (16.0.0), the glance\-scrubber does not use the deprecated Glance registry, but instead contacts the Glance database directly. Thus your \fBglance\-scrubber.conf\fP file must contain a [database] section specifying the relevant information. .TP .B \fB[glance_store]\fP This section of the file contains the configuration information for the storage backends used by your Glance installation. .UNINDENT .sp The usual situation is that whatever your \fBglance\-api.conf\fP has for the \fB[database]\fP and \fB[glance_store]\fP configuration groups should go into your \fBglance\-scrubber.conf\fP, too. Of course, if you have heavily customized your setup, you know better than we do what you are doing. The key thing is that the scrubber needs to be able to access the Glance database to determine what images need to be scrubbed (and to mark them as deleted once their associated data has been removed from the storage backend), and it needs the glance_store information so it can delete the image data. .SS OPTIONS .sp \fBGeneral options\fP .INDENT 0.0 .TP .B \fB\-h, \-\-help\fP Show the help message and exit .TP .B \fB\-\-version\fP Print the version number and exit .TP .B \fB\-v, \-\-verbose\fP Print more verbose output .TP .B \fB\-\-noverbose\fP Disable verbose output .TP .B \fB\-d, \-\-debug\fP Print debugging output (set logging level to DEBUG instead of default WARNING level) .TP .B \fB\-\-nodebug\fP Disable debugging output .TP .B \fB\-\-use\-syslog\fP Use syslog for logging .TP .B \fB\-\-nouse\-syslog\fP Disable the use of syslog for logging .TP .B \fB\-\-syslog\-log\-facility SYSLOG_LOG_FACILITY\fP syslog facility to receive log lines .TP .B \fB\-\-config\-dir DIR\fP Path to a config directory to pull *.conf files from. This file set is sorted, to provide a predictable parse order if individual options are over\-ridden. The set is parsed after the file(s) specified via previous \-\-config\-file, arguments hence over\-ridden options in the directory take precedence. This means that configuration from files in a specified config\-dir will always take precedence over configuration from files specified by \-\-config\-file, regardless to argument order. .TP .B \fB\-\-config\-file PATH\fP Path to a config file to use. Multiple config files can be specified by using this flag multiple times, for example, \-\-config\-file \-\-config\-file . Values in latter files take precedence. .TP .B \fB\-\-log\-config\-append PATH\fP \fB\-\-log\-config PATH\fP The name of logging configuration file. It does not disable existing loggers, but just appends specified logging configuration to any other existing logging options. Please see the Python logging module documentation for details on logging configuration files. The log\-config name for this option is deprecated. .TP .B \fB\-\-log\-format FORMAT\fP A logging.Formatter log message format string which may use any of the available logging.LogRecord attributes. Default: None .TP .B \fB\-\-log\-date\-format DATE_FORMAT\fP Format string for %(asctime)s in log records. Default: None .TP .B \fB\-\-log\-file PATH, \-\-logfile PATH\fP (Optional) Name of log file to output to. If not set, logging will go to stdout. .TP .B \fB\-\-log\-dir LOG_DIR, \-\-logdir LOG_DIR\fP (Optional) The directory to keep log files in (will be prepended to \-\-log\-file) .UNINDENT .INDENT 0.0 .TP \fB\-D, \-\-daemon\fP Run as a long\-running process. When not specified (the default) run the scrub operation once and then exits. When specified do not exit and run scrub on wakeup_time interval as specified in the config. .TP \fB\-\-nodaemon\fP The inverse of \-\-daemon. Runs the scrub operation once and then exits. This is the default. .TP \fB\-\-restore \fP Restore the specified image status from \(aqpending_delete\(aq to \(aqactive\(aq. .UNINDENT .SS FILES .INDENT 0.0 .TP \fB/etc/glance/glance\-scrubber.conf\fP Default configuration file for the Glance Scrubber .UNINDENT .SS SEE ALSO .INDENT 0.0 .IP \(bu 2 \fI\%OpenStack Glance\fP .UNINDENT .SS BUGS .INDENT 0.0 .IP \(bu 2 Glance bugs are tracked in Launchpad so you can view current bugs at \fI\%OpenStack Glance\fP .UNINDENT .SH AUTHOR OpenStack .SH COPYRIGHT 2010-present, OpenStack Foundation. .\" Generated by docutils manpage writer. .