Terraform به_ون بستگی دارد: چه زمانی ، چه زمانی از آن استفاده کنید و بهترین روش ها

هنگام کار با Terraform ، مدیریت وابستگی منابع به طور مؤثر برای جلوگیری از مشکلات استقرار مهم است. Terraform در تعیین خودکار ترتیب ایجاد منابع بسیار عالی است ، اما گاهی اوقات به کمک کمی نیاز دارد ، این جایی است که به آن بستگی دارد.
در این راهنما ، ما توضیح خواهیم داد که terraform به_ن بستگی دارد ، نحوه استفاده از آن ، چه زمانی از آن استفاده می کنید و بهترین روشها برای نوشتن کد Terraform تمیز و کارآمد.
terraform بستگی به_ن دارد؟
Terraform’s بستگی دارد_ون یک استدلال متا است که به شما امکان می دهد یک رابطه صریح بین منابع را مشخص کنید. هنگام استفاده از آن می توانید نظمی را اجرا کنید که در آن باید منابع ایجاد یا به روز شود.
هنگامی که Terraform را پیکربندی می کنید ، نمودار وابستگی خود را برای درک روابط بین منابع مختلف تجزیه و تحلیل می کند. این نمودار به Terraform کمک می کند تا ترتیب ایجاد منابع ، به روز شده یا نابودی را تعیین کند. اما ، این ممکن است همیشه در هنگام برخورد با روابط پیچیده یا غیر آشکار بین منابع کافی نباشد.
این جایی است که می توان از Aragement terraform به این امر استفاده کرد تا وابستگی های صریح را اضافه کند.
نحوه استفاده به Terraform بستگی دارد
استفاده از متاآنمان وابسته به_ون در Terraform ساده است. در اینجا مثالی از نحو آورده شده است:
resource "azure_resource_type" "resource_name" {
#resource configuration
depends_on = [azure_resource_type.dependent_resource_name]
}
کمی بیشتر از یک مثال کار:
resource "azurerm_resource_group" "example" {
name = "example-rg"
location = "East US"
}
resource "azurerm_storage_account" "example" {
name = "examplestoracct"
resource_group_name = azurerm_resource_group.example.name
location = azurerm_resource_group.example.location
account_tier = "Standard"
account_replication_type = "LRS"
}
resource "azurerm_virtual_machine" "example" {
name = "example-vm"
resource_group_name = azurerm_resource_group.example.name
location = azurerm_resource_group.example.location
network_interface_ids = []
vm_size = "Standard_B1s"
depends_on = [azurerm_storage_account.example]
}
اکنون در مثال بالا لزوماً نیازی به اطمینان از ایجاد حساب ذخیره سازی قبل از دستگاه مجازی ندارید ، اما ممکن است برای انجام این کار یک مورد استفاده خاص داشته باشید.
به یاد داشته باشید که متاآنمان وابسته به_ون لیستی از منابع را می پذیرد و به شما این امکان را می دهد تا به کد Terraform بگویید که وابستگی های چندگانه وجود دارد.
چه زمانی استفاده از آن در terraform بستگی دارد
هنگامی که وابستگی های ضمنی کافی نیست ، فقط باید از کد prepends_on در کد terraform خود استفاده کنید.
در اینجا برخی از موقعیت ها وجود دارد که بستگی به آن خواهد داشت:
- بعضی اوقات منابع برای تأمین کامل زمان زیادی طول می کشد ، می توانید از Prepends_on استفاده کنید تا به شما در مدیریت این مسئله زمان بندی کمک کند.
- هنگام کار با Terraform Providenters (مانند محلی-اگزک و از راه دور) اسکریپت ها یا دستورات را هنگام استقرار اجرا کنید. Terraform حالت اجرای اسکریپت را ردیابی نمی کند ، بنابراین بستگی به آن می تواند اطمینان حاصل کند که کارها به ترتیب صحیح مستقر شده اند.
- ماژول های Terraform ممکن است همیشه وابستگی های بین تماس های ماژول جداگانه را تشخیص ندهند ، می توانید از rege_on برای مجبور کردن سفارش اجرای استفاده کنید.
بهترین روشها برای terraform بستگی به_ن دارد
Argenument Expends_on ابزاری قدرتمند است ، با این حال استفاده بیش از حد یا استفاده نادرست از آن می تواند منجر به عوارض در تنظیمات Terraform شما شود. در اینجا بهترین روشهای لازم هنگام کار با آن وجود دارد:
- در هر زمان ممکن به وابستگی های ضمنی متکی باشید ، فقط در صورت عدم وجود گزینه مناسب دیگر ، به بستگی به این بستگی دارد.
- هنگامی که از گزینه Prepends_On استفاده می کنید ، حتماً مستند کنید که چرا اعضای تیم دیگر یا شما بعداً می فهمید که چرا آنجاست و می توانید از افزودن پیچیدگی های ناخواسته خودداری کنید.
- در صورت بروز هرگونه تغییر در وابستگی های ضمنی یا صریح ، حتماً در حین به روزرسانی های نسخه یا ارائه دهندگان یا ماژول ها بررسی کنید ، زیرا گاهی اوقات به روزرسانی ها می توانند منجر به رفتار غیر منتظره در کد شما شوند.
- بهترین اطمینان را برای آزمایش هرگونه وابستگی ای که به کد خود انجام داده اید و اطمینان حاصل کنید که هیچ مشکلی ایجاد نمی کند.
پایان
Terraform’s بستگی به متاآنمان به عنوان ابزاری مفید است که وابستگی های ضمنی کافی نباشد ، اطمینان حاصل می کند که منابع به ترتیب مناسب ایجاد می شوند.
با پیروی از بهترین شیوه ها ، مانند تکیه بر وابستگی های ضمنی در صورت امکان ، مستند سازی وابستگی های صریح و آزمایش تنظیمات خود ، می توانید کد Terraform خود را تمیز ، کارآمد و قابل حفظ نگه دارید.
استفاده به صورت عاقلانه بستگی دارد ، و استقرار Terraform شما قابل اطمینان تر و قابل پیش بینی خواهد بود – به شما کمک می کند تا از پیچیدگی های غیر ضروری و سردردهای عیب یابی خودداری کنید.