Home > Storage > ObjectScale and ECS > Product Documentation > Dell ObjectScale: Overview and Architecture > Major functionality changes from ECS
This section describes changes in the ObjectScale functionality as compared to ECS.
ObjectScale is a software bundle that provides management of shared services for deploying and consuming Dell object storage within a Kubernetes cluster. Administrators can deploy a single ObjectScale, which is referred to as an ObjectScale Instance (OSI), per Kubernetes cluster.
In ObjectScale, Kubernetes provides the connective glue between physical infrastructure, such as disk and network, and the application services running in containers. ObjectScale uses Kubernetes' efficient resource-management capabilities and relies on Kubernetes to manage operating-system and hardware interaction.
Object stores are discrete storage systems with an individualized life cycle and are Kubernetes applications that are deployed by ObjectScale. Object stores provide data services as unique and independent storage systems that are deployed and managed by ObjectScale. An OSI can contain one or more object stores. Object stores are created, updated, and deleted independently from all other object stores managed by ObjectScale.
Buckets are object containers that are used to control access to objects. A bucket is associated to only ObjectScale instances, the object store and account or tenant. In ObjectScale, buckets are limited to S3 only.
Physical resources such as storage, CPU, and RAM are reserved for each object store, based on expected tenant workloads, when the object store is created.
The following figure depicts ObjectScale shared and data services running in Kubernetes on physical infrastructure. Using one ObjectScale instance per Kubernetes cluster provides independent, tenant-based S3 data services in a microservice architecture.
ObjectScale includes a multitenant identity and access management (IAM) service, which gives users complete control over all storage-related access and controls. IAM provides for fine-grained access to the ObjectScale S3 resources securely. This functionality ensures that each access request to an ObjectScale resource is identified, authenticated, and authorized. IAM entities include users, groups, roles, policies, and service providers.
In the ObjectScale 1.3 release, ObjectScale has broadened its deployment capabilities. ObjectScale can be integrated on an ObjectScale XF960 All Flash array appliance, under the ObjectScale Appliance option. This deployment option offers a hardware solution that is optimized to run the ObjectScale software, delivering high-performance, flash-based storage capabilities. The XF960 provides hardware alerting features that enable customers or services to proactively or reactively resolve any issues that may arise. These alerts are presented on the ObjectScale Portal interface, ensuring timely action is taken to address potential hardware-related problems. Alternatively, ObjectScale can be deployed as part of a comprehensive software bundle, called ObjectScale Software Bundle. This package incorporates both ObjectScale and the requisite Kubernetes and platform management components, providing a complete software solution for your enterprise object storage needs. The software bundle can be installed on bare metal running SUSE Linux Enterprise Server.
The third option is for ObjectScale to be implemented as an application within a Red Hat OpenShift cluster environment, called ObjectScale As An Application. This deployment mode allows for seamless integration and operation within your existing OpenShift infrastructure.
These diverse deployment options cater to various infrastructural needs, providing flexibility and efficiency in management and scaling enterprise object storage.
The installation procedures for these options include a qualification check to ensure that the underlying platform satisfies the requirements. For more details, see the Dell ObjectScale 1.4.x Software Installation Guide.
The types of licenses available for ObjectScale include:
ObjectScale is not involved in any aspect of hardware or operating-system management. Kubernetes is responsible for interaction between the operating system and hardware. The customer is responsible for top-of-rack switching and network infrastructure. For access to physical components, ObjectScale uses Kubernetes custom resources such as the Dell bare-metal container storage interface (CSI).
A Container Network Interface (CNI) provides networking inside Kubernetes. SUSE High Availability Extension supports technologies for load balancing. In OpenShift, MetalLB is a Kubernetes-compatible load-balancing application that provides network load-balancing services.
Dell ObjectScale user interfaces include the ObjectScale Portal UI, Grafana dashboards, command-line interfaces (Kubectl plug-in and Helm binary), and ObjectScale and object store management APIs.
ObjectScale replication is policy-based at the bucket level. Bucket-to-bucket replication, available within and across object stores, introduces eventual consistency to Dell object storage. Replication between buckets in the same object store is referred to as same-object-store replication. Replication between different object stores (on same or different ObjectScale instances) is referred to as cross-object-store replication.
In ObjectScale, there is not a concept of a Replication Group where everything written in one zone is replicated to all other zones. Instead, each bucket can have Replication Rules set which indicate which versions should be replicated and to where. Replication rules can be different for every bucket depending on redundancy or locality needs.
ObjectScale replication is an eventual consistency process for data consistency between object stores that automatically replicates new objects as they are written to the bucket within the object store. Eventual consistency replication:
ObjectScale supports the uploading of large objects through the multipart upload (MPU) process in the S3 protocol. MPU allows for the construction of a large object from smaller, uploaded parts. You can upload these smaller parts at any time and in any order. Dell recommends that you verify that your request to complete MPU is successful. After ObjectScale receives the complete MPU request, ObjectScale assembles the parts and creates the object. This partitioning allows for better performance and reliability Replicated objects can be as large as 50TiB, with up to 50,000 parts supported.
Bucket logging facilitates record all incoming requests to a specific source bucket. It directs these logs to a designated target bucket, ensuring a uniform and standardized format for easy consumption. This feature can be configured from the ObjectScale Portal user interface or S3 API. The feature supports prefixes on the generated log objects on the target bucket, which is useful to distinguish between source buckets when multiple buckets log to the same target bucket. Logs are collected in a fixed format on a target bucket in objects that identify the time they were delivered.
Object Lock safeguards versions from accidental deletions and unintended overwrites. In the S3 protocol, Object Lock requires versioning to be enabled. When Object Lock is enabled with versioning, it uses the standard S3 protocol behavior. The locking features apply to individual versions of an object and each version can have a different lock type.
ObjectScale extensions extend the standard S3 protocol to permit Object Lock at the bucket level, with versioning turned off. When Object Lock is enabled without versioning, the object lock functionality operates on the bucket, rather than on the versions of the bucket. Thus, overwrite and delete operations are prevented.
To enhance the security of the object environment, ObjectScale incorporates several optional features.