Understanding and managing Object services
Use the following information to manage services that are related to IBM Storage Scale for Object storage.
You can use the mmces service command to enable, start, stop, or disable Object services on all protocol nodes.
The enable and disable operations are cluster-wide operations. To enable or disable the Object protocol, use mmces service [enable | disable] OBJ. The Object protocol must be initially configured by using the mmobj swift base command before it can be enabled in the cluster.
mmces service [start | stop] OBJ -a
To start or stop the object protocol on
individual nodes, use the following command:
mmces service [start | stop] OBJ -N <node>
- Suspend CES operations on the protocol node by using the mmces node suspend command.
- View the CES IP addresses on that node by using the mmces address list command and verify that all CES IP addresses are moved to other protocol nodes.
- Stop the object services by using the mmces service stop OBJ command.
mmces service
start/stop
and systemctl commands. The explicit use of system or
Swift commands to manage services, like swift-init
or systemctl,
is not supported and might cause your system to operate incorrectly.- Resume CES operations on the protocol node by using the mmces node resume command.
- View the CES IP addresses on that node by using the mmces address list command and verify that all CES IP addresses are moved to that protocol node.
- Start the Object services by using the mmces service start OBJ command.
mces service list
command to list the protocols enabled on IBM Storage Scale. List a verbose output of Object services that are
running on the local node by using the -v flag as shown in the following
example:
# mmces service list -v
Enabled services: OBJ SMB NFS
OBJ is running
OBJ:openstack-swift-object-updater is running
OBJ:openstack-swift-object-expirer is running
OBJ:ibmobjectizer is running
OBJ:openstack-swift-object-auditor is running
OBJ:openstack-swift-object is running
OBJ:openstack-swift-account is running
OBJ:openstack-swift-container is running
OBJ:memcached is running
OBJ:openstack-swift-proxy is running
OBJ:openstack-swift-object-replicator is running
OBJ:openstack-swift-account-reaper is running
OBJ:openstack-swift-account-auditor is running
OBJ:openstack-swift-container-auditor is running
OBJ:openstack-swift-container-updater is running
OBJ:openstack-swift-account-replicator is running
OBJ:openstack-swift-container-replicator is running
OBJ:openstack-swift-object-sof is running
OBJ:postgresql-obj is running
OBJ:httpd (keystone) is running
SMB is running
NFS is running
For complete usage information, see mmces command.
Every Object protocol node can access every virtual device in the shared file system, and some OpenStack Swift object services can be optimized to take advantage of this by running from a single Object protocol node.
Even though objects are not replicated by OpenStack Swift, the swift-object-replicator runs to periodically clean up tombstone files from deleted objects. It is run on a single Object protocol node and manages cleanup for all of the virtual devices.
The swift-object-updater is responsible for updating container listings with objects that were not successfully added to the container when they were initially created, updated, or deleted. Like the object replicator, it is run on a single object protocol node.
The following table shows each of the Object services and the set of Object protocol nodes on which they need to be run.
Object service | GPFS protocol node |
---|---|
ibmobjectizer | object_singleton_node
1 |
openstack-swift-account | All |
openstack-swift-account-auditor | object_singleton_node |
openstack-swift-account-reaper | All |
openstack-swift-account-replicator | All |
openstack-swift-container | All |
openstack-swift-container-auditor | object_singleton_node |
openstack-swift-container-updater | object_singleton_node |
openstack-swift-container-replicator | All |
openstack-swift-object | All |
openstack-swift-object-auditor | object_singleton_node 2 |
openstack-swift-object-replicator | All |
openstack-swift-object-sof | All 1 |
openstack-swift-object-updater | object_singleton_node |
openstack-swift-object-expirer | object_singleton_node |
openstack-swift-proxy | All |
memcached | All |
httpd (RHEL) or apache2 (Ubuntu) | All 3 |
postgresql-obj | object_database_node
3 |
1 If unified file and object access is enabled.
2 If multi-region object deployment is enabled. 3 If local OpenStack Keystone Identity Service is configured. |