Wie kann man mit Hilfe von s3cmd auf Private Object Storage zugreifen?

Für die folgenden Schritte muss OpenStackClient und s3cmd installiert sein. Die meisten modernen Distributionen werden vorschlagen, diesen nach dem ersten Aufrufversuch aus den Standard-Distributions-Repositories zu installieren.

ec2-Anmeldeinformationen

Versuchen wir, den Konsolenzugriff auf Ihren Bucket von der Konsole aus einzurichten. Der Zugriff kann in Ihrer virtuellen Maschine oder Ihrer lokalen Linux-Maschine erfolgen. Um Zugriff zu erhalten, müssen Sie zuerst eine RC-Datei herunterladen. Gehen Sie zu Ihrem Dashboard und navigieren Sie zu ProjectAPI Access. Wählen Sie die Schaltfläche Download OpenStack RC File und klicken Sie auf OpenStack RC File.

../_images/accessprivate1.png

Speichern Sie die Datei in einem Verzeichnis Ihrer Wahl und wechseln Sie in einer Konsole in dieses Verzeichnis. Führen Sie den folgenden Befehl aus, um die Daten der RC-Datei zu importieren.Sie werden aufgefordert, ein Passwort einzugeben (dies ist Ihr EO-Lab-Passwort).

source ./cloud_00XXX_1-openrc.sh
Please enter your OpenStack Password for project cloud_00XXX_1 as user

Wenn das Passwort korrekt angegeben wird, sind Sie authentifiziert. Im Falle eines Fehlers erfolgt keine erneute Abfrage nach dem Passwort. Wenn der nächste Befehl mit der Meldung „The request you have made requires authentication.“ beendet wird, führen Sie einfach noch einmal den Befehl „source“ aus und geben Sie das richtige Passwort ein.

Führen Sie einen OpenStack-Befehl aus, um EC2-Zugangsdaten zu erhalten:

openstack ec2 credentials list

Sie sollten eine ähnliche Ausgabe wie diese sehen:

+----------------------------------+----------------------------------+----------------------------------+----------------------------------+
| Access                           | Secret                           | Project ID                       | User ID                          |
+----------------------------------+----------------------------------+----------------------------------+----------------------------------+
| 69f9eea434c9466898144e18af0f4caf | 88ba74d9h3alow5761dce904047652aa | 8b939edi8n3f0a7fk5890ef4cced1e0a | 55a0826d0fl6sm2v0td953vf989fc873 |
+----------------------------------+----------------------------------+----------------------------------+----------------------------------+

Notieren Sie sich das Schlüsselpaar aus Access- und Secret-Key.

s3cmd

Verwenden Sie den Befehl s3cmd, um eine Konfigurationsdatei (.s3cfg) zu erstellen:

s3cmd --configure

Befolgen Sie diese Schritte, um die Konfiguration abzuschließen:

New settings:
      Access Key: e7f9d5686d1e44368cb29471f4b18579
      Secret Key: ee25ff09ec1741628bd0eeffe88bc6c1
      Default Region: RegionOne
      S3 Endpoint: https://s3.fra1-1.cloudferro.com
      DNS-style bucket+hostname:port template for accessing a bucket: https://s3.fra1-1.cloudferro.com
      Encryption password:
      Path to GPG program: /usr/bin/gpg
      Use HTTPS protocol: True
      HTTP Proxy server name:
      HTTP Proxy server port: 0

Test access with supplied credentials? [Y/n]
Please wait, attempting to list all buckets...
Success. Your access key and secret key worked fine :-)

Now verifying that encryption works...
Success. Encryption and decryption worked fine :-)

Save settings? [y/N] y
Configuration saved to '/home/rnowicki/.s3cfg'

Um die verfügbaren Buckets aufzulisten, geben Sie den folgenden Befehl ein:

s3cmd ls
s3://testjohn

Um einen bestimmten Eimer zu untersuchen, fügen Sie seinen Pfad zu s3cmd hinzu:

s3cmd ls s3://testjohn
s3://testjohn/console.png
s3://testjohn/tes1.txt