Skip to main content

Manage Buckets

How to manage CoreWeave AI Object Storage buckets with popular S3 clients.

In CoreWeave AI Object Storage, data is stored as objects consisting of the data itself, its metadata, and a unique identifier. These objects are organized into containers called buckets, which provide a namespace for objects to ensure that object names are unique within a bucket. Additionally, buckets can have specific configurations and policies to manage the data lifecycle and security.

Creating and deleting buckets are both straightforward operations that can be performed programmatically using the S3-compatible Object Storage API or various S3-compatible tools.

This guide explains how to manage CoreWeave AI Object Storage buckets with Cloud Console and using three popular clients: S3cmd, AWS CLI, and Boto3.

Prerequisites

This guide assumes that you have followed the steps in Get started with AI Object Storage. Before you begin, ensure that you have completed the following tasks:

  1. Set up Workload Identity Federation for your organization.
  2. Create Access Keys with either SAML/SSO assertions or Cloud Console tokens.
  3. Create a bucket to store data.
  4. Set policies to control access, lifecycle, and auditing.

About LOTA (Local Object Transfer Accelerator)

To use LOTA, clients must point their requests to the LOTA endpoint instead of the primary endpoint. No other changes are required for S3-compatible clients.

  • The primary endpoint is https://cwobject.com
  • The LOTA endpoint is http://cwlota.com

Learn more about LOTA.

Notes

Warning

Please take note of these important points before proceeding:

  • All requests to CoreWeave AI Object Storage endpoints must be in DNS (virtual-hosted) style, where the bucket name is part of the domain name in the URL.
    • Use http://<bucket-name>.cwlota.com if using the LOTA endpoint.
    • Use https://<bucket-name>.cwobject.com if using the primary endpoint.
    • Set your S3 configuration to specify a virtual addressing style.
  • The user who creates a bucket automatically becomes the bucket owner. The bucket owner has full control over the bucket and its contents.
  • Bucket names must be globally unique across all CoreWeave locations. Attempting to create a bucket with a name that already exists in another location will result in an error.
  • Bucket names must not begin with cw- or vip-. These prefixes are reserved for internal use. Attempting to create a bucket with a reserved name will result in an error.
  • Only empty buckets can be deleted. Remove all objects, object versions, and delete markers before deleting a bucket.
  • You cannot create a bucket without a valid API Access key. Anonymous requests are never allowed to create buckets. To obtain an API Access key, see How-To: Manage Access Keys.

Availability Zones

S3cmd, AWS CLI, and Boto3 use the term "region" to define the location of the object storage service. However, at CoreWeave, Regions are larger constructs that are organized into Availability Zones (AZs). When configuring your client, use a CoreWeave Availability Zone in place of the traditional AWS "region".

When creating a new bucket, you must specify the Availability Zone in which the bucket will be created.

  • When creating a bucket with S3cmd, use --bucket-location with the Availability Zone.
  • When creating a bucket with AWS CLI or Boto3, use LocationConstraint.

The examples that follow demonstrate proper use.

Manage buckets with Cloud Console

The Buckets section allows you to manage your buckets. You can create and delete buckets, and view their total size and the number of objects in them.

The Grafana link at the top of the page leads to a Grafana dashboard for all buckets in your organization.

The More menu on the right allows you to view the Grafana dashboard focuses on that specific bucket, or delete the bucket.

Manage buckets programmatically

The following examples show how to manage buckets with the AWS CLI, s3cmd, and Boto3.

  • AWS CLI is a unified tool for managing AWS services from the command line. It provides a consistent interface for interacting with S3-compatible services, including CoreWeave AI Object Storage. Follow these steps to install and configure the AWS CLI, then use it to create and delete buckets in CoreWeave AI Object Storage.
  • S3cmd is a command-line tool for managing objects in S3-compatible object storage services. It can be used to create, delete, and manage buckets, as well as upload, download, and manage objects within those buckets. S3cmd is available for Linux and macOS.
  • Boto3 is the AWS SDK for Python. It allows you to interact with AWS services programmatically using Python. Follow these steps to install and configure Boto3, then use it to create and delete buckets in CoreWeave AI Object Storage.

Install tools

AWS CLI supports macOS, Linux, and Windows. See the official installation procedures for your operating system in the AWS CLI User Guide.

Configure tools

To configure the AWS CLI location and credentials for CoreWeave AI Object Storage, run aws configure in a terminal.

Configure the AWS CLI
$
aws configure

When prompted for information, provide the following values:

FieldValue
AWS Access Key IDThe Access Key created by the CoreWeave AI Object Storage API.
AWS Secret KeyThe Secret Key created by the CoreWeave AI Object Storage API.
Default Region NameThe CoreWeave Availability Zone is found in the table above.

AWS CLI stores credentials and configuration in the following default locations, where $HOME is the user's home directory on macOS, Linux, or Windows.

  • Credentials file: $HOME/.aws/credentials
  • Configuration file: $HOME/.aws/config

Next, set the endpoint URL for AWS CLI. Choose your preferred method from the documentation to set this value in the AWS CLI configuration, on the command line, or in the environment.

Use the following endpoint URLs, depending on your use case:

Endpoint URLDescription
https://cwobject.comThe primary endpoint for CoreWeave AI Object Storage.
http://cwlota.comThe endpoint for LOTA. See Local Object Transfer Accelerator (LOTA).

Next, set the default addressing style to virtual. This is required for CoreWeave AI Object Storage, as it uses virtual-hosted style URLs.

Example
$
aws configure set default.s3.addressing_style virtual

Create a bucket

Use the aws s3api command to create a new bucket. For example:

Replace the highlighted BUCKET_NAME and AVAILABILITY_ZONE below with your desired bucket name and a CoreWeave Availability Zone.

Create a bucket with AWS CLI
$
aws s3api create-bucket \
--bucket BUCKET_NAME \
--region AVAILABILITY_ZONE \
--create-bucket-configuration LocationConstraint=AVAILABILITY_ZONE
Important
  • The LocationConstraint parameter is required.
  • The bucket name must be globally unique across all CoreWeave locations.
  • Bucket names must not begin with cw- or vip-. These prefixes are reserved for internal use.

Delete a bucket

To delete a bucket, use the delete-bucket sub-command as shown. Only empty buckets can be deleted. Remove all objects, object versions, and delete markers before deleting a bucket.

Replace the highlighted BUCKET_NAME below with the name of the bucket you wish to delete.

Delete a bucket with AWS CLI
$
aws s3api delete-bucket --bucket BUCKET_NAME

Report usage

To report the usage of a bucket, use aws s3 with the ls sub-command. Use the --recursive, --human-readable, and --summarize parameters to view information in an easier-to-understand format.

Replace the highlighted BUCKET_NAME below with the name of your bucket.

Report bucket usage with AWS CLI
$
aws s3 ls s3://BUCKET_NAME --recursive --human-readable --summarize

Next steps

Now that you've installed and configured an S3-compatible client, and created a bucket, it's time to upload objects to the bucket. See How to: Add Files and Objects to Buckets for more information.