mirror of
https://github.com/apache/cloudstack.git
synced 2025-12-18 19:44:21 +01:00
116 lines
4.5 KiB
XML
116 lines
4.5 KiB
XML
<?xml version='1.0' encoding='utf-8' ?>
|
|
<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
|
<!ENTITY % BOOK_ENTITIES SYSTEM "Release_Notes.ent">
|
|
%BOOK_ENTITIES;
|
|
]>
|
|
<section id="castor-with-cs" lang="en-US">
|
|
<!-- Licensed to the Apache Software Foundation (ASF) under one
|
|
or more contributor license agreements. See the NOTICE file
|
|
distributed with this work for additional information
|
|
regarding copyright ownership. The ASF licenses this file
|
|
to you under the Apache License, Version 2.0 (the
|
|
"License"); you may not use this file except in compliance
|
|
with the License. You may obtain a copy of the License at
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
Unless required by applicable law or agreed to in writing,
|
|
software distributed under the License is distributed on an
|
|
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
KIND, either express or implied. See the License for the
|
|
specific language governing permissions and limitations
|
|
under the License.
|
|
--> <title>Using the CAStor Back-end Storage with &PRODUCT;</title>
|
|
<para>
|
|
This section describes how to use a CAStor cluster as the back-end storage system for a &PRODUCT; S3 front-end. The CAStor back-end storage for &PRODUCT; extends the existing storage classes and allows the storage configuration attribute to point to a CAStor cluster.
|
|
</para>
|
|
<para>
|
|
This feature makes use of the &PRODUCT; server's local disk to spool files before writing them to CAStor when handling the PUT operations. However, a file must be successfully written into the CAStor cluster prior to the return of a success code to the S3 client to ensure that the transaction outcome is correctly reported.
|
|
</para>
|
|
<note>
|
|
<para>
|
|
The S3 multipart file upload is not supported in this release. You are prompted with proper error message if a multipart upload is attempted.
|
|
</para>
|
|
|
|
</note>
|
|
<para>
|
|
To configure CAStor:
|
|
</para>
|
|
<orderedlist>
|
|
<listitem>
|
|
<para>
|
|
Install &PRODUCT; 4.0.0-incubating by following the instructions given in the INSTALL.txt file.
|
|
</para>
|
|
<note>
|
|
<para>
|
|
You can use the S3 storage system in &PRODUCT; without setting up and installing the compute components.
|
|
</para>
|
|
|
|
</note>
|
|
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Enable the S3 API by setting "enable.s3.api = true" in the Global parameter section in the UI and register a user.
|
|
</para>
|
|
<para>
|
|
For more information, see <ulink url="https://cwiki.apache.org/CLOUDSTACK/s3-api-in-cloudstack.html">S3 API in &PRODUCT;</ulink>.
|
|
</para>
|
|
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Edit the cloud-bridge.properties file and modify the "storage.root" parameter.
|
|
</para>
|
|
<orderedlist numeration="loweralpha">
|
|
<listitem>
|
|
<para>
|
|
Set "storage.root" to the key word "castor".
|
|
</para>
|
|
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Specify a CAStor tenant domain to which content is written. If the domain is not specified, the CAStor default domain, specified by the "cluster" parameter in CAStor's node.cfg file, will be used.
|
|
</para>
|
|
|
|
</listitem>
|
|
<listitem>
|
|
<para condition="">
|
|
Specify a list of node IP addresses, or set "zeroconf" and the cluster name. When using a static IP list with a large cluster, it is not necessary to include every node, only a few is required to initialize the client software.
|
|
</para>
|
|
<para>
|
|
For example:
|
|
</para>
|
|
|
|
<programlisting>storage.root=castor domain=cloudstack 10.1.1.51 10.1.1.52 10.1.1.53</programlisting>
|
|
<para>
|
|
In this example, the configuration file directs &PRODUCT; to write the S3 files to CAStor instead of to a file system, where the CAStor domain name is cloudstack, and the CAStor node IP addresses are those listed.
|
|
</para>
|
|
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
(Optional) The last value is a port number on which to communicate with the CAStor cluster. If not specified, the default is 80.
|
|
</para>
|
|
|
|
<programlisting>#Static IP list with optional port
|
|
storage.root=castor domain=cloudstack 10.1.1.51 10.1.1.52 10.1.1.53 80
|
|
#Zeroconf locator for cluster named "castor.example.com"
|
|
storage.root=castor domain=cloudstack zeroconf=castor.example.com</programlisting>
|
|
|
|
</listitem>
|
|
|
|
</orderedlist>
|
|
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Create the tenant domain within the CAStor storage cluster. If you omit this step before attempting to store content, you will get HTTP 412 errors in the awsapi.log.
|
|
</para>
|
|
|
|
</listitem>
|
|
|
|
</orderedlist>
|
|
</section>
|
|
|
|
|