تثبيت أدوات السحابة الإلكترونية واستخدامها في PowerShell

1. نظرة عامة

PowerShell هي واجهة سطر أوامر ولغة برمجة نصية مرتبطة بها تستند إلى .NET Framework. وهي أداة تلقائية لتنفيذ المهام آليًا وإدارة عملية الإعداد تُستخدَم في نظام التشغيل Windows. أمر cmdlet في PowerShell هو أمر بسيط يتم استدعاؤه ضِمن PowerShell.

Cloud Tools for PowerShell هي مجموعة من البرامج الصغيرة للوصول إلى موارد Google Cloud ومعالجتها، مثل Google Compute Engine وGoogle Cloud Storage وGoogle Cloud SQL وGoogle Cloud DNS، وسيتم توفير المزيد من البرامج الصغيرة قريبًا.

اتّبِع الخطوات الواردة في هذه الميزة الاختبارية لمعرفة كيفية التفاعل مع موارد Google Cloud من PowerShell.

أهداف الدورة التعليمية

  • كيفية تثبيت Cloud Tools for PowerShell
  • كيفية المصادقة باستخدام Google Cloud SDK
  • كيفية إنشاء وإدارة Google Compute Engine من PowerShell
  • كيفية الاحتفاظ بنسخة احتياطية من البيانات في Google Cloud Storage من PowerShell

المتطلبات

  • مشروع Google Cloud Platform
  • متصفّح، مثل Chrome أو Firefox
  • جهاز Windows

كيف ستستخدم هذا البرنامج التعليمي؟

قراءة المحتوى فقط قراءة المحتوى وإكمال التمارين

ما هو تقييمك لتجربة استخدام Google Cloud Platform؟

مبتدئ متوسط متقدّم

2. الإعداد والمتطلبات

في هذا الدرس العملي، تحتاج إلى مشروع على Google Cloud للتفاعل مع PowerShell. إذا كان لديك مشروع حالي، يمكنك استخدامه أو إنشاء مشروع جديد باتّباع الخطوات التالية.

إعداد البيئة بالسرعة التي تناسبك

إذا لم يكن لديك حساب Google (Gmail أو GSuite)، عليك إنشاء حساب. سجِّل الدخول إلى Google Cloud Console ( console.cloud.google.com) وأنشِئ مشروعًا جديدًا:

aa2b71cbc7c28c59.png

60b154eb0fd9569a.png

تذكَّر رقم تعريف المشروع، وهو اسم فريد في جميع مشاريع Google Cloud Platform. سيتم الإشارة إليه لاحقًا في هذا الدرس العملي باسم PROJECT_ID.

بعد ذلك، عليك تفعيل الفوترة في Google Cloud Console من أجل استخدام موارد Google Cloud Platform، مثل Google Cloud Datastore وCloud Storage.

يمكن للمستخدمين الجدد في Google Cloud Platform الاستفادة من فترة تجريبية مجانية بقيمة 300 دولار أمريكي. لن تكلفك تجربة هذا الدرس التطبيقي حول الترميز أكثر من بضعة دولارات، ولكن قد تكون التكلفة أعلى إذا قررت استخدام المزيد من الموارد أو إذا تركتها قيد التشغيل (راجِع قسم "التنظيف" في نهاية هذا المستند).

3- تثبيت

تثبيت البيئة بالسرعة التي تناسبك

تتوفّر أوامر cmdlets في PowerShell كجزء من Cloud SDK لنظام التشغيل Windows. إذا لم يسبق لك إجراء ذلك، نزِّل وثبِّت Google Cloud SDK لنظام التشغيل Windows، كما هو موضّح في دليل البدء السريع لنظام التشغيل Windows. تأكَّد من تحديد خيار PowerShell عند تثبيت Cloud SDK.

d6df1af5b5b08e41.png

4. المصادقة

تستخدم Cloud Tools for PowerShell بيانات الاعتماد والإعدادات المخزّنة في Cloud SDK. لذا، لبدء استخدام وحدات cmdlets، عليك أولاً تسجيل الدخول باستخدام Cloud SDK.

المصادقة على البيئة الذاتية

ابدأ Google Cloud SDK Shell ونفِّذ الأمر التالي.

gcloud init

اقبَل خيار تسجيل الدخول باستخدام حساب المستخدم على Google.

To continue, you must log in. Would you like to log in (Y/n)? Y

في المتصفّح، سجِّل الدخول إلى حساب المستخدم على Google عندما يُطلب منك ذلك، ثم انقر على السماح لمنح الإذن بالوصول إلى موارد Google Cloud Platform.

في موجه الأوامر، اختَر مشروعًا على Cloud Platform من قائمة المشاريع التي لديك فيها أذونات المالك أو المحرّر أو المشاهد.

Pick a cloud project to use:
[1] [my-project-1]
[2] [my-project-2]
...
Please enter your numeric choice:

5- تشغيل أوامر Google Cloud الصغيرة ضمن PowerShell

بعد المصادقة، يمكنك استخدام وحدات cmdlets في Google Cloud ضمن PowerShell. ابحث عن وافتح واجهة سطر الأوامر PowerShell.

66b0c5d9b1cd7c68.png

للتأكّد من تثبيت Google Cloud cmdlets بشكلٍ صحيح، شغِّل cmdlet Get-GceInstance. يجب أن تعرض هذه القائمة آلات Compute Engine الافتراضية التي لديك في مشروعك.

3ffd420f66f76b06.png

6. إنشاء وإدارة آلات Google Compute Engine الافتراضية

في هذا القسم، يمكنك إنشاء Google Compute Engine وإدارته من داخل Google Cloud Tools for PowerShell.

إنشاء إعدادات مثيل

قبل إنشاء آلة افتراضية، يجب أولاً إنشاء إعدادات آلة افتراضية. يتطلّب ذلك على الأقل اسمًا ونوع الجهاز وصورة قرص تمهيد أو قرص تمهيد حالي. استخدِم Get-GceImage لإنشاء صورة قرص وNew-GceInstanceConfig لإنشاء إعداد.

$disk = Get-GceImage "windows-cloud" -Family "windows-2012-r2"
$config = New-GceInstanceConfig "my-vm-1" `
    -MachineType "n1-standard-4" `
    -DiskImage $disk

في هذه المرحلة، يتوفّر لديك إعداد يمكنك استخدامه لإنشاء مثيل.

إنشاء مثيل

استخدِم الأمر cmdlet Add-GceInstance لإنشاء آلة افتراضية جديدة في Compute Engine. يمكنك تحديد مشروع ومنطقة، ولكن في حال عدم تحديد ذلك، ستكون قيم المَعلمات تلقائية كما هي في إعدادات Cloud SDK النشطة الحالية. في حال تحديد مشروع، احرص على استبدال PROJECT_ID برقم تعريف مشروعك.

$config | Add-GceInstance -Project PROJECT_ID -Zone europe-west1-b

إدارة آلة افتراضية

يمكنك استخدام الأمر cmdlet Get-GceInstance لاسترداد مثيلات الأجهزة الافتراضية الخاصة بمشروع. بما أنّ اسم الآلة الافتراضية قد لا يكون فريدًا في جميع المشاريع أو المناطق، يمكنك تحديد مَعلمة "المشروع" أو "المنطقة" لتضييق نطاق البحث. تستخدم وحدة Cmdlet تلقائيًا أي قيم في إعدادات Cloud SDK النشطة.

$instance = Get-GceInstance "my-vm-1"

يمكنك ضبط علامات المثيل والأقراص وإعدادات الوصول والبيانات الوصفية الأخرى بعد إنشاء المثيل باستخدام الأمر الصغير Set-GceInstance. أضِف بعض البيانات الوصفية ثم أزِلها باتّباع الخطوات التالية.

Set-GceInstance $instance -AddMetadata @{"newKey" = "newValue"}
Set-GceInstance $instance -RemoveMetadata "newKey"
Set-GceInstance $instance -RemoveTag "beta" -AddTag "alpha"

الآن، أضِف علامة ستستخدمها لاحقًا لإزالة المثيل.

Set-GceInstance $instance -AddTag "to-be-removed"

يمكنك بدء مثيل أو إيقافه أو إعادة تشغيله باستخدام برامج cmdlets مختلفة. يمكنك الرجوع إلى مثيل باستخدام الاسم أو العنصر المكتوب بشكل صارم الذي تم إرجاعه من الأمر cmdlet Get-GceInstance. جرِّب بعض هذه الأوامر.

Stop-GceInstance $instance
Start-GceInstance $instance
Restart-GceInstance "my-vm-1"

أخيرًا، عند الانتهاء من المثيل، أزِله من Compute Engine باستخدام الأمر Remove-GceInstance وقدِّم العلامة التي حدّدتها سابقًا.

Get-GceInstance -Project $project |
    Where { $_.Tags.Items -contains "to-be-removed" } |
    Remove-GceInstance -WhatIf

7. الاحتفاظ بنسخة احتياطية من البيانات في Google Cloud Storage

في هذا الجزء من الدرس التطبيقي حول الترميز، ستحتفظ بنسخة احتياطية من البيانات من جهازك المحلي إلى Google Cloud Storage باستخدام "أدوات Cloud لنظام التشغيل PowerShell".

إنشاء حزمة

قبل تحميل الملفات إلى Cloud Storage، عليك إنشاء حزمة. استخدِم الأمر cmdlet New-GcsBucket لإنشاء حزمة جديدة.

$bucket = "my-gcs-bucket"
New-GcsBucket $bucket

تحميل الملفات إلى الحزمة

يمكنك استخدام New-GcsObject لتحميل ملف أو مجلدات كاملة إلى الحزمة.

يمكنك تحميل محتوى ملف محلي إلى Cloud Storage باستخدام المَعلمة -File وتحديد مسار الملف. بدلاً من ذلك، يمكنك تمرير محتويات العنصر كسلسلة من خلال مسار PowerShell، أو يمكنك استخدام المَعلمة -Value.

اختَر ملفًا محليًا على جهازك وحمِّله إلى الحزمة باتّباع الخطوات التالية.

New-GcsObject -Bucket "my-gcs-bucket" -File "C:\path\to\some\file\hello.txt"

يمكنك تحميل دليل كامل من القرص المحلي إلى Cloud Storage باستخدام المَعلمة -UploadFolder وتحديد مسار المجلد. إذا كنت لا تريد تحميل المجلد مباشرةً إلى جذر حزمة Cloud Storage، استخدِم -ObjectNamePrefix لتحديد بادئة سيتم تطبيقها على كل عنصر يتم تحميله.

اختَر مجلدًا محليًا على جهازك وحمِّله إلى الحزمة باتّباع الخطوات التالية.

New-GcsObject -Bucket "my-gcs-bucket" -Folder "C:\path\to\some\folder"

بيانات البحث

يمكنك البحث عن البيانات باستخدام برامج cmdlets أو باستخدام موفّر من خلال برامج cmdlets الشائعة للبحث عن الملفات. جرِّب الأمر التالي مع الحزمة.

Get-GcsObject $bucket | Select Name, Size | Out-GridView

من المفترض أن تظهر شبكة منبثقة تتضمّن الاسم والحجم.

59d92a6bfec86f89.png

قراءة البيانات

يمكنك استخدام الأمر cmdlet Read-GcsObject لقراءة البيانات. على سبيل المثال، يمكنك استخدام الأمر التالي لقراءة ملف باسم hello.txt على سطح المكتب.

Read-GcsObject $bucket "hello.txt" `
    -OutFile "$Env:UserProfile\Desktop\hello.txt"

حذف البيانات

أخيرًا وليس آخرًا، يمكنك حذف البيانات باستخدام الأمر cmdlet Remove-GcsObject. استخدِم الأمر التالي لحذف كل محتوى الحزمة.

Get-GcsObject $bucket | Remove-GcsObject

8. تهانينا!

في هذا الدرس التطبيقي حول الترميز، تعرّفت على كيفية إدارة مثيلات Compute Engine وحِزم Cloud Storage من PowerShell، ولكن هناك المزيد. يمكنك أيضًا إدارة موارد Cloud SQL وCloud CDN باستخدام PowerShell. اطّلِع على قائمة الخطوات التالية أدناه لمعرفة المزيد.

المواضيع التي تناولناها

  • كيفية تثبيت Cloud Tools for PowerShell
  • كيفية المصادقة باستخدام Google Cloud SDK
  • كيفية إنشاء وإدارة Google Compute Engine من PowerShell
  • كيفية الاحتفاظ بنسخة احتياطية من البيانات في Google Cloud Storage من PowerShell

الخطوات التالية