S3 سے ہم آہنگ آبجیکٹ اسٹوریج کیا ہے؟
آبجیکٹ اسٹوریج آپ کی فائلوں کو الگ الگ آبجیکٹس کے طور پر بکٹس کہلانے والے ہموار کنٹینرز کے اندر محفوظ رکھتا ہے، بجائے اس فولڈرز اور بلاکس کے ماڈل کے جو روایتی ڈسک میں استعمال ہوتا ہے۔ ہر آبجیکٹ اپنے ساتھ اپنا ڈیٹا، ایک منفرد کلید (اس کا نام)، اور میٹا ڈیٹا رکھتا ہے۔ آپ اس تک HTTP کے ذریعے Amazon S3 API استعمال کرتے ہوئے پہنچتے ہیں — وہ عملی معیار جسے ہزاروں ٹولز، SDKs، اور بیک اپ کی سہولیات پہلے ہی سمجھتی ہیں۔
چونکہ Skyline Cloud آبجیکٹ اسٹوریج S3 سے ہم آہنگ ہے، اس لیے جو کچھ بھی Amazon S3 کے ساتھ کام کرتا ہے — AWS CLI، s3cmd، rclone، MinIO کلائنٹ، Laravel/Django/Node SDKs، Veeam، یا آپ کا CMS میڈیا پلگ ان — وہ یہاں بھی کام کرتا ہے۔ فرق یہ ہے کہ آپ کے بائٹس جسمانی طور پر کہاں رہتے ہیں: مملکت کے اندر، جو آپ کو PDPL ڈیٹا رہائش کی توقعات کے مطابق رکھتا ہے اور آپ کو آپ کے اپنے ٹائم زون میں عربی بولنے والی معاونت فراہم کرتا ہے۔
آبجیکٹ اسٹوریج کب استعمال کریں (اور کب نہیں)
| آبجیکٹ اسٹوریج اس کے لیے استعمال کریں | بلاک/ڈسک اسٹوریج اس کے لیے استعمال کریں |
|---|---|
| بیک اپس، آرکائیوز، اسنیپ شاٹس | کم تاخیر والے رینڈم I/O کی ضرورت والے ڈیٹا بیسز |
| جامد اثاثے: تصاویر، ویڈیو، PDFs | آپریٹنگ سسٹم / بوٹ والیومز |
| ویب/موبائل ایپس میں صارف کی اپ لوڈز | وہ ایپس جو mmap کرتی ہیں یا POSIX فائل سسٹم کی ضرورت رکھتی ہیں |
| ڈیٹا لیکس، لاگز، بڑے غیر منظم سیٹس | وہ سافٹ ویئر جو ماؤنٹ شدہ ڈرائیو کی توقع رکھتا ہے |
آبجیکٹ اسٹوریج اربوں آبجیکٹس تک پھیلتا ہے، فی گیگابائٹ پائیدار اور سستا ہے، اور URL کے ذریعے رسائی پاتا ہے — لیکن یہ فائل سسٹم نہیں ہے۔ آپ اس میں cd نہیں کرتے اور نہ ہی اس پر ڈیٹا بیس چلاتے ہیں۔
مرحلہ 1: ایک بکٹ بنائیں
Skyline Cloud کے لیے سائن اپ کرنے کے بعد، کنسول کا Object Storage سیکشن کھولیں اور ایک بکٹ بنائیں۔
شروع میں جاننے کے لیے چند اصول:
- بکٹ کے نام اینڈ پوائنٹ کے اندر عالمی طور پر منفرد ہوتے ہیں اور انہیں DNS کے لحاظ سے درست ہونا چاہیے: چھوٹے حروف، اعداد، اور ہائفنز؛ 3–63 حروف؛ کوئی انڈر اسکور یا بڑے حروف نہیں۔ مثال:
acme-app-uploads۔ - بطورِ پہلے سے طے شدہ Private رسائی منتخب کریں۔ آبجیکٹس کو صرف اسی وقت عوامی بنائیں جب آپ انہیں براہِ راست ویب پر پیش کرنے کا ارادہ رکھتے ہوں (مثال کے طور پر، CDN کے پیچھے ایک عوامی تصاویر کی بکٹ)۔
- بکٹ کی تفصیلات سے اپنا endpoint URL اور region نوٹ کریں — آپ کو CLI کے لیے دونوں کی ضرورت ہوگی۔
مرحلہ 2: رسائی کی کلیدیں جاری کریں
S3 صارف نام اور پاس ورڈ کے بجائے ایک کلیدی جوڑے سے تصدیق کرتا ہے:
- Access Key ID — تقریباً عوامی شناخت کنندہ۔
- Secret Access Key — صرف ایک بار دکھایا جاتا ہے۔ اسے فوراً نقل کریں اور کسی پاس ورڈ مینیجر یا سیکریٹ والٹ میں محفوظ کریں۔
کنسول کے Access Keys علاقے میں جوڑا جاری کریں۔ کم سے کم استحقاق کے اصول پر عمل کریں: ہر ایپلیکیشن یا ماحول (اسٹیجنگ بمقابلہ پروڈکشن) کے لیے الگ کلیدیں بنائیں تاکہ آپ ایک کو منسوخ کر سکیں بغیر دوسروں کو خراب کیے۔ کلیدوں کو کبھی بھی Git میں کمٹ نہ کریں اور نہ ہی انہیں کلائنٹ سائیڈ کوڈ میں پیسٹ کریں۔
مرحلہ 3: AWS CLI کو ترتیب دیں
AWS CLI سب کچھ کام کر رہا ہے اس کی تصدیق کا تیز ترین طریقہ ہے۔ اسے انسٹال کریں، پھر ایک نام شدہ پروفائل بنائیں تاکہ یہ کسی حقیقی AWS سیٹ اپ سے نہ ٹکرائے:
# Install (Linux/macOS)
pip install awscli # or: brew install awscli
aws configure --profile skyline
# AWS Access Key ID [None]: <YOUR_ACCESS_KEY_ID>
# AWS Secret Access Key [None]: <YOUR_SECRET_ACCESS_KEY>
# Default region name [None]: <YOUR_REGION>
# Default output format [None]: json
پھر ہر کمانڈ آپ کے Skyline اینڈ پوائنٹ کو --endpoint-url اور پروفائل کے ساتھ ہدف بناتی ہے:
# List your buckets
aws s3 ls --profile skyline \
--endpoint-url https://<YOUR_ENDPOINT>
# List objects in one bucket
aws s3 ls s3://acme-app-uploads --profile skyline \
--endpoint-url https://<YOUR_ENDPOINT>
تجویز:
AWS_PROFILE=skylineکو ایکسپورٹ کریں اور اپنے شیل میں اینڈ پوائنٹ سیٹ کریں تاکہ آپ فلیگز چھوڑ سکیں۔<YOUR_ENDPOINT>اور<YOUR_REGION>کو اپنی بکٹ کی تفصیلات کی اقدار سے تبدیل کریں۔
مرحلہ 4: اپ لوڈ، ڈاؤن لوڈ، اور سنک کریں
EP="--endpoint-url https://<YOUR_ENDPOINT> --profile skyline"
# Upload one file
aws s3 cp ./logo.png s3://acme-app-uploads/logo.png $EP
# Download it back
aws s3 cp s3://acme-app-uploads/logo.png ./logo-copy.png $EP
# Sync a whole local directory to a bucket prefix
aws s3 sync ./public/assets s3://acme-app-uploads/assets $EP
# Delete an object
aws s3 rm s3://acme-app-uploads/old.zip $EP
aws s3 sync صرف تبدیل شدہ فائلوں کو منتقل کرتا ہے، جو اسے انکریمنٹل بیک اپس اور ڈیپلائے پائپ لائنز کے لیے مثالی بناتا ہے۔
s3cmd کو ترجیح دیتے ہیں؟
s3cmd --configure # set host_base / host_bucket to <YOUR_ENDPOINT>
s3cmd put ./report.pdf s3://acme-app-uploads/report.pdf
s3cmd ls s3://acme-app-uploads
مرحلہ 5: پری سائنڈ URL کے ساتھ فائل شیئر کریں
کسی نجی آبجیکٹ تک عارضی، وقت کی پابندی والی رسائی فراہم کرنے کے لیے — پوری بکٹ کو عوامی بنائے بغیر — ایک پری سائنڈ URL جاری کریں:
aws s3 presign s3://acme-app-uploads/report.pdf \
--expires-in 3600 \
--endpoint-url https://<YOUR_ENDPOINT> --profile skyline
یہ لنک ایک گھنٹے کے لیے کام کرتا ہے، پھر ختم ہو جاتا ہے۔ یہ انوائس ڈاؤن لوڈز، ایک بار کے ڈیلیوری لنکس، اور صارف کے مخصوص میڈیا کے لیے درست طریقہ ہے — بکٹ کو عوامی کرنے سے کہیں زیادہ محفوظ۔
مرحلہ 6: اسے اپنی ایپ میں جوڑیں
اپنی ایپلیکیشن کے S3 SDK کو AWS کے بجائے Skyline اینڈ پوائنٹ کی طرف پوائنٹ کریں۔ مثال کے طور پر، Laravel میں، config/filesystems.php میں s3 ڈسک کو ترتیب دیں:
's3' => [
'driver' => 's3',
'key' => env('AWS_ACCESS_KEY_ID'),
'secret' => env('AWS_SECRET_ACCESS_KEY'),
'region' => env('AWS_DEFAULT_REGION'),
'bucket' => env('AWS_BUCKET'),
'endpoint' => env('AWS_ENDPOINT'), // https://<YOUR_ENDPOINT>
'use_path_style_endpoint' => true,
],
use_path_style_endpoint (یا AWS SDK for JavaScript میں اس کے مساوی forcePathStyle) کو true پر سیٹ کریں تاکہ درخواستیں ورچوئل ہوسٹڈ سب ڈومینز کے بجائے endpoint/bucket/key استعمال کریں۔ اس کے بعد، Storage::disk('s3')->put(...) براہِ راست آپ کی مملکت کے اندر موجود بکٹ میں لکھتا ہے۔
اچھے طریقے
- Lifecycle rules — لاگت کو قابو میں رکھنے کے لیے پرانے آبجیکٹس (لاگز، عارضی اپ لوڈز) کو خود بخود ختم کریں یا نچلے درجے پر لے جائیں۔
- Versioning — ناقابلِ تلافی ڈیٹا رکھنے والی بکٹس کے لیے اسے آن رکھیں تاکہ غلطی سے اوور رائٹ کرنا قابلِ بحالی ہو۔
- Server-side encryption — PDPL کے تحت کسی بھی حساس چیز کے لیے ریسٹ پر انکرپٹ کریں۔
- Scoped keys — فی سروس ایک کلید؛ باقاعدگی سے گھمائیں اور منسوخ کریں۔
آبجیکٹ اسٹوریج آپ کے باقی اسٹیک کے ساتھ قدرتی طور پر جڑ جاتا ہے: ایک بکٹ سے اثاثے پیش کریں جبکہ آپ کی سائٹ Skyline cloud hosting پر چلتی ہے، اور اپنے business email اور ڈیٹا بیسز کے بیک اپس کو ایک الگ، ورژن شدہ بکٹ میں رکھیں۔ مملکت میں آبجیکٹ اسٹوریج پر مزید گہری رہنمائی کے لیے، ہمارا object storage resource hub دیکھیں۔
منٹوں میں آغاز کریں
ایک S3 سے ہم آہنگ بکٹ شروع کریں جس کا ڈیٹا سعودی عرب کے اندر رکھا جائے، شفاف قیمتوں کے ساتھ، اور مقامی عربی معاونت کے ساتھ۔ اپنا مفت Skyline Cloud اکاؤنٹ بنائیں اور آج ہی اپنی پہلی بکٹ بنائیں۔
Comments
0 total · 0 threads