أداة لإخضاع موارد Azure الحالية لإدارة Terraform.
يقوم Azure Export for Terraform بتصدير الموارد المدعومة إلى حالة Terraform وإنشاء تكوين Terraform المقابل. من المتوقع أن تكون كل من حالة Terraform وتكوينها متسقين مع الحالة البعيدة للموارد، أي أن terraform plan
لا تظهر أي اختلاف. يستطيع المستخدم بعد ذلك استخدام Terraform لإدارة هذه الموارد.
وهو يدعم كلاً من موفر Terraform AzureRM وموفر Terraform AzAPI.
ليس المقصود من تكوينات Terraform التي تم إنشاؤها بواسطة aztfexport
أن تكون شاملة ولا تضمن إمكانية إعادة إنتاج البنية التحتية بالكامل من التكوينات التي تم إنشاؤها المذكورة. لمزيد من التفاصيل، يرجى الاطلاع على القيود).
الثنائيات المترجمة مسبقًا وWindow MSI متوفرة في الإصدارات.
go install github.com/Azure/aztfexport@latest
winget install aztfexport
brew install aztfexport
الإصدارات المدعومة:
استيراد مفتاح مستودع Microsoft:
rpm --import https://packages.microsoft.com/keys/microsoft.asc
إضافة مستودع packages-microsoft-com-prod
:
ver=8 # or 9
dnf install -y https://packages.microsoft.com/config/rhel/${ver}/packages-microsoft-prod.rpm
ثَبَّتَ:
dnf install aztfexport
الإصدارات المدعومة:
استيراد مفتاح مستودع Microsoft:
curl -sSL https://packages.microsoft.com/keys/microsoft.asc > /etc/apt/trusted.gpg.d/microsoft.asc
إضافة مستودع packages-microsoft-com-prod
:
ver=20.04 # or 22.04
apt-add-repository https://packages.microsoft.com/ubuntu/${ver}/prod
ثَبَّتَ:
apt-get install aztfexport
yay -S aztfexport
يتطلب aztfexport
تثبيت terraform
قابل للتنفيذ في $PATH
بالإصدار >= v0.12
.
يعمل aztfexport
على تعزيز aztft
لتحديد نوع مورد Terraform المطابق لمعرف مورد Azure. ثم يقوم بتشغيل terraform import
تحت الغطاء لاستيراد كل مورد. بعد ذلك، يقوم بتشغيل tfadd
لإنشاء كود Terraform HCL لكل مورد مستورد.
اقرأ وثائق Azure Export التي تغطي السيناريوهات والاستخدام.
سيقوم aztfexport
بإنشاء ملف تكوين على $HOME/.aztfexport/config.json
. يهدف هذا الملف إلى إدارته بواسطة الأمر aztfexport config [subcommand]
، والذي يتضمن الأوامر الفرعية التالية:
get
: الحصول على عنصر التكوينset
: قم بتعيين عنصر التكوينshow
: إظهار التكوين الكاملحاليًا، يتم دعم عناصر التكوين التالية:
installation_id
: معرف UUID تم إنشاؤه عند التشغيل لأول مرة. إذا كان هناك Azure CLI أو Azure Powershell مثبتًا على الجهاز الحالي، فسيكون UUID هو نفس القيمة بين هذه الأدوات. وإلا سيتم إنشاء واحدة جديدة. يتم استخدام هذا كمعرف في تتبع القياس عن بعد.telemetry_enabled
: تمكين القياس عن بعد. نحن نستخدم القياس عن بعد لتحديد المشكلات ومجالات التحسين، من أجل تحسين هذه الأداة لتحسين الأداء والموثوقية وتجربة المستخدم. إذا كنت ترغب في تعطيل القياس عن بعد، فاضبط هذا على خطأ. قم بزيارة هذه الصفحة في وثائق Azure Export for Terraform التي تناقش القيود المعروفة حاليًا للأداة.