Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Lifecycle policy specification includes:

  • Cluster setting

  • Policy headers on domain and bucket objects

  • Bucket policies stored in Swarm storage (as headers) by the gatewayRelevant changes to the UIS for lifecycle policies

Cluster Setting Values

The Swarm cluster setting policy.lifecycle supports two values:

  • disabled – By default, the evaluation of all lifecycle policies is disabled in the cluster to provide legacy behavior.

  • enabled – Lifecycle policies may be enabled or disabled at the domain level for domains where such policies are applied.

The policy.lifecycle setting can be set via Management APIand SNMP.

Policy Header Values

Domain objects support a Policy-Lifecycle header that controls the behavior of lifecycle policies for buckets in the domain. The header supports either of the following values:

...

Important

  • Duplicate names are not allowed within a rule.

  • Unsupported names or values result in a an 400 error on the bucket (or domain) write.

...

Every rule:

  • Must have one or more multiple expiration -related attributes.

  • ExpirationDays and ExpirationDate attributes are mutually-exclusive.

  • ObsoleteExpirationDays and ObsoleteExprirationDate attributes are mutually-exclusive.

...

  • For expiration days,
    Expiration time = Creation time of the current version + Number of days indicated + Rounded up to the next midnight UTC

  • For obsolete expiration days,
    Expiration time = Create time of the next newest object version + Number of days indicated + Rounded up to the next midnight UTC

  • ISO 8601 dates must unambiguously specify a calendar date. The (unspecified) expiration time is always midnight UTC of that date.

  • Expiration of a current version of an object (i.e. non-delete marker in the versioning enabled bucket) means creating a delete marker, pushing the current version down the versioning stack.

  • In all other cases, the object or object version is permanently deleted.

The gateway supports normal SCSP reads & writes of domain and bucket headers with those lifecycle policies specified. Gateway S3 interface is modified to support GET, PUT, DELETE, and related permissions for bucket lifecycle policies as specified in the S3 documentation. Gateway validates policies against the S3 specification. On PUT or DELETE permission, the gateway translates the client-supplied bucket policy specifications into the appropriate Swarm bucket headers. Bucket lifecycle policy features provided via S3 that Swarm does not support (such as storage class transitions) are dropped during this translation. On the bucket lifecycle policy GET reply, Gateway performs reverse translation for any Policy-Lifecycle headers on the bucket object into an S3-compatible format.UIC provides appropriate editing methods for bucket lifecycle policies at the cluster, domain, and bucket levels

Swarm Content Portal provides a convenient method of managing policies.

Info

Since lifecycle policies are part of the overall context-level policy framework, GET and HEAD requests on contexts and name objects (with the verbose query argument) return Policy-Lifecycle-Evaluated and Policy-Lifecycle-Evaluated-Constrained headers. They describe if the lifecycle policies are enforced at the various levels such as cluster, domain, and bucket.

...