دليل مستخدم Condensa
المقدمة
Condensa هو أداة قوية لترحيل الأجهزة الافتراضية، مصممة لتسهيل ترحيل الأجهزة الافتراضية من منصات متعددة (VMware، Nutanix، Sangfor، Windows Server) إلى منصة Awanio السحابية. تدعم الأداة أساليب ترحيل متعددة تشمل الترحيل الساخن (للأجهزة الافتراضية قيد التشغيل)، والترحيل البارد، والترحيل المعتمد على الملفات باستخدام صيغتَي OVA وVHD/VHDX.
الميزات الرئيسية
- الترحيل الساخن: ترحيل الأجهزة الافتراضية قيد التشغيل مع تقليص وقت التوقف إلى أدنى حد (لـ VMware فحسب)
- دعم مزودين متعددين: VMware vSphere، وملفات OVA، وملفات VHD/VHDX
- تتبع الكتل المتغيرة (CBT): نقل بيانات تزايدي فعّال لبيئات VMware
- واجهة مستخدم عبر الويب: واجهة سهلة الاستخدام لإدارة عمليات الترحيل
- تتبع التقدم في الوقت الفعلي: مراقبة حالة الترحيل وتقدمه
التثبيت
المتطلبات الأساسية
قبل تثبيت Condensa، تأكد من توافر ما يلي:
Awanio Dashboard
- يجب استخدام حساب مستخدم يتمتع بصلاحية الوصول إلى لوحة التحكم
Helm (الإصدار 3.0 أو أعلى)
bash# Install Helm if not already installed curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bashStorage Pool مُهيَّأ في Awanio Dashboard الخاص بك
الوصول إلى Awanio API
- عنوان URL لنقطة نهاية API (مثال:
https://192.168.1.2/v2) - بيانات اعتماد صالحة للمصادقة
- عنوان URL لنقطة نهاية API (مثال:
التثبيت عبر Helm
إضافة مستودع Condensa Helm:
bashhelm repo add condensa https://storage.awan.io/assets/charts helm repo updateإنشاء ملف قيم (
condensa-values.yaml):yaml# REQUIRED: Public URL for Condensa (must be accessible by CDI for data imports) publicUrl: "http://condensa.example.com:8080" # REQUIRED: Awanio API configuration awanio: apiEndpoint: "https://192.168.1.2/v2" username: "your-username" password: "your-password" # Image configuration image: repository: registry.awan.io/images/condensa tag: latest pullPolicy: IfNotPresent # Service configuration service: type: LoadBalancer # or NodePort, ClusterIP port: 8080 # Storage configuration persistence: enabled: true storageClass: "standard" # Your storage class size: 100Gi # Storage for uploaded OVA/VHD files # Resource limits resources: requests: memory: "512Mi" cpu: "500m" limits: memory: "2Gi" cpu: "2000m" # Upload directory configuration uploadDir: "/data/uploads" # Namespace for VM migrations migrationNamespace: "vm-migrations"تثبيت Condensa:
bash# Create namespace kubectl create namespace condensa # Install with custom values helm install condensa condensa/condensa \ --namespace condensa \ --values condensa-values.yamlالتحقق من التثبيت:
bash# Check pod status kubectl get pods -n condensa # Check service kubectl get svc -n condensa # Get the external IP/URL kubectl get svc condensa -n condensa -o jsonpath='{.status.loadBalancer.ingress[0].ip}'الوصول إلى واجهة المستخدم عبر الويب:
افتح المتصفح وانتقل إلى عنوان URL الخاص بـ Condensa:
http://<external-ip>:8080
خيارات الإعداد
| المعامل | الوصف | القيمة الافتراضية | مطلوب |
|---|---|---|---|
publicUrl | عنوان URL العام يمكن الوصول إليه من CDI | - | نعم |
awanio.apiEndpoint | نقطة نهاية Awanio API | - | نعم |
awanio.username | اسم مستخدم Awanio | - | نعم |
awanio.password | كلمة مرور Awanio | - | نعم |
persistence.enabled | تفعيل التخزين الدائم | true | لا |
persistence.size | حجم التخزين للرفع | 100Gi | لا |
service.type | نوع الخدمة | LoadBalancer | لا |
uploadDir | الدليل المخصص لرفع الملفات | /data/uploads | لا |
إعداد الأجهزة الافتراضية المصدر
يُعدّ الإعداد الصحيح للأجهزة الافتراضية المصدر أمرًا بالغ الأهمية لضمان نجاح عملية الترحيل. تتباين المتطلبات بحسب نوع المزوّد.
أجهزة VMware الافتراضية
لبيئات VMware vSphere، ولا سيما عند إجراء الترحيل الساخن (ترحيل الأجهزة الافتراضية قيد التشغيل):
المتطلبات الأساسية
- VMware vSphere 6.0 أو إصدار أحدث
- إصدار عتاد الجهاز الافتراضي 8 أو أعلى
- صلاحية المسؤول للوصول إلى vCenter
- البصمة الرقمية (Thumbprint)، وهي بصمة SSL (SHA1) للخادم البعيد VMware، وهي مطلوبة عند إنشاء اتصال عن بُعد.
يطبع الأمر التالي بصمة خادم VMware المسمى SERVER-NAME:
openssl s_client -connect SERVER-NAME:443 </dev/null |
openssl x509 -in /dev/stdin -fingerprint -sha1 -nooutتفعيل تتبع الكتل المتغيرة (CBT)
تنبيه مهم: يجب تفعيل CBT قبل إنشاء لقطات الحالة (Snapshots) للترحيل.
الاتصال بـ vCenter باستخدام vSphere Client
إيقاف تشغيل الجهاز الافتراضي (إن كان قيد التشغيل):
Right-click VM → Power → Shut Down Guest OSتفعيل CBT:
- انقر بزر الماوس الأيمن على الجهاز الافتراضي ← Edit Settings
- انقر على تبويب "VM Options"
- وسّع قسم "Advanced"
- انقر على "Edit Configuration"
- أضف المعامل التالي:
ctkEnabled = true - انقر OK للحفظ
تشغيل الجهاز الافتراضي:
Right-click VM → Power → Power Onإنشاء لقطة حالة (مطلوب بعد تفعيل CBT):
Right-click VM → Snapshots → Take Snapshot Name: "Pre-Migration Snapshot" Description: "Snapshot for Condensa migration with CBT enabled"⚠️ تحذير حرج: يجب إنشاء لقطة الحالة بعد تفعيل CBT حتمًا. فاللقطات المنشأة قبل تفعيل CBT ستؤدي إلى فشل الترحيل.
التحقق من تفعيل CBT:
- تحقق من ملفات
.vmdkالخاصة بالجهاز الافتراضي - يجب أن ترى ملفات
-ctk.vmdkلكل قرص
- تحقق من ملفات
أفضل الممارسات لـ VMware
- تأكد من تثبيت VM Tools وتحديثها
- احذف اللقطات غير الضرورية قبل الترحيل
- تحقق من الاتصال الشبكي بين Condensa وvCenter
- للأجهزة الافتراضية ذات الحجم الكبير، فكّر في جدولة الترحيل خلال نوافذ الصيانة
أجهزة Nutanix الافتراضية (تصدير OVA)
لترحيل الأجهزة الافتراضية من Nutanix AHV:
الوصول إلى Nutanix Prism:
https://<nutanix-cluster-ip>:9440إعداد الجهاز الافتراضي:
- أوقف تشغيل الجهاز الافتراضي بصورة سليمة
- احذف أي لقطات حالة غير ضرورية
- دوّن مواصفات الجهاز الافتراضي (وحدة المعالجة المركزية، الذاكرة، الأقراص)
التصدير بصيغة OVA:
أ. باستخدام Nutanix Move (موصى به):
- ثبّت Nutanix Move على جهاز Windows/Linux
- هيّئ المصدر بوصفه Nutanix AHV
- اختر الأجهزة الافتراضية المراد تصديرها
- اختر خيار "Export to OVA"
- احفظ الملف في الدليل المحلي
ب. باستخدام acli (Nutanix CLI):
bash# SSH to Nutanix CVM ssh nutanix@<cvm-ip> # List VMs acli vm.list # Export VM acli vm.export <vm-name> format=ova path=/tmp/<vm-name>.ova # Download the OVA file scp nutanix@<cvm-ip>:/tmp/<vm-name>.ova .التحقق من ملف OVA:
bash# Check OVA contents tar -tvf <vm-name>.ova # Should contain: # - .ovf file (VM descriptor) # - .vmdk file(s) (Virtual disks) # - .mf file (Manifest)
أجهزة Sangfor الافتراضية (تصدير OVA)
لترحيل الأجهزة الافتراضية من Sangfor HCI:
الوصول إلى وحدة تحكم Sangfor HCI:
https://<sangfor-hci-ip>إعداد الجهاز الافتراضي:
- أوقف تشغيل الجهاز الافتراضي من وحدة تحكم Sangfor
- احذف اللقطات إن وُجدت
- وثّق إعداد الجهاز الافتراضي
عملية التصدير:
أ. انتقل إلى قسم Virtual Machines
ب. اختر الجهاز الافتراضي المستهدف
ج. انقر على More Actions ← Export
د. اختر صيغة التصدير:
- اختر صيغة "OVA"
- أدرج جميع الأقراص
- أدرج إعداد الجهاز الافتراضي
هـ. ابدأ التصدير:
Export Location: Local Computer or Network Share Format: OVA 1.0 Compression: None (for better compatibility)و. نزّل ملف OVA المُصدَّر
التحقق بعد التصدير:
bash# Verify OVA integrity sha256sum <vm-name>.ova # Extract and check OVF descriptor tar -xf <vm-name>.ova *.ovf cat *.ovf # Review VM specifications
أجهزة Windows Server الافتراضية (تصدير VHD/VHDX)
لترحيل الأجهزة الافتراضية من Hyper-V على Windows Server:
من Windows Server 2012/2016/2019/2022
فتح Hyper-V Manager:
powershell# Run as Administrator virtmgmt.mscإعداد الجهاز الافتراضي:
powershell# Stop the VM Stop-VM -Name "VMName" # Remove checkpoints (snapshots) Get-VMSnapshot -VMName "VMName" | Remove-VMSnapshotتصدير الجهاز الافتراضي:
الطريقة الأولى: استخدام واجهة Hyper-V Manager الرسومية
- انقر بزر الماوس الأيمن على الجهاز الافتراضي ← Export
- اختر موقع التصدير
- انتظر اكتمال عملية التصدير
الطريقة الثانية: استخدام PowerShell
powershell# Export entire VM Export-VM -Name "VMName" -Path "C:\VMExports" # Or export just the VHD/VHDX $vm = Get-VM -Name "VMName" $vhd = Get-VMHardDiskDrive -VM $vm Copy-Item $vhd.Path -Destination "C:\VMExports\VMName.vhdx"تحويل VHDX إلى VHD عند الحاجة (لضمان التوافق):
powershellConvert-VHD -Path "C:\VMExports\VMName.vhdx" ` -DestinationPath "C:\VMExports\VMName.vhd" ` -VHDType Dynamicإعداد ملف البيانات الوصفية (إنشاء
vm-info.json):json{ "name": "VMName", "os_family": "windows", "os_version": "Windows Server 2019", "cpu": 4, "memory_mb": 8192, "disk_size_gb": 100, "architecture": "x86_64" }
من Azure Stack HCI
# Connect to cluster
Enter-PSSession -ComputerName <cluster-node>
# Export VM
Export-VM -Name "VMName" -Path "\\share\exports"
# Or use Windows Admin Center for GUI exportإعداد المزودين
المزودون هم المنصات المصدر التي سيجري ترحيل الأجهزة الافتراضية منها. يتطلب كل نوع مزوّد إعدادًا محددًا.
مزوّد VMware
تسجيل الدخول إلى واجهة Condensa عبر الويب
الانتقال إلى Providers:
- انقر على "Providers" في القائمة الرئيسية
- انقر على زر "Add Provider"
إعداد مزوّد VMware:
yamlProvider Type: VMware vSphere Name: vcenter-prod Description: Production vCenter Server Connection Details: - vCenter URL: https://vcenter.example.com - Username: administrator@vsphere.local - Password: ******** - Allow Insecure: No (uncheck for production) Advanced Settings: - Port: 443 - Datacenter: Datacenter-01 (optional, for filtering) - Concurrent Transfers: 4اختبار الاتصال:
- انقر على "Test Connection"
- تحقق من نجاح الاتصال
- راجع الموارد المكتشفة
حفظ المزوّد:
- انقر على "Save"
- يجب أن يعرض المزوّد حالة "Connected"
مزوّد OVA
يُعالج مزوّد OVA عمليات الترحيل المعتمدة على الملفات باستخدام ملفات OVA.
الانتقال إلى Providers ← Add Provider
إعداد مزوّد OVA:
yamlProvider Type: OVA Name: ova-imports Description: OVA File Imports Settings: - Upload Directory: /data/uploads/ova - Max File Size: 500GB - Supported Formats: .ova, .ovfرفع ملفات OVA:
الخيار الأول: الرفع عبر واجهة الويب
- انقر على زر "Upload OVA"
- اختر ملف OVA من النظام المحلي
- أضف البيانات الوصفية للجهاز الافتراضي:yaml
VM Name: imported-vm-01 OS Type: Ubuntu Linux 20.04 CPUs: 4 Memory: 8192 MB - انقر على "Upload"
الخيار الثاني: الرفع عبر CLI (للملفات الكبيرة)
bash# Copy to Condensa pod kubectl cp large-vm.ova condensa/condensa-pod:/data/uploads/ova/ # Or use curl curl -X POST http://condensa.example.com:8080/api/v1/ova/upload \ -H "Authorization: Bearer <token>" \ -F "file=@large-vm.ova" \ -F "metadata=@vm-info.json"التحقق من الرفع:
- تحقق من قسم "OVA Uploads"
- تحقق من سلامة الملف
- راجع مواصفات الجهاز الافتراضي المستخرجة
مزوّد VHD/VHDX
يُعالج مزوّد VHD عمليات الترحيل من تصديرات Hyper-V.
الانتقال إلى Providers ← Add Provider
إعداد مزوّد VHD:
yamlProvider Type: VHD Name: hyperv-imports Description: Hyper-V VHD Imports Settings: - Upload Directory: /data/uploads/vhd - Supported Formats: .vhd, .vhdx, .avhdx - Auto-convert VHDX: Yesرفع ملفات VHD:
الخطوة الأولى: رفع VHD/VHDX
bash# Web UI for small files (<10GB) Navigate to "VHD Uploads" → "Upload VHD" # For large files, use resumable upload curl -X POST http://condensa.example.com:8080/api/v1/vhd/uploads \ -H "Content-Type: application/json" \ -d '{ "filename": "windows-server.vhdx", "vm_name": "WinServer2019", "os_family": "windows", "os_version": "Windows Server 2019", "num_cpu": 4, "memory_mb": 16384, "disk_size_gb": 200, "architecture": "x86_64" }'الخطوة الثانية: استخدام بروتوكول TUS لرفع الملفات الكبيرة
bash# Install tus client npm install -g tus-js-client # Upload using resumable protocol tus-upload windows-server.vhdx \ --endpoint http://condensa.example.com:8080/api/v1/tus \ --metadata filename=d2luZG93cy1zZXJ2ZXIudmhkeA==,vm_id=<vm-uuid>التحقق من رفع VHD:
- تحقق من حالة المعالجة
- تحقق من توافق صيغة القرص
- راجع مواصفات الجهاز الافتراضي
إنشاء عمليات الترحيل وتشغيلها
بعد إعداد المزودين وتجهيز الأجهزة الافتراضية المصدر، يمكنك إنشاء عمليات الترحيل وتنفيذها.
إنشاء عملية ترحيل
الانتقال إلى Migrations ← Create Migration
الإعداد الأساسي:
yamlMigration Name: prod-to-awanio-batch1 Description: Production VMs migration batch 1 Source Provider: vcenter-prod (or ova-imports, hyperv-imports) Target Namespace: vm-migrations Organization: My Organizationاختيار الأجهزة الافتراضية:
لمزوّد VMware:
- تصفح الأجهزة الافتراضية المتاحة
- استخدم عوامل التصفية:
- مركز البيانات (Datacenter)
- المجلد (Folder)
- حالة التشغيل (Power State)
- نوع نظام التشغيل (OS Type)
- اختر الأجهزة الافتراضية المراد ترحيلها
- راجع تفاصيل الجهاز الافتراضي (وحدة المعالجة المركزية، الذاكرة، الأقراص)
لمزوّد OVA:
- اختر من ملفات OVA المرفوعة
- تحقق من حالة "Ready"
- راجع المواصفات المستخرجة
لمزوّد VHD:
- اختر من ملفات VHD المرفوعة
- تحقق من حالة "Processed"
- تأكد من توافق نظام التشغيل
إعدادات الترحيل:
yamlMigration Type: - Hot Migration (VMware only, VM stays running) - Cold Migration (VM powered off first) Network Mapping: - Source Network: VM Network → Target Network: default - Source Network: Management → Target Network: mgmt-net Storage Settings: - Storage Class: fast-ssd - Volume Mode: Filesystem - Access Mode: ReadWriteOnce Advanced Options: - Preserve MAC Addresses: Yes - Start VM after Migration: No - Delete Source after Success: Noالمراجعة والإنشاء:
- راجع ملخص الترحيل
- تحقق من متطلبات الموارد
- انقر على "Create Migration"
بدء عملية الترحيل
عرض تفاصيل الترحيل:
Migrations → Select Migration → View Detailsالفحوصات الأولية:
- تحقق من الاتصال بالمصدر
- تأكد من وجود فضاء الأسماء (Namespace) المستهدف
- تحقق من توفر مساحة التخزين
- راجع تعيينات الشبكة
بدء الترحيل:
الخيار الأول: واجهة الويب
- انقر على زر "Start Migration"
- أكّد الإجراء في مربع الحوار
الخيار الثاني: CLI
bashcurl -X POST http://condensa.example.com:8080/api/v1/migrations/<id>/start \ -H "Authorization: Bearer <token>"مراحل الترحيل:
المرحلة الأولى: التجهيز
- إنشاء فضاء الأسماء المستهدف
- إعداد DataVolumes
- تهيئة مهام النقل
المرحلة الثانية: نقل البيانات
- لـ VMware: نقل VDDK مع CBT
- لـ OVA/VHD: الاستيراد عبر HTTP بواسطة CDI
- عرض التقدم في الوقت الفعلي
المرحلة الثالثة: التحويل
- تحويل الأقراص إلى QCOW2
- تطبيق تحسينات نظام التشغيل
- إعداد برامج التشغيل
المرحلة الرابعة: إنشاء الجهاز الافتراضي
- إنشاء VirtualMachine CR
- إعداد الشبكات
- تطبيق حدود الموارد
المرحلة الخامسة: التحقق
- التحقق من إنشاء الجهاز الافتراضي
- فحص ارتباطات الأقراص
- التحقق من صحة الإعداد
مراقبة التقدم
التقدم في الوقت الفعلي:
- عرض نسبة التقدم الإجمالية
- مراقبة حالة كل جهاز افتراضي على حدة
- فحص معدلات نقل البيانات
- عرض السجلات في الوقت الفعلي
مؤشرات التقدم:
Overall Progress: 45% VMs Status: - vm-web-01: ✓ Completed (100%) - vm-app-01: ⟳ Transferring (67%) - vm-db-01: ⏸ Queuedعرض السجلات:
bash# View migration logs kubectl logs -n condensa condensa-pod -f # View specific VM transfer kubectl get datavolume -n vm-migrations vm-web-01-disk-0 -o yamlالإشعارات:
- تنبيهات البريد الإلكتروني عند الاكتمال
- إشعارات Webhook
- تكامل مع Slack (إن كان مُهيَّأ)
استكشاف الأخطاء وإصلاحها
المشكلات الشائعة وحلولها
فشل ترحيل VMware
المشكلة: خطأ "CBT not enabled"
الحل:
1. تفعيل CBT على الجهاز الافتراضي المصدر
2. إنشاء لقطة حالة جديدة بعد تفعيل CBT
3. إعادة محاولة الترحيلالمشكلة: "Cannot connect to vCenter"
الحل:
1. التحقق من الاتصال الشبكي
2. فحص قواعد جدار الحماية (المنفذ 443)
3. التحقق من بيانات الاعتماد
4. تجربة "Allow Insecure" عند استخدام شهادات موقّعة ذاتيًاالمشكلة: "Snapshot not found"
الحل:
1. إنشاء لقطة حالة على الجهاز الافتراضي المصدر
2. انتظار دمج اللقطة
3. تحديث اتصال المزوّدمشكلات رفع OVA
المشكلة: "Invalid OVF descriptor"
الحل:
1. التحقق من سلامة ملف OVA:
tar -tvf vm.ova
2. استخراج OVF والتحقق منه:
tar -xf vm.ova *.ovf
xmllint --noout *.ovf
3. إعادة التصدير من المصدر في حالة التلفالمشكلة: "Unsupported disk format"
الحل:
1. تحويل القرص إلى صيغة مدعومة:
qemu-img convert -f vmdk -O qcow2 disk.vmdk disk.qcow2
2. إعادة تعبئة OVA مع القرص المحوَّلمشكلات رفع VHD
المشكلة: "VHD file corrupted"
الحل:
1. التحقق من مجموع اختباري للملف
2. إعادة التصدير من Hyper-V
3. محاولة تحويل VHDX إلى VHD:
Convert-VHD -Path source.vhdx -DestinationPath dest.vhdالمشكلة: "Metadata missing"
الحل:
1. إنشاء vm-info.json بالحقول المطلوبة
2. رفع البيانات الوصفية مع VHD
3. أو التحديث عبر API بعد الرفعتوقف DataVolume
المشكلة: DataVolume في حالة "Pending"
# Check DataVolume status
kubectl describe datavolume -n vm-migrations <dv-name>
# Common solutions:
1. Check PVC bound status
2. Verify storage class exists
3. Check available storage capacity
4. Review CDI pod logs:
kubectl logs -n cdi deployment/cdi-deploymentمشكلات أداء الترحيل
بطء معدلات النقل
الحلول:
1. تفعيل النقل المتوازي (VMware)
2. زيادة حدود موارد CDI
3. استخدام فئة تخزين أسرع
4. فحص عرض نطاق الشبكة
5. الجدولة خلال ساعات انخفاض الحملأوامر تشخيص الأخطاء
# Check Condensa logs
kubectl logs -n condensa deployment/condensa -f
# Check migration status
curl http://condensa.example.com:8080/api/v1/migrations/<id>/status
# Check DataVolume progress
kubectl get datavolume -n vm-migrations -w
# Check CDI importer pods
kubectl get pods -n vm-migrations | grep importer
# View importer logs
kubectl logs -n vm-migrations <importer-pod-name>
# Check events
kubectl get events -n vm-migrations --sort-by='.lastTimestamp'أفضل الممارسات
ما قبل الترحيل
تخطيط السعة:
- التحقق من توفر مساحة تخزين كافية في المجموعة المستهدفة
- التخطيط لمضاعفة مساحة القرص خلال عملية التحويل
- مراعاة متطلبات عرض نطاق الشبكة
إعداد الأجهزة الافتراضية:
- تحديث أدوات وبرامج تشغيل الأجهزة الافتراضية
- حذف الملفات غير الضرورية
- دمج لقطات الحالة
- توثيق تبعيات الأجهزة الافتراضية
الاختبار:
- البدء بالأجهزة الافتراضية غير الحرجة
- التحقق من عملية الترحيل من البداية إلى النهاية
- توثيق إجراءات الاسترداد
أثناء الترحيل
المعالجة الدُّفعية:
- ترحيل الأجهزة الافتراضية في مجموعات منطقية
- البدء بأحمال العمل الأقل أهمية
- مراقبة استخدام الموارد
اعتبارات الشبكة:
- استخدام شبكة مخصصة للترحيل إن أمكن
- تهيئة حدود عرض النطاق الترددي المناسبة
- التخطيط لنوافذ صيانة الشبكة
المراقبة:
- مراقبة معدلات النقل
- مراقبة حمل النظام المصدر
- فحص موارد المجموعة المستهدفة
ما بعد الترحيل
التحقق:
- التحقق من عمل الأجهزة الافتراضية
- اختبار اتصال التطبيقات
- التحقق من مقاييس الأداء
التنظيف:
- حذف DataVolumes الخاصة بعمليات الترحيل الناجحة
- تنظيف لقطات حالة المصدر
- أرشفة سجلات الترحيل
التوثيق:
- توثيق مشكلات الترحيل
- تحديث دفاتر التشغيل
- تسجيل مقاييس الأداء
اعتبارات الأمان
بيانات الاعتماد:
- استخدام حسابات الخدمة للمزودين
- تدوير بيانات الاعتماد بصفة منتظمة
- تطبيق سياسات RBAC
أمان الشبكة:
- استخدام TLS لجميع الاتصالات
- تطبيق سياسات الشبكة
- تقييد الوصول إلى Condensa
حماية البيانات:
- تشفير البيانات أثناء النقل
- تأمين أدلة الرفع
- تطبيق سياسات الاحتفاظ بالبيانات
الملحق
الإعدادات المدعومة
| المنصة المصدر | نوع الترحيل | المتطلبات |
|---|---|---|
| VMware vSphere 6.0+ | ساخن/بارد | CBT، لقطات الحالة |
| Nutanix AHV | تصدير OVA | OVA 1.0/2.0 |
| Sangfor HCI | تصدير OVA | OVA 1.0 |
| Hyper-V 2012+ | تصدير VHD | VHD/VHDX |
| Azure Stack HCI | تصدير VHD | VHD/VHDX |
مرجع API
نقاط نهاية API الرئيسية للأتمتة:
# Provider Management
GET /api/v1/providers
POST /api/v1/providers
DELETE /api/v1/providers/{id}
# Migration Management
GET /api/v1/migrations
POST /api/v1/migrations
POST /api/v1/migrations/{id}/start
POST /api/v1/migrations/{id}/cancel
GET /api/v1/migrations/{id}/status
# Upload Management
POST /api/v1/ova/upload
POST /api/v1/vhd/uploads
GET /api/v1/uploads/statusمتغيرات البيئة
إعداد Condensa باستخدام متغيرات البيئة:
CONDENSA_PUBLIC_URL=http://condensa.example.com:8080
CONDENSA_UPLOAD_DIR=/data/uploads
AWANIO_API=https://api.awanio.com/v2
DB_PATH=/data/condensa.db
PORT=8080الدعم والموارد
- التوثيق: https://gitlab.com/awan.io/condensa
- متتبع المشكلات: https://gitlab.com/awan.io/condensa/issues
- الدعم المجتمعي: support@awan.io
- الدعم المؤسسي: متاح مع اشتراك Awanio
آخر تحديث: 2025الإصدار: 0.1.0