it-swarm.com.de

AWS S3: Wie sehe ich, wie viel Speicherplatz belegt ist

Ich habe ein AWS-Konto. Ich verwende S3, um Backups von verschiedenen Servern zu speichern. Die Frage ist, ob in der AWS-Konsole Informationen darüber enthalten sind, wie viel Festplattenspeicher auf meiner S3-Cloud verwendet wird. 

Vielen Dank

83
KennyPowers

Yippe - ein Update für AWS CLI ermöglicht das rekursive Durchlaufen von Buckets ...

aws s3 ls s3://<bucketname> --recursive  | grep -v -E "(Bucket: |Prefix: |LastWriteTime|^$|--)" | awk 'BEGIN {total=0}{total+=$3}END{print total/1024/1024" MB"}'
87
cudds

Ich bin nicht sicher, wann dies zu AWSCLI hinzugefügt wurde, da die ursprüngliche Frage vor 3 Jahren bestand. Das Befehlszeilentool gibt jedoch eine schöne Zusammenfassung, wenn Sie Folgendes ausführen:

aws s3 ls s3://mybucket --recursive --human-readable --summarize
64
thaavik

s3cmd kann dies zeigen, indem Sie s3cmd du ausführen und optional den Bucketnamen als Argument übergeben.

35
markusk

Die AWS-CLI unterstützt jetzt den --query-Parameter, der einen JMESPath -Ausdruck benötigt. 

Das heißt, Sie können die durch list-objects angegebenen Größenwerte mit sum(Contents[].Size) summieren und wie length(Contents[]) zählen.

Dies kann mit der offiziellen AWS-CLI wie folgt ausgeführt werden und wurde in Feb 2014 eingeführt.

 aws s3api list-objects --bucket BUCKETNAME --output json --query "[sum(Contents[].Size), length(Contents[])]"
25

So ermitteln Sie die Größe des S3-Buckets mithilfe der AWS Console:

  1. Klicken Sie auf den S3-Bucket-Namen
  2. Wählen Sie die Registerkarte "Verwaltung"
  3. Klicken Sie auf die Navigationsschaltfläche "Metriken"
  4. Standardmäßig sollten Sie die Speicherungsmetrik des Buckets sehen

Hoffe das hilft.

20
endriju

Auf Linux-Boxen, die python (mit pip-Installationsprogramm), grep und awk haben, installieren Sie AWS CLI (Befehlszeilentools für EC2, S3 und viele andere Dienste)

Sudo pip install awscli

erstellen Sie anschließend eine .awssecret-Datei in Ihrem Home-Ordner mit dem unten angegebenen Inhalt (passen Sie Schlüssel, Schlüssel und Region nach Bedarf an):

[default]
aws_access_key_id=<YOUR_KEY_HERE>
aws_secret_access_key=<YOUR_SECRET_KEY_HERE>
region=<AWS_REGION>

Machen Sie diese Datei nur für Ihren Benutzer lesbar:

Sudo chmod 600 .awssecret

und exportieren Sie es in Ihre Umgebung

 export AWS_CONFIG_FILE=/home/<your_name>/.awssecret

dann im Terminal laufen (dies ist ein einzeiliger Befehl, getrennt durch \ zum einfachen Lesen hier):

aws s3 ls s3://<bucket_name>/foo/bar | \
grep -v -E "(Bucket: |Prefix: |LastWriteTime|^$|--)" | \
awk 'BEGIN {total=0}{total+=$3}END{print total/1024/1024" MB"}'
  • der aws-Teil listet den Bucket (oder optional einen 'Unterordner') auf.
  • der grep-Teil entfernt (mit -v) die Zeilen, die mit dem regulären Ausdruck übereinstimmen (mit -E). ^$ steht für leere Zeile, -- steht für die Trennzeilen in der Ausgabe von aws s3 ls
  • die letzte awk fügt einfach die 3. Spalte der resultierenden Ausgabe (die Größe in KB) zu total hinzu und zeigt sie am Ende an

NOTEDieser Befehl funktioniert für den aktuellen Bucket oder Ordner, nicht rekursiv

7
JScoobyCed

Siehe https://serverfault.com/questions/84815/how-can-i-get-the-size-of-an-Amazon-s3-bucket

Beantwortet von Vic ...

<?php
if (!class_exists('S3')) require_once 'S3.php';

// Instantiate the class
$s3 = new S3('accessKeyId', 'secretAccessKey');
S3::$useSSL = false;

// List your buckets:
echo "S3::listBuckets(): ";
echo '<pre>' . print_r($s3->listBuckets(), 1). '</pre>';

$totalSize = 0;
$objects = $s3->getBucket('name-of-your-bucket');
foreach ($objects as $name => $val) {
    // If you want to get the size of a particular directory, you can do
    // only that.
    // if (strpos($name, 'directory/sub-directory') !== false)
    $totalSize += $val['size'];
}

echo ($totalSize / 1024 / 1024 / 1024) . ' GB';
?>
6
JonLovett

Mit Cloud Watch können Sie auch Metriken für Ihren S3-Bucket erstellen. Es zeigt Ihnen Metriken nach Größe und Objektanzahl. Services> Management Tools> Cloud-Überwachung. Wählen Sie den Bereich aus, in dem sich Ihr S3-Bucket befindet, und die Metriken für Größe und Objektanzahl wären unter diesen verfügbaren Metriken.

6
rowelee

Das Erhalten der Größe large Buckets über die API (entweder aws cli oder s4cmd) ist ziemlich langsam. Hier ist mein HowTo, um zu erklären, wie man den S3 Usage Report analysiert bash one Liner verwendet:

cat report.csv | awk -F, '{printf "%.2f GB %s %s \n", $7/(1024**3 )/24, $4, $2}' | sort -n
5
Jakub Głazik

Neben Christopher Antwort.

Wenn Sie die Gesamtgröße des versionierten Buckets zählen müssen, verwenden Sie Folgendes:

aws s3api list-object-versions --bucket BUCKETNAME --output json --query "[sum(Versions[].Size)]"

Es zählt sowohl die neuesten als auch die archivierten Versionen.

4
ruletkin

Dies ist eine alte Anfrage, aber da ich nach der Antwort suchte, bin ich darauf gestoßen. An einige Antworten erinnerte ich mich, dass ich S3-Browser zum Verwalten von Daten verwende. Sie können auf einen Bucket klicken und auf Eigenschaften klicken, und es wird Ihnen die Gesamtsumme angezeigt. Ziemlich einfach. Ich kann den Browser nur wärmstens empfehlen: https://s3browser.com/default.aspx?v=6-1-1&fam=x64

1
user7191982

Die AWS-Konsole zeigt dies nicht an, aber Sie können Bucket Explorer oder Cloudberry Explorer verwenden, um die Gesamtgröße eines Buckets zu ermitteln. Beide haben freie Versionen zur Verfügung.

Hinweis: Diese Produkte müssen immer noch die Größe jedes einzelnen Objekts erhalten, daher kann es bei Eimern mit vielen Objekten sehr lange dauern.

1
Geoff Appleford

Basierend auf der Antwort von @ cudds:

function s3size()
{
    for path in $*; do
        size=$(aws s3 ls "s3://$path" --recursive | grep -v -E "(Bucket: |Prefix: |LastWriteTime|^$|--)" | awk 'BEGIN {total=0}{total+=$3}END{printf "%.2fGb\n", (total/1024/1024/1024)}')
        echo "[s3://$path]=[$size]"
    done
}

...

$ s3size bucket-a bucket-b/dir
[s3://bucket-a]=[24.04Gb]
[s3://bucket-b/dir]=[26.69Gb]

Mit Cyberduck können Sie bequem die Größe eines Eimers oder eines Ordners berechnen.

1
Evgeny Goldin

Die Antwort von Mini John hat für mich funktioniert! Super ... musste hinzufügen 

--region eu-west-1 

aus Europa aber

1
pitxon_net

s3 admin ist eine Open Source App (UI), mit der Sie Buckets durchsuchen, die Gesamtgröße berechnen und die größten/kleinsten Dateien anzeigen können. Es ist für einen schnellen Überblick über Ihre Eimer und deren Verwendung zugeschnitten.

0
maksion

Nun, Sie können dies auch über einen S3-Client durchführen, wenn Sie eine benutzerfreundliche Benutzeroberfläche bevorzugen. 

Ich benutze CrossFTP , das kostenlos und plattformübergreifend ist. Dort können Sie mit der rechten Maustaste auf das Verzeichnis des Ordners klicken -> "Eigenschaften ..." auswählen -> Klicken Sie neben "Größe" auf "Berechnen".

0

Sie haben gefragt: Informationen in der AWS-Konsole darüber, wie viel Speicherplatz in meiner S3-Cloud belegt ist ?

Ich gehe also zum Rechnungs-Dashboard und überprüfe die S3-Nutzung in der aktuellen Rechnung.

Sie geben Ihnen die Informationen - MTD - in GB bis zu 6 Dezimalstellen (IOW) auf der Ebene Kb an.

Die Aufschlüsselung nach Regionen ist jedoch einfach (vorausgesetzt, Sie verwenden mehr als eine Region).

Übrigens: Möglicherweise benötigen Sie spezielle IAM-Berechtigungen, um zu den Rechnungsinformationen zu gelangen.

0
Danny Schoemann