এডাব্লুএস এস 3: আমি কীভাবে দেখতে পারি যে ডিস্কের স্পেসটি কতটা ব্যবহার করছে


113

আমার AWS অ্যাকাউন্ট আছে। আমি বিভিন্ন সার্ভার থেকে ব্যাকআপ সঞ্চয় করতে এস 3 ব্যবহার করছি। আমার এস 3 ক্লাউডে ডিস্কের কত স্থান ব্যবহার হচ্ছে তা নিয়ে প্রশ্নটি এডাব্লুএস কনসোলে রয়েছে কি?


1
আপনাকে সমস্ত অবজেক্টস পেতে হবে, তারপরে সমস্ত ফাইলের আকার মাপতে হবে। আপনি এটি একক অপারেশনে করতে পারবেন না।
লেকে

এটি আশ্চর্যজনক যে এই সমস্যার কোনও বাস্তব সমাধান নেই। সমস্ত আইটেমের মধ্য দিয়ে যাওয়া এবং গণনা করা কোনও সমাধান নয় যদি আপনার কাছে 10 মিলিয়ন ফাইল থাকে! এডাব্লুএস এর এস 3 ইউআইতে আপনি পরিচালনা -> মেট্রিক্সের আওতায় সহজেই ব্যবহার দেখতে পাবেন। কমান্ড লাইন থেকে কেন এটি পাওয়ার উপায় নেই?
সারং

উত্তর:


117

ইয়েপ্প - এডাব্লুএস সিএলআই-এর একটি আপডেট আপনাকে বার বার বালতিগুলির মাধ্যমে পুনরাবৃত্তভাবে এলএস করার অনুমতি দেয় ...

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

মোট মুদ্রণ / 1024/1024/1024 * .03 আপনি 1 টিবির নীচে থাকলে $ ব্যবহারের জন্য একটি দুর্দান্ত অনুমান দেয়। @ কুডস অসাধারণতা - একটি টন ধন্যবাদ !!!
chrislovecnm

4
আপনি যদি একক বালতিটি করেন তবে আপনার গ্রেপ অংশের দরকার নেই।
jpbochi

7
এডাব্লুএস ক্লাউডওয়াচে এখন বালতি আকার এবং প্রতিদিন আপডেট হওয়া অবজেক্টের সংখ্যার জন্য একটি মেট্রিক রয়েছে। প্রায় সময়! aws.amazon.com/blogs/aws/…
চুদা

3
aws cloudwatch get-metric-statistics --namespace AWS/S3 --start-time 2015-07-15T10:00:00 --end-time 2015-07-31T01:00:00 --period 86400 --statistics Average --region eu-west-1 --metric-name BucketSizeBytes --dimensions Name=BucketName,Value=toukakoukan.com Name=StorageType,Value=StandardStorage গুরুত্বপূর্ণ উদাহরণ : আপনাকে অবশ্যই দুটি মাত্রার যুক্তিতে স্টোরেজ টাইপ এবং বকেটনাম উল্লেখ করতে হবে অন্যথায় আপনি কোনও ফল পাবেন না।
স্যাম মার্টিন 10

@ সমার্টিন স্টোরেজ টাইপটি কী হতে হবে? এছাড়াও এই উত্তরটি 100 গিগাবাইটের চেয়ে বড় বালতিগুলির গণনা করতে খুব দীর্ঘ সময় নেয়
বিবেক কটিয়াল

104

আমি নিশ্চিত নই যে এটি 3 বছর আগে মূল প্রশ্নটি যখন এডাব্লুএসসিএলআইতে যুক্ত হয়েছিল তবে কমান্ড লাইন সরঞ্জামটি চালিয়ে একটি দুর্দান্ত সংক্ষিপ্তসার দেয়:

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

4
ইতিমধ্যে আপনার এবং ক্রিস্টোফার এর সেরা উত্তর।
মাইকেল আহলার্স

2
গৃহীত উত্তরের চেয়ে অনেক সহজ সমাধান। ধন্যবাদ!
অ্যাড্রিয়ান ম্যাকনিল

1
এটি সংস্করণগুলির সাথে সঠিক আকারটি প্রদর্শন করে না। সমস্ত সংস্করণ সহ এস 3 বালতির মোট আকার চেক করার কোনও উপায় আছে কি?
শানিকা এডিরিউয়ের

1
আপনার প্রতিটি বালতি মোট আকার মুদ্রণ করুন:for b in $(aws s3 ls | awk '{ print $NF }'); do printf "$b "; aws s3 ls s3://$b --recursive --human-readable --summarize | tail -1; done
ম্যাট হোয়াইট

69

এডাব্লুএস কনসোল ব্যবহার করে এস 3 বালতিটির আকার অনুসন্ধান করতে:

  1. এস 3 বালতির নামটি ক্লিক করুন
  2. "পরিচালনা" ট্যাবটি নির্বাচন করুন
  3. "মেট্রিক্স" নেভিগেশন বোতামটি ক্লিক করুন
  4. ডিফল্টরূপে আপনাকে বালতির স্টোরেজ মেট্রিক দেখতে হবে

আশাকরি এটা সাহায্য করবে.


3
আপনার বালতিতে টিবিএস ডেটা থাকলে এটি দ্রুত কাজ করে। গৃহীত উত্তরগুলি সেই স্কেলের সমস্ত বস্তুর গণনা করতে অনেক সময় নেয়।
sokras

এটিও নোট করুন যে এটি lsভিত্তিযুক্ত সমাধানগুলি না করে অসম্পূর্ণ আপলোডগুলিকে ক্যাপচার করবে ।
ডেভিড মোলস

এটি করার দ্রুততম
উপায়টি

36

s3cmd আপনাকে চালিয়ে s3cmd duদিয়ে এটি প্রদর্শন করতে পারে , বিকল্প হিসাবে বালতিটির নামটি আর্গুমেন্ট হিসাবে পাস করে।


1
এফওয়াইআই - আমি এটি চেষ্টা করেছি এবং চুত্তরের উত্তরের জন্য ক্লাস সংস্করণটি পেয়েছি। তারা উভয়ই সূক্ষ্মভাবে কাজ করে তবে 1.53-আরসি 1 প্রকাশের ক্ষেত্রে আমি যে ক্ষেত্রে চেষ্টা করেছি সেগুলিতে এস 3 সিএমডি উল্লেখযোগ্যভাবে ধীর ছিল।
ডগডাব্লু

@ ডগডব্লিউ: ধন্যবাদ, দরকারী তথ্য। এডাব্লুএস সিএলআই 1.0.0 সেপ্টেম্বর 2013 এ প্রকাশিত হয়েছিল , সুতরাং আমি আমার উত্তর লেখার সময় এটি উপস্থিত ছিল না।
মার্কাস্ক

এস 3 সিএমডি এডাব্লুএস 4 হ্যাশিং সমর্থন করে না তাই এটি ইইউ অঞ্চল "ইইউ-কেন্দ্রীয় -1"

@ কোইন: ধন্যবাদ, আমি এটি সম্পর্কে অবগত ছিলাম না। দেখে মনে হচ্ছে s3cmd রক্ষণাবেক্ষণকারী AWS4: github.com/s3tools/s3cmd/issues/402
মার্কাস্ক

@ কোইন .: এস 3 সিএমডি এখন 1.5W হিসাবে AWS4 হ্যাশিং সমর্থন করে যা 2015-01-12 প্রকাশিত হয়েছিল। S3tools.org/news দেখুন ।
মার্কাস্ক

28

AWS CLI এখন --queryপ্যারামিটার সমর্থন করে যা একটি JMESPath এক্সপ্রেশন নেয় ath

এর অর্থ আপনি list-objectsব্যবহার sum(Contents[].Size)এবং পছন্দ মতো গণনা করে দেওয়া আকারের মানগুলি যোগ করতে পারেন length(Contents[])

এটি নীচের মতো অফিসিয়াল এডাব্লুএস সিএলআই ব্যবহার করে চালানো যেতে পারে এবং ফেব্রুয়ারী 2014 এ চালু হয়েছিল

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

উইন্ডোজ কমান্ড লাইনে ক্যোরি স্ট্রিংয়ের চারপাশে আমাকে ডাবল কোট ব্যবহার করতে হয়েছিল। যদিও চ্যাম্পের মতো কাজ করে।
ট্র্যাভিস স্টিল

সাবধান: বালতিটি খালি থাকলে কমান্ডটি নিম্নলিখিত ত্রুটির সাথে ব্যর্থ হবে: In function sum(), invalid type for value: None, expected one of: ['array-number'], received: "null"অন্যথায় কোয়েরিটি দুর্দান্ত কাজ করে!
mechatroner

7

লিনাক্স বাক্সে python( pipইনস্টলার সহ) রয়েছে grepএবং awkএডাব্লুএস সি এল এল ইনস্টল করুন (ইসি 2, এস 3 এবং অন্যান্য অনেক পরিষেবার জন্য কমান্ড লাইন সরঞ্জাম)

sudo pip install awscli

তারপরে .awssecretনীচের মত সামগ্রী সহ আপনার হোম ফোল্ডারে একটি ফাইল তৈরি করুন (কী, গোপন এবং অঞ্চলটি প্রয়োজন অনুযায়ী সামঞ্জস্য করুন):

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

এই ফাইলটি কেবল আপনার ব্যবহারকারীর কাছে পঠন-লিখন করুন:

sudo chmod 600 .awssecret

এবং এটি আপনার পরিবেশে রফতানি করুন

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

তারপরে টার্মিনালে চালান (এটি এখানে একটি \সহজ পঠনের জন্য পৃথক পৃথক পৃথক একক লাইন কমান্ড ):

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"}'
  • awsঅংশ বালতি (অথবা ঐচ্ছিকভাবে একটি 'সাব-ফোল্ডারে') তালিকা
  • grepঅংশ অপসারণ (ব্যবহার -v) লাইন যে রেগুলার এক্সপ্রেশন (ব্যবহার করে সমরূপ -E)। ^$ফাঁকা রেখার জন্য, --এর আউটপুটে বিভাজক রেখার জন্যaws s3 ls
  • সর্বশেষে ফলাফলটি আউটপুট (কেবি আকারে) এর তৃতীয় কলমে awkযোগ করুন totalতারপরে এটি প্রদর্শিত হবে

দ্রষ্টব্য এই আদেশটি বর্তমান বালতি বা 'ফোল্ডার' এর জন্য কাজ করে, পুনরাবৃত্তির সাথে নয়


7

ক্লাউড ওয়াচ আপনাকে আপনার এস 3 বালতির জন্য মেট্রিক তৈরি করতে দেয়। এটি আপনাকে আকার এবং অবজেক্টের গণনায় মেট্রিকগুলি দেখায়। পরিষেবাদি> পরিচালনা সরঞ্জাম> মেঘ ঘড়ি। আপনার এস 3 বালতিটি যে অঞ্চলটি চয়ন করুন এবং সেইগুলি উপলব্ধ মেট্রিকগুলির মধ্যে আকার এবং অবজেক্ট কাউন্ট মেট্রিকগুলি হবে।


6

Https://serverfault.com/questions/84815/how-can-i-get-the-size-of-an-amazon-s3-bucket দেখুন

ভিক উত্তর দিয়েছেন ...

<?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';
?>

আপনি জানেন কি এই ক্ষেত্রে গিগাবাটি 1024 3 বা 1000 3 হয়? আমি একটি নির্দিষ্ট এস 3 বিবৃতি সন্ধান করতে খুব কষ্ট পাচ্ছি।
dfrankow

@dfrankow echo ($totalSize / 1024 / 1024 / 1024) . ' GB';উত্স কোডের নীচে লাইনটি ঠিক সেখানে রয়েছে।
এমজেডি

@ এমজেডি আমার মনে নেই এখানে আমার চিন্তাভাবনা কী ছিল। এটি এই পিএইচপি কোড নয়, "গিগাবাাইট" শব্দটির s3cmd বা S3 ব্যবহার সম্পর্কে জিজ্ঞাসা করছিল।
dfrankow

5

ক্রিস্টোফারের উত্তর ছাড়াও।

আপনার যদি সংস্করণযুক্ত বালতি ব্যবহারের মোট আকার গণনা করতে হয়:

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

এটি সর্বশেষ এবং সংরক্ষণাগার উভয় সংস্করণ গণনা করে।


5

পথ বড় বালতি API এর মাধ্যমে আকার (হয় আউস s4cmd CLI বা) বেশ ধীর। ব্যাশ ওয়ান লাইনার ব্যবহার করে কীভাবে এস 3 ব্যবহারের প্রতিবেদন পার্স করবেন তা আমার হাওটো এখানে ব্যাখ্যা করছে :

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

1

অ্যাডাব্লুএস কনসোল আপনাকে এটি দেখায় না তবে আপনি বালতি মোট আকার পেতে বালতি এক্সপ্লোরার বা ক্লাউডবেরি এক্সপ্লোরার ব্যবহার করতে পারেন । উভয়েরই বিনামূল্যে সংস্করণ উপলব্ধ।

দ্রষ্টব্য: এই পণ্যগুলি এখনও প্রতিটি স্বতন্ত্র বস্তুর আকার পেতে হয়, তাই এটি প্রচুর পরিমাণে বস্তু সহ বালতিগুলিতে দীর্ঘ সময় নিতে পারে।


যদিও আমি কেবল একটি ট্রায়ালওয়্যার দেখতে পারি। এই প্রস্তাবটি কি সরানো হয়েছে?
ট্রেফেক্স

1

@ চাদের জবাবের ভিত্তিতে:

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]

এছাড়াও, সাইবারডাক্ক সুবিধাজনকভাবে একটি বালতি বা ফোল্ডারের আকারের গণনা করার অনুমতি দেয়।


1

মিনি জন এর উত্তর আমার পক্ষে পুরোপুরি কার্যকর! দুর্দান্ত ... যোগ করতে হয়েছিল

--region eu-west-1 

যদিও ইউরোপ থেকে


1

এটি একটি পুরানো তদন্ত, তবে যেহেতু আমি উত্তরটি খুঁজছিলাম তখন আমি এটি জুড়ে ছুটে এসেছি। উত্তরের কয়েকটি আমাকে মনে রেখেছে আমি ডেটা পরিচালনা করতে এস 3 ব্রাউজার ব্যবহার করি। আপনি একটি বালতিতে ক্লিক করতে পারেন এবং বৈশিষ্ট্যগুলি হিট করতে পারেন এবং এটি আপনাকে মোট দেখায়। বেশ সহজ. আমি ব্রাউজারটির অত্যন্ত প্রস্তাব দিই: https://s3browser.com/default.aspx?v=6-1-1&fam=x64


0

ভাল, আপনি যদি কোনও মানববান্ধব UI পছন্দ করেন তবে আপনি এটি এস 3 ক্লায়েন্টের মাধ্যমেও করতে পারেন।

আমি ক্রসএফটিপি ব্যবহার করি যা নিখরচায় এবং ক্রস-প্ল্যাটফর্ম, এবং সেখানে আপনি ফোল্ডার ডিরেক্টরিটিতে ডান ক্লিক করতে পারেন -> "বৈশিষ্ট্যগুলি ..." নির্বাচন করুন -> আকার এবং ভয়েলার পাশের "গণনা" বোতামে ক্লিক করুন।


0

এস 3 এডমিন একটি ওপেনসোর্স অ্যাপ্লিকেশন (ইউআই) যা আপনাকে বালতিগুলি ব্রাউজ করতে, মোট আকার গণনা করতে, বৃহত্তম / ক্ষুদ্রতম ফাইলগুলি প্রদর্শন করতে দেয়। এটি আপনার বালতি এবং তাদের ব্যবহারের একটি দ্রুত পর্যালোচনা থাকার জন্য তৈরি করা হয়েছে।


0

আপনি জিজ্ঞাসা করেছেন: আমার এস 3 ক্লাউডে ডিস্কের স্পেস কত ব্যবহার করছে তা সম্পর্কে এডাব্লুএস কনসোলের তথ্য ?

আমি তাই বিলিংয়ের ড্যাশবোর্ডে গিয়ে বর্তমান বিলে এস 3 ব্যবহার পরীক্ষা করে নিই ।

তারা আপনাকে তথ্য দেয় - এমটিডি - জিবিতে 6 দশমিক পয়েন্ট, আইডাব্লু, কেবি স্তর পর্যন্ত।

এটি অঞ্চল অনুসারে ভেঙে গেছে, তবে এগুলি যুক্ত করা (ধরে নেওয়া যায় আপনি একাধিক অঞ্চল ব্যবহার করেছেন) এটি যথেষ্ট সহজ।

বিটিডাব্লু: বিলিংয়ের তথ্য পেতে আপনার নির্দিষ্ট আইএএম অনুমতি প্রয়োজন হতে পারে।


-2

স্বতন্ত্র বালতিগুলির আকার পেতে আমি ক্লাউড টার্টল ব্যবহার করি । যদি বালতির আকার> 100 জিবি ছাড়িয়ে যায় তবে আকারটি প্রদর্শন করতে কিছুটা সময় লাগবে। ক্লাউড টার্টল ফ্রিওয়্যার।


8
এই সফ্টওয়্যারটি সম্পর্কে সতর্কতা অবলম্বন করুন। এটি অতিরিক্ত ক্রোম এক্সটেনশানগুলি ইনস্টল করে এবং স্প্যামি বলে মনে হচ্ছে।
স্টাইলগুলি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.