deepsea

NAME
DESCRIPTION
STAGES
EXAMPLE
AUTHOR
SEE ALSO

NAME

deepsea stages − orchestrations for a Ceph cluster life cycle

DESCRIPTION

DeepSea Stages are named Salt orchestrations. Six stages, 0 through 5, represent the life cycle of a Ceph cluster. Each stage is also named which may be used interchangeably with the number.

Stage 0 - Prep
Stage 1 - Discovery
Stage 2 - Configure
Stage 3 - Deploy
Stage 4 - Services
Stage 5 - Removal

STAGES

The purpose of the stages is to segregate the many operations in deploying and maintaing a Ceph cluster into a logical abstraction.

Stage 0 - Prep
This stage prepares the Salt environment and OS to provide any missing prerequisites for a successful deployment. Examples include configuring a time service, synchronizing Salt modules, updating the kernel, installing packages and applying updates.

Stage 1 - Discovery
This stage collects data from the minions in an effort to save the administrator the challenge of configuring Salt manually. Minions can normally serve any role, but the storage role is constrained to those minions with available hardware.

Stage 2 - Configure
The administrator creates a policy.cfg file that incorporates their role assignments to the various minions. This stage processes this file and the fragments generated by the previous stage to configure the Salt pillar which is a key-value store. This configuration drives the remaining Stages.

Stage 3 - Deploy
This stage creates or adds to a basic Ceph cluster. The basic Ceph cluster contains only monitors and OSDs. A Ceph monitor acts as a directory service providing maps to clients. The OSD, Object Storage Daemon, manages a device such as an hard disk drive or solid state device.

Stage 4 - Services
Ceph provides many services for existing clients. This stage installs and configures these services which are iSCSI, CephFS, RadosGW and Ganesha. The iSCSI gateways provide block level access to RBD images. The CephFS service provides a POSIX filesystem. The RadosGW presents an S3 and Swift access to objects. Lastly, Ganesha provides NFS access to legacy clients for either CephFS or RadosGW.

Stage 5 - Removal
This stage is necessary for the migration and removal of roles. When the administrator unassigns or reassigns roles during Stage 2, this stage surgically removes configurations and shuts down services.

EXAMPLE

Each orchestration command is nearly identical. The stages have a descriptive and numerical name. Either can be used.

# salt-run state.orch ceph.stage.0
# salt-run state.orch ceph.stage.prep

# salt-run state.orch ceph.stage.1
# salt-run state.orch ceph.stage.discovery

# salt-run state.orch ceph.stage.2
# salt-run state.orch ceph.stage.configure

# salt-run state.orch ceph.stage.3
# salt-run state.orch ceph.stage.deploy

# salt-run state.orch ceph.stage.4
# salt-run state.orch ceph.stage.services

# salt-run state.orch ceph.stage.5
# salt-run state.orch ceph.stage.removal

Additionally one orchestration will run Stages 1-5. Stage 0 is excluded since provisioning systems will likely call or duplicate this stage.

# salt-run state.orch ceph.stage.all

All of these commands can also be prefixed with deepsea to give feedback during the process from the Salt event bus. Salt orchestrations are unnervingly silent during execution and only report when complete. For example,

# deepsea salt-run state.orch ceph.stage.0

AUTHOR

Eric Jackson <ejackson@suse.com>

SEE ALSO

deepsea(1), deepsea(7), deepsea-commands(7)