Using the OUTSCALE Guest Agent

This technical guide provides step-by-step instructions for using the OUTSCALE guest agent on your Linux VM. Using the guest agent can enable you to create application-consistent snapshots.

Installing guest-agent

Before you begin: Check the requirements for your distribution on the guest-agent Github repository.

Download and install the latest package from the Releases page according to your VM’s distribution (.deb file for Debian / Ubuntu, .rpm file for RHEL / Rocky).

Packages are signed with Sigstore: you can verify them using Cosign. For more information, see Signature Verification.

Other methods allow you to install guest-agent using Cargo commands. For more information, see guest agent Github repository > Installation

Configuring Actions for Your Guest Agent

To configure the actions taken by the guest agent on your VM, you must use hook files stored in directories corresponding to the different execution phases:

Phase Hooks Directory

begin

snapshot.d

commit

snapshot-commit.d

completed

snapshot-completed.d

For each phase, the first candidate root that contains the directory is used. The other roots are ignored until the next phase.

Creating Application-Consistent Snapshots

Snapshot hooks are executable files that live under /etc/guest-agent/ and follow run-parts naming (allowed characters are a-z, A-Z, 0-9, and - _). They are executed in alphabetical order, one by one.

Generic hooks are available as examples in the package under /etc/guest-agent/. They are named with the .disable suffix, allowing them to be ignored as their name contains an unauthorized character (.). To use one of these hooks for your configuration, enable it by removing its suffix.

Phase Directory Hooks, in Run Order

snapshot.d

a 40-pod-exec (pod begin-command, quiesce the workload), 50-fsfreeze (freeze)

snapshot-commit.d

90-pod-exec (pod commit-command)

snapshot-completed.d

a 50-fsfreeze (thaw) 90-pod-exec (pod completed-command, resume the workload)

The application-consistent snapshot is ready once it reaches the completed phase. You must resume the workload from snapshot-completed.d, sorted after the thaw, and never from snapshot-commit.d.

For more information, see hooks.md on Github.

Related Page