إدارة الموارد السحابية
أتمتوا نشر الموارد السحابية وتحديثها (مثل AWS وAzure وGCP) باستخدام مبادئ IaC وGitHub Actions.
إدارة الموارد السحابية درس مجاني في DevOps Bootcamp على CoddyKit. هذا هو الدرس 2 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في DevOps Bootcamp، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة DevOps Bootcamp 4 دروس في المجموع.
مقدمة إلى أتمتة موارد السحابة
مرحبًا! في هذا الدرس، سنستكشف كيفية أتمتة نشر موارد السحابة وتحديثها باستخدام مبادئ البنية التحتية كرمز (IaC) وGitHub Actions.
قد تكون إدارة موارد السحابة يدويًا بطيئة وعرضة للأخطاء. وتضمن الأتمتة الاتساق والسرعة.
لماذا GitHub Actions لـ IaC السحابية؟
يوفر GitHub Actions منصة قوية لأتمتة مهام البنية التحتية السحابية. وإليك أسباب ملاءمته الكبيرة لهذا الغرض:
- التحكم في الإصدارات: توجد التعليمات البرمجية لبنيتك التحتية إلى جانب التعليمات البرمجية لتطبيقك.
- الأتمتة: شغّل عمليات النشر تلقائيًا عند تغيّر التعليمات البرمجية.
- الشفافية: اعرض حالة النشر مباشرةً في GitHub.
- التكامل: يتصل بسهولة بموفري الخدمات السحابية الرئيسيين.
الاتصال بموفر السحابة
لإدارة موارد السحابة، يحتاج GitHub Actions إلى إذن للتفاعل مع موفر السحابة، مثل AWS أو Azure أو GCP وغير ذلك. ويتم ذلك عادةً من خلال:
- مفاتيح الوصول/كيانات الخدمة: بيانات اعتماد للوصول البرمجي.
- OpenID Connect (OIDC): طريقة مصادقة أكثر أمانًا ولا تتطلب مفاتيح.
سنركّز في هذا الدرس على استخدام بيانات الاعتماد بأمان.
تخزين بيانات اعتماد السحابة بأمان
لا تضع بيانات الاعتماد الحساسة مباشرةً في ملفات سير العمل. يوفر GitHub Actions أسرارًا لهذا الغرض.
الأسرار متغيرات بيئة مشفّرة يمكنك الوصول إليها في أسِرّة العمل. ولا تظهر هذه الأسرار في السجلات.
- انتقل إلى
Settingsفي مستودعك. - انتقل إلى
Secrets and variables>Actions. - انقر على
New repository secretلإضافة مفاتيح الوصول إلى السحابة.
بنية سير عمل أساسية لنشر IaC
يتضمن سير عمل GitHub Actions نموذجي لـ IaC خطوات من أجل:
- سحب التعليمات البرمجية: الحصول على ملفات IaC الخاصة بك.
- إعداد بيانات الاعتماد: إعداد متغيرات البيئة لموفر السحابة.
- تثبيت أداة IaC: مثل AWS CLI أو Azure CLI أو Terraform أو Pulumi.
- تشغيل أوامر IaC: تخطيط الموارد أو تطبيقها أو تدميرها.
لنلقِ نظرة على مثال عام.
سير عمل عام لتطبيق تغييرات السحابة
يوضح سير العمل هذا بنية تطبيق تغييرات IaC. وهو قالب ستعدّله بما يناسب السحابة وأداة IaC المحددتين لديك.
لاحظ كيفية استخدام secrets.AWS_ACCESS_KEY_ID للوصول إلى سر مخزّن.
name: Deploy Cloud Resources
on: push
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: us-east-1
- name: Run IaC Apply Command
run: |
# Replace with your actual IaC tool command (e.g., terraform apply, aws cloudformation deploy)
echo "Running cloud resource deployment..."
# aws s3 mb s3://my-unique-coddykit-bucket-123
مثال: نشر حاوية AWS S3
إليك مثالًا بسيطًا يستخدم AWS CLI لإنشاء حاوية S3. يوضح هذا المثال كيفية دمج الأوامر الخاصة بالسحابة في سير العمل.
تذكّر استبدال my-unique-coddykit-bucket-123 باسم حاوية فريد عالميًا إذا أردت تجربته!
name: Deploy S3 Bucket
on: push
jobs:
create-s3:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: us-east-1
- name: Create S3 Bucket
run: |
aws s3 mb s3://my-unique-coddykit-bucket-123
echo "S3 bucket created successfully!"
مثال: نشر مجموعة موارد Azure
وبالمثل، ستستخدم Azure CLI مع Azure. يسجّل سير العمل هذا الدخول إلى Azure وينشئ مجموعة موارد.
ستحتاج إلى إعداد AZURE_CLIENT_ID وAZURE_TENANT_ID وAZURE_SUBSCRIPTION_ID كأسرار في GitHub، وغالبًا باستخدام كيان خدمة.
name: Deploy Azure Resource Group
on: push
jobs:
create-rg:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Azure Login
uses: azure/login@v1
with:
client-id: ${{ secrets.AZURE_CLIENT_ID }}
tenant-id: ${{ secrets.AZURE_TENANT_ID }}
subscription-id: ${{ secrets.AZURE_SUBSCRIPTION_ID }}
- name: Create Azure Resource Group
run: |
az group create --name coddykit-rg --location eastus
echo "Azure Resource Group created!"
إدارة التحديثات وعمليات التراجع
بعد نشر الموارد، ستحتاجون إلى إدارة التحديثات. باستخدام IaC وGitHub Actions، يعني ذلك ما يلي:
- تحديث ملفات IaC: عدّلوا إعداداتكم، مثل إضافة مثيل EC2 جديد.
- دفع التغييرات: نفّذوا commit ثم ادفعوا التغييرات إلى مستودعكم.
- النشر المؤتمت: يبدأ سير العمل ويطبّق التحديثات.
أما للتراجع، فعادةً ما تعيدون ملفات IaC إلى إصدار سابق، ثم تعيدون تشغيل عملية النشر.
اختبار إدارة السحابة الآمنة
عند أتمتة إدارة موارد السحابة باستخدام GitHub Actions، ما الطريقة الأكثر أمانًا للتعامل مع بيانات اعتماد السحابة الحساسة؟
مراجعة: إدارة موارد السحابة
لقد تعلمتم كيف يمكن لـ GitHub Actions أتمتة نشر موارد السحابة وتحديثها باستخدام مبادئ IaC.
- يوفّر GitHub Actions منصة قوية لأتمتة IaC.
- تُعدّ GitHub Secrets أساسية لإدارة بيانات اعتماد السحابة بأمان.
- تدمج مسارات سير العمل واجهات سطر الأوامر الخاصة بالسحابة (AWS CLI وAzure CLI) للتفاعل مع موفّري الخدمات.
- تُدار التحديثات بتغيير ملفات IaC والسماح لسير العمل بإعادة تطبيقها.
واصلوا التدريب لبناء مسارات سحابية مؤتمتة!
الأسئلة الشائعة
هل درس «إدارة الموارد السحابية» مجاني؟
نعم — نص درس «إدارة الموارد السحابية» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة DevOps Bootcamp، انتقل إلى CoddyKit PRO. تتضمن دورة DevOps Bootcamp 4 دروس في المجموع.
ماذا ستتعلم في «إدارة الموارد السحابية»؟
أتمتوا نشر الموارد السحابية وتحديثها (مثل AWS وAzure وGCP) باستخدام مبادئ IaC وGitHub Actions. تتمرن على DevOps Bootcamp مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ DevOps Bootcamp؟
لا تُشترط خبرة سابقة. DevOps Bootcamp على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 2 من أصل 4.
كم من الوقت يستغرق درس «إدارة الموارد السحابية»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس DevOps Bootcamp هذا؟
نعم. كل درس في DevOps Bootcamp يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- IaC باستخدام Terraform وGitHub Actions
- إدارة الموارد السحابية
- أتمتة تحديثات البنية التحتية
- إدارة حالة Terraform والواجهات الخلفية البعيدة