CloudVPS Object Store QuickStart

n deze quickstart kunt u een voorbeeld vinden op basis van curl. Eerst wordt wat algemene informatie over de API gegeven.

API Information
 

Authentication Alternatives

Meer informatie over OpenStack Authenticatie kan hier gevonden worden.

Algemene HTTP + basic authentication:

Url   https://<$project_id>.objectstore.eu/
Gebruikersnaam   <$username>
Wachtwoord <$password>

Openstack token-based authentication:

Auth url: https://identity.stack.cloudvps.com/v2.0
Project id: <your project id>
Tenant id: <your project id>
Username: <your username>
Password: <your password>

Rackspace CloudFiles:

Authenticatie host  <$project_id>.objectstore.eu>
Gebruikersnaam  <$username>
Wachtwoord <$password>

Amazon S3:

Hostname  <$project_id>.objectstore.eu
Access key  <$ec2.access>
Secret Key  <$ec2.secret>

Zie onze documentatie hoe u Amazone S3 access tokens kunt genereren.

API

De API gebruikt HTTP REST calls (voornamelijk GET, PUT en DELETE) om objecten te managen. Gestructureerde data wordt in het JSON-format gecommuniceerd. Hier kunt u meer informatie over deze API vinden: http://docs.openstack.org/api/openstack-object-storage/1.0/content/.

Beschikbare Software Development Kits (SDKs) kunnen hier gevonden worden: https://wiki.openstack.org/wiki/SDKs. Onze CloudVPS-specifieke documentatatie voor SDKs en andere ontwikkeltools en programmeertalen kunnen hier gevonden worden: https://www.cloudvps.nl/community/knowledge-base/category/object-store-dev-docs

 

CURL Voorbeeld

In deze voorbeelden gebruiken we de command line tool curl om te laten zien hoe de API werkt op HTTP-niveau. In de praktijk is het gemakkelijker om een library voor de door u geselecteerde programmeertaal. Voor deze voorbeelden heeft u uw projectid, username en password nodig. U kunt deze vinden in de welkoms email die u voor uw object store ontvangen heeft. In dit voorbeeld gebruiken we 'aaaa0000cccc66669999bbbb00004444' voor het projectid, 'username' voor de username en 'PaSsw0rd' voor het password.

Containers

Objecten binnen een object store zullen toegewezen worden aan een 'container'. Containers kunnen als bestandsmappen worden gezien, het belangrijkste verschil is dat er maar één hierarchisch niveau is; containers kunnen alleen bestanden bevatten, geen andere containers.

Een container kan worden gecreëerd met een simpel PUT request.

curl -X PUT --user username:PaSsw0rd \ https://aaaa0000cccc66669999bbbb00004444.objectstore.eu/photos/

Het antwoord is een HTTP 202 (http://en.wikipedia.org/wiki/List_of_HTTP_status_codes):

202 Accepted The request is accepted for processing.

Het managen en opvragen van objecten

Vervolgens kunnen objecten worden ge-upload, ook dit wordt met een PUT commando gedaan:

curl -X PUT -T landscape.jpg --user username:PaSsw0rd \ https://aaaa0000cccc66669999bbbb00004444.objectstore.eu/photos/landscape...

Het bestand is nu opgeslagen in de object store, en kan hieruit worden opgevraagd:

curl --user username:PaSsw0rd \ https://aaaa0000cccc66669999bbbb00004444.objectstore.eu/photos/landscape...

Bestanden kunnen normaal worden opgevraagd met een geldig token. Om bestanden publiek beschikbaar te maken kan de container als een publieke container worden gedefinieerd.

curl -H "X-Container-Read: .r:*" -X PUT \ --user username:PaSsw0rd \ https://aaaa0000cccc66669999bbbb00004444.objectstore.eu/photos/

Vanaf dat moment kunnen bestanden in die container door elke browser worden benaderd. In deze manier kunnen statische bestanden direct vanuit de object store gehost worden.

Als u een object uit een publieke container wilt benaderen door middel van een URL, dan zou het er als volgt uitzien:

https://aaaa0000cccc66669999bbbb00004444.objectstore.eu/photos/landscape...

Bestanden kunnen worden verwijderd met een DELETE request:

curl -X DELETE --user username:PaSsw0rd \ https://aaaa0000cccc66669999bbbb00004444.objectstore.eu/photos/landscape...

Gebruik uw eigen domeinnaam dmv CNAME

Het is mogelijk om bestanden in de object store te publiceren met uw eigen domeinnaam in plaats van objectstore.eu. Om dit te bereiken hoeft u alleen een CNAME record toevoegen aan het DNS systeem. Dit record zal naar een projectid in de object store verwijzen. Dit ziet er als volgt uit:

objectstore.uwdomein.nl CNAME aaaa0000cccc66669999bbbb00004444.objectstore.eu.

URL's that refer to objectstore.yourdomain.nl will now refer to the right domain in the object store, for example:

http://objectstore.yourdomain.com/photos/landscape.jpg

wordt

http://aaaa0000cccc66669999bbbb00004444.objectstore.eu/photos/landscape.jpg

Het is mogelijk om een container in de domeinnaam te verwerken, bijvoorbeeld:

photos.yourdomain.com CNAME photos.aaaa0000cccc66669999bbbb00004444.objectstore.eu

Het zelfde object kan dan onder de volgende URL worden bereikt:

http://photos.yourdomain.com/landscape.jpg

Helpcenter

Algemene FAQ

Bekijk alle vragen

OpenStack FAQ

Bekijk alle vragen

Knowledgebase

Bekijk alle vragen