Setting up CDN Video Streaming with EOS
E2E Object Storages
E2E Object Store (EOS) is a simple, cost-effective, and S3-compatible storage service that enables you to store, backup, and archive large amounts of content for your web apps or data for AI/ML pipelines. Our S3 Compatible REST API enables data access from anywhere on the internet or within your private network.
EOS is designed to handle large data volumes so you can scale as per your needs. Under the hood, it is a distributed object storage, a federation of large clusters that ensure high availability. Erasure coding, the standard practice for data storage, is employed for redundancy and fault tolerance.
Getting Started
In EOS, data files are organized in the form of objects in a bucket. A bucket is a container just like folders or directories in your OS and allows separation of concerns. For example, you could create a bucket for a personnel app and another one for an accounts app. This enables you to manage permissions and data separately. To start using EOS for data storage, you must create a bucket.
How to Create a Bucket
Logging into E2E Networks MyAccount
- Go to My Account and log in using your credentials set up at the time of creating and activating the E2E Networks My Account.
- Sign into My Account.
- Navigate to
Products > Storage
in the sidebar menu. - Click on the
+ Add bucket
button.
- Enter a unique bucket name. Guidelines:
- Name must be unique across all existing buckets in E2E Object Storage.
- Must be between 3 and 63 characters.
- No uppercase letters or underscores.
- Should not be formatted like an IP address (e.g.,
10.10.10.2
).
- Click
Create
. - You will be redirected to the object browser.
Storage Browser
The storage browser acts as a primary control center for your content. It supports bucket creation, permission handling, and object upload/download.
Visit the My Account Storage Browser.
Bucket Details
- Log in to My Account.
- Navigate to
Products > Storage
. - Choose a bucket or create a new one.
- Click the
Object browser
tab to browse or manage bucket permissions. - Click the
Bucket details
tab to view bucket-related information.
Public Access Permissions
In EOS, you need to grant access permission for storage buckets. These permission settings apply only to this bucket and its associated stored objects.
Bucket Permissions for CLI/API Access
To use CLI or API for accessing data on EOS, define bucket permissions.
Create Access Key
- Enter a name for your access key (e.g., project or team member name).
- Click
Generate Key
. - Note both access and secret keys (they won't be visible again after closing the modal).
- Use the command provided to configure CLI with this access key if using
mc
.
Manage Access
To disable access for specific users or applications:
- Navigate to
Products > Storage
. - Click
Manage Access Key
. - Identify and lock/unlock the access key as needed.
Working with CLI
Download MinIO Client
- Linux (64-bit Intel): Download
- Linux (64-bit PPC): Download
- Windows (64-bit): Download
- MacOS:
brew install minio/stable/mc
For other methods, visit MinIO documentation.
Adding Picture in Bucket using CLI
Generate or create an access key and use the provided mc config
command:
mc config host add <Access key_name> https://objectstore.e2enetworks.net <access_key> <secret_key>
Minio CLI Configurations
mc config host add e2enetworks https://objectstore.e2enetworks.net <xxxxx><xxxx>
View Object Content
Use cat command to view contents of objects in your bucket. You can also use head command to display top few lines of an object.
<mybucket >is accesskey name. <mybucket-01> is bucket name
You can copy content from local system to object store using cp command. The copy operations to object store are verified with MD5SUM checksums. Interrupted or failed attempts can be resumed from the point of failure.
<mybucket >is accesskey name. <mybucket-01> is bucket name
!Remove Content
Use rm command to delete file or object.
<mybucket >is accesskey name. <mybucket-01> is bucket name
Uploading Videos to Bucket Storage and attaching with CDN
- Please go to My Account and log in using your credentials set up at the time of creating and activating the E2E Networks My Account.
- Sign into My Account
- Go to Products > Storage option in sidebar menu
- Click on Upload button
Uploading objects in EOS
- After Uploading video it can be accessed by url:
https://e2enetworks.objectstore.e2enetworks.net/LB/LB-Node.mp4
<https://bucket-link>/File -directory>
Creating CDN
E2E CDN is a fast content delivery network (CDN) service that securely delivers data, and static contents to customers globally with low latency, high transfer speeds. The idea of a CDN is essentially to have multiple edges in different locations of the world which caches all the static content so that it can be delivered from the customer’s closest location. We intend to integrate CDN such that people hosting applications through us can use CDNs to improve their static asset delivery. With E2E’s CDN, you can take the initial steps to speed up the delivery of your static content (for example images, JavaScripts, Style Sheets, and many others). With E2E CDN, you can guarantee your viewers a fast, reliable, and safe experience across the globe. To create CDN with E2E.
-
Navigate to the CDN page on MyAccount
-
On the left side of the My Account dashboard, click on the “CDN” sub-menu available under the “Services” section.
- Click on the “Create CDN” button. You will be redirected to the “Create Content Delivery Network” page.
- Here, you need to specify the ‘Origin Domain Name’, ‘Origin Path’, and ‘Origin ID’.
- Origin Domain Name: Enter the “Origin Domain Nameâ€. For example, xyz.abc.com / abc.com.
It is the DNS domain name of the HTTP Server or E2E Object storage bucket from which your static content gets delivered. For example, xyz.abc.com / abc.com. The files in your origin must be publicly readable. E2E CDN will contact this origin for the content requested by the user if not found on the CDN edge server cache.
- Origin Path: Enter the “Origin Path†beginning with /. For example, xyz.com/static. Do not include / at the end of the directory name.
It is the path of the folder or directory from where the content should be delivered. CDN appends the directory name to the value of Origin Domain Name when forwarding the request to the origin. If the content from this directory fails, CDN will give a “Not Found†response to the user.
-
Origin ID: Enter a description for the “Origin Pathâ€. This value lets you distinguish multiple origins in the same distribution from one another. The description for each origin must be unique within the distribution. Currently, you can add only a single origin for a distribution.
-
SSL Certificate:
Default SSL Certificate (*.e2enetworks.net) Choose this option if you want your users to use HTTPS or HTTP to access your content with the E2E Networks domain name (such as https://example.cdn.e2enetworks.net/logo.jpg) Important: if you choose this option, it requires that browsers or devices support TLSv1 or later to access your content.
Custom Certificate (example.com) Choose this option if you want your users to access your content by using an alternate domain name, such as https://www.example.com/logo.jpg.
If you want to use a custom certificate then you need to specify the CNAMEs separated with commas or put each on a new line.
.. Note:: Origin Domain and Alternate Domain Names(CNAMEs)(if any provided) should have the same domain names. All the Alternate Domain Names(CNAMEs) on the CDN should be covered by the Subject Alternative Name (SAN) of the certificate.
- After specifying the above value, click on the Create Distribution button. You will automatically redirect to the CDN Services page and a confirmation message will appear on the screen.
After the creation of CDN distribution, it will take up to 30 minutes to deploy the configuration changes on the CDN Edge servers.
CDN URL e2enetworksn3dd0rlzwd.cdn.e2enetworks.net/LB/LB-Node.mp4
Manage/Update CDN settings
There are 5 types of settings that a user can check and update for any CDN:
Basic Details
In the Basic detail tab, you will get to the general information about your CDN which are the default settings and you specify during the creation/updation of the CDN. Click on the Edit button to update the basic setting of your distribution.