Documentation ¶
Overview ¶
Package devicemapper contains code for working with devicemapper
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ThinLsBinaryPresent ¶
ThinLsBinaryPresent returns the location of the thin_ls binary in the mount namespace cadvisor is running in or an error. The locations checked are:
- /sbin/ - /bin/ - /usr/sbin/ - /usr/bin/
The thin_ls binary is provided by the device-mapper-persistent-data package.
Types ¶
type DmsetupClient ¶
type DmsetupClient interface { // Table runs `dmsetup table` on the given device name and returns the // output or an error. Table(deviceName string) ([]byte, error) // Message runs `dmsetup message` on the given device, passing the given // message to the given sector, and returns the output or an error. Message(deviceName string, sector int, message string) ([]byte, error) // Status runs `dmsetup status` on the given device and returns the output // or an error. Status(deviceName string) ([]byte, error) }
DmsetupClient is a low-level client for interacting with device mapper via the `dmsetup` utility, which is provided by the `device-mapper` package.
func NewDmsetupClient ¶
func NewDmsetupClient() DmsetupClient
NewDmSetupClient returns a new DmsetupClient.
type ThinPoolWatcher ¶
type ThinPoolWatcher struct {
// contains filtered or unexported fields
}
ThinPoolWatcher maintains a cache of device name -> usage stats for a devicemapper thin-pool using thin_ls.
func NewThinPoolWatcher ¶
func NewThinPoolWatcher(poolName, metadataDevice string) (*ThinPoolWatcher, error)
NewThinPoolWatcher returns a new ThinPoolWatcher for the given devicemapper thin pool name and metadata device or an error.
func (*ThinPoolWatcher) GetUsage ¶
func (w *ThinPoolWatcher) GetUsage(deviceID string) (uint64, error)
GetUsage gets the cached usage value of the given device.
func (*ThinPoolWatcher) Refresh ¶
func (w *ThinPoolWatcher) Refresh() error
Refresh performs a `thin_ls` of the pool being watched and refreshes the cached data with the result.