آموزش استقرار Infra در ابر با استفاده از Terraform

Deploy Infra in the Cloud using Terraform

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: نحوه اعمال Infrastructure as Code (IaC) با Terraform را بیاموزید. برنامه های وب، پایگاه داده، VM، Kubernetes و Azure را پوشش می دهد. استقرار خودکار زیرساخت در ابر ایجاد الگوهای Terraform کار با "طرح اجرا" به اشتراک گذاری و قفل کردن پرونده دولتی استقرار در dev/تست و تولید خطوط لوله CI/CD DevOps برای Terraform GitOps با آتلانتیس ایجاد و استقرار برنامه های وب، پایگاه های داده، ماشین های مجازی، فضای ذخیره سازی , خوشه های Kubernetes مستقر در چندین پلت فرم ابری با استفاده از ماژول ها عیب یابی Terraform Applying Infrastructure as Code (IaC) پیش نیازها:سرویس های ابری اساسی

Terraform در حال تبدیل شدن به استاندارد در مورد استقرار زیرساخت در فضای ابری یا در محل است.

در این دوره آموزشی نحوه ایجاد و استقرار الگوهای Terraform را خواهید آموخت.

ما با دستورات مختلف Terraform مانند init، plan، اعمال و تخریب کار خواهیم کرد.

ما ویژگی‌های زمینی مانند پارامترهای ورودی و خروجی، طرح اجرا و وضعیت باطن از راه دور را بررسی خواهیم کرد.

ما الگوهایی برای برنامه‌های وب، پایگاه داده SQL، ماشین‌های مجازی، فضای ذخیره‌سازی، خوشه‌های Kubernetes و بسیاری موارد دیگر خواهیم نوشت.

ما خطوط لوله CI/CD DevOps را با استفاده از Azure DevOps و Github Actions ایجاد می‌کنیم تا در محیط‌های متعدد مستقر شوند: توسعه‌دهنده، آزمایش و تولید.

سپس GitOps را برای Terraform با استفاده از آتلانتیس پیاده‌سازی می‌کنیم.

در طول همه این نمایش‌ها، بهترین روش‌ها را از نظر امنیت، پیکربندی و مقیاس‌پذیری نیز یاد خواهید گرفت.


امیدوارم برای این سفر آماده و هیجان زده باشید!

یک قهوه بیاورید و اجازه دهید شروع کنیم.


طرح فعلی:

مقدمه

  • معرفی Terraform (شروع، برنامه‌ریزی، اعمال، حذف)

  • شرایط مورد نیاز (Terraform، اشتراک Azure، Azure CLI، افزونه VS Code+TF، هر سیستم عامل)

ResourceGroup

  • استقرار Resource Group در Azure

  • به تفریح ​​منابع توجه کنید

  • اعتبار سنجی و قالب بندی الگوها

برنامه وب

  • استقرار برنامه وب

  • افزودن فایل متغیرها

  • ایجاد متغیرها در فایل‌های tfvars.

  • ناسخ متغیرها در خط فرمان

  • ایجاد متغیرهای خروجی

طرح اجرا

  • نمای کلی طرح Terraform

  • دمو

TF_State

  • کار با Remote Backend State

استقرار Infra

  • استقرار SQL Server با پایگاه داده

  • استقرار و پیکربندی برنامه وب و سرور SQL

  • استقرار Linux VM

  • استقرار Windows VM با Azure Bastion

  • استقرار خوشه AKS

  • استقرار AKS با هویت مدیریت شده و ACR

ویژگی های Terraform

  • توابع (برای هر کدام، برای، شمارش، اگر/دیگر، تصادفی، پایین تر، بالا، حداقل، حداکثر...)

DevOps با Terraform

  • الگوهای Terraform را با استفاده از Azure DevOps مستقر کنید

  • پیکربندی خطوط لوله CI/CD

سخنرانی های آینده:

  • منبع داده

  • فضاهای کاری/محیط ها

  • تست TF با Terratest

  • چند ابری

  • استقرار در AWS و GCP

  • GitOps با TF (Atlantis…)

  • TF با ARM

  • رقبای TF: Ansible، Pulumi، ARM، Cloud Formation

  • ارائه‌دهندگان TF برای Kubernetes، Helm، Docker، GIT…


سرفصل ها و درس ها

مقدمه Introduction

  • الزامات دوره Course requirements

  • با نویسنده ارتباط برقرار کنید Connect with the author

مبانی Terraform Terraform basics

  • نمای کلی Terraform Terraform overview

  • اولین قالب terraform را ایجاد کنید Create the first terraform template

  • کد منبع نسخه ی نمایشی را دریافت کنید Get the source code for the demo

  • انتقال به Terraform نسخه 0.14 Moving to Terraform version 0.14

  • Terraform init، برنامه ریزی و اعمال کنید Terraform init, plan and apply

  • بازآفرینی منابع Recreating resources

  • اعتبار سنجی و قالب بندی یک الگو Validation and formatting a template

  • دستورات Terraform Terraform commands

متغیرهای ورودی و خروجی Input & output variables

  • ایجاد یک الگو برای Azure Web App Creating a template for Azure Web App

  • کد منبع برای نسخه ی نمایشی Source code for the demo

  • استقرار برنامه وب Deploying Web App

  • متغیرهای Terraform Terraform Variables

  • نادیده گرفتن متغیرها با tfvars Overriding variables with .tfvars

  • نادیده گرفتن متغیرها با خط فرمان Overriding variables with command line

  • متغیرهای خروجی Output variables

  • متغیرهای ورودی و خروجی Input & output variables

طرح اجرای Terraform Terraform execution plan

  • نمای کلی طرح اجرا Execution plan overview

  • نسخه ی نمایشی طرح اجرا Execution plan demo

  • دستور پلان Terraform Terraform plan command

حالت Terraform Terraform state

  • نمای کلی وضعیت Terraform Terraform state overview

  • نسخه ی نمایشی حالت Terraform Terraform state demo

  • مدیریت دولتی Terraform. Terraform state management.

فضای کاری Terraform Terraform Workspace

  • محیط‌های توسعه‌دهنده/تست/تولید Dev/Test/Prod Environments

  • [نمونه] محیط های توسعه دهنده/تست/تولید [Demo] Dev/Test/Prod Environments

  • استقرار برنامه وب و پایگاه داده SQL Deploy Web App and SQL Database

  • فضای کاری Terraform Terraform Workspace

  • [دمو] Terraform Workspace [Demo] Terraform Workspace

  • آیا می توان از فضای کاری Terraform برای مدیریت محیط های DEV/TEST/PROD استفاده کرد؟ Terraform workspace could be used to manage DEV/TEST/PROD environments ?

چگونه Terraform با طرح و حالت کار می کند How Terraform work with plan and state

  • چگونه Terraform با طرح و حالت کار می کند How Terraform work with plan and state

استقرار خدمات کانتینری Deploy container services

  • استقرار خوشه AKS Deploy AKS cluster

  • [نمایش] خوشه AKS را مستقر کنید [Demo] Deploy AKS cluster

  • AKS، ACR و Permissions را مستقر کنید Deploy AKS, ACR and Permissions

  • [نمایش] استقرار AKS، ACR و مجوزها [Demo] Deploy AKS, ACR and Permissions

  • امتحان Quiz

استقرار خدمات PaaS Deploying PaaS services

  • استقرار Key Vault و Secrets Deploy Key Vault and Secrets

  • [نمایش] استقرار خزانه کلید و اسرار [Demo] Deploy Key Vault and Secrets

  • خرک کلید با RBAC برای اسرار Key Vault with RBAC for Secrets

  • [نمایش] خزانه کلید با RBAC برای اسرار [Demo] Key Vault with RBAC for Secrets

  • استقرار حساب ذخیره سازی، کانتینر و Blob Deploy Storage Account, Container and Blob

  • [نمونه] استقرار حساب ذخیره سازی، کانتینر و Blob [Demo] Deploy Storage Account, Container and Blob

  • امتحان Quiz

استقرار خدمات IaaS Deploying IaaS services

  • Linux VM را مستقر کنید Deploy Linux VM

  • [دمو] Linux VM را مستقر کنید [Demo] Deploy Linux VM

  • هاست Windows VM & Bastion را مستقر کنید Deploy Windows VM & Bastion host

  • [نمونه] میزبان ویندوز VM و Bastion را مستقر کنید [Demo] Deploy Windows VM & Bastion host

  • امتحان Quiz

استقرار برنامه های کانتینر Azure Deploying Azure Container Apps

  • مقدمه ای بر منبع برنامه های Container Introduction to Container Apps resource

  • [نمونه] استقرار الگوی Terraform برای برنامه های کانتینری [Demo] Deploying the Terraform template for Container Apps

استقرار قالب های ARM Deploying ARM templates

  • استقرار قالب های ARM Deploying ARM templates

  • [نمایش] استقرار الگوهای ARM [Demo] Deploying ARM templates

  • امتحان Quiz

مدیریت ابری با استفاده از Terraform Cloud Governance using Terraform

  • ایجاد کاربر و گروه در Azure Active Directory Create users and groups in Azure Active Directory

  • [دمو] کاربران و گروه‌ها را در Azure Active Directory ایجاد کنید [Demo] Create users and groups in Azure Active Directory

  • یک خط مشی موجود را تعیین کنید Assign an existing Policy

  • [نمایش] یک خط مشی موجود را تعیین کنید [Demo] Assign an existing Policy

  • یک خط مشی سفارشی ایجاد و اختصاص دهید Create and assign a custom policy

  • [نمایش] یک خط مشی سفارشی ایجاد و اختصاص دهید [Demo] Create and assign a custom policy

ماژول های Terraform Terraform modules

  • مقدمه ای بر ماژول ها Introduction to modules

  • [نمایش] ماژول های Terraform [Demo] Terraform modules

  • به اشتراک گذاری ماژول ها با رجیستری terraform Sharing modules with terraform registry

  • منابع بیشتر برای ماژول ها More resources for modules

استقرار در چندین هدف با استفاده از چند ارائه دهنده Deploying to multiple targets using multi-provider

  • پیکربندی چندین ارائه دهنده Configuring multiple providers

  • [نمونه] پیکربندی چندین ارائه دهنده [Demo] Configuring multiple providers

زیرساخت های موجود را به Terraform وارد کنید Import existing infrastructure into Terraform

  • واردات ترافورم Terraform import

  • [نمایش] واردات Terraform [Demo] Terraform import

  • ابزارهای بیشتر برای وارد کردن منابع More tools to import resources

  • با Terrafy منابع Azure را به Terraform وارد کنید Import Azure resources into Terraform with Terrafy

ویژگی های Terraform Terraform features

  • for_each، فهرست، نقشه، bool، شماره، اعتبارسنجی for_each, list, map, bool, number, validation

  • اگر/دیگر، شمارش، پایین تر، بالا، حداکثر، حداقل if/else, count, lower, upper, max, min

  • رشته_تصادفی، عدد_تصادفی، تصادفی_uuid random_string, random_number, random_uuid

  • http، local-exec، remote-exec http, local-exec, remote-exec

  • [نمونه] http، local-exec، remote-exec [Demo] http, local-exec, remote-exec

  • پویا برای بلوک تودرتو dynamic for nested bloc

  • فعال یا غیرفعال کردن ایجاد منبع enable or disable resource creation

با استفاده از ارائه دهنده Terraform در Kubernetes مستقر شوید Deploy to Kubernetes using Terraform provider

  • ارائه دهنده Terraform برای Kubernetes Terraform provider for Kubernetes

با استفاده از ارائه دهنده Terraform، Helm Charts را در Kubernetes مستقر کنید Deploy Helm Charts to Kubernetes using Terraform provider

  • ارائه دهنده Terraform برای Helm Terraform provider for Helm

تجسم منابع با Rover Resource visualization with Rover

  • تجسم منابع با Rover Resource visualization with Rover

  • [نمایش] تجسم منابع با Rover [Demo] Resource visualization with Rover

سرویس اصلی برای ایمن سازی استقرارهای Terraform Service Principal for securing Terraform deployments

  • معرفی Azure Service Principal Introduction to Azure Service Principal

  • [نمایش] مدیر سرویس Azure [Demo] Azure Service Principal

  • مدیر سرویس با Terraform Service Principal with Terraform

تست خودکار با استفاده از Terratest Automated testing using Terratest

  • مقدمه ای بر Terratest Introduction to Terratest

  • [دمو] اجرای تست ساده در Terratest [Demo] Running simple test in Terratest

  • تست های خودکار برای گروه منابع Automated tests for Resource Group

  • [نمایش] تست های خودکار برای گروه منابع [Demo] Automated tests for Resource Group

  • تست های خودکار برای یک خوشه AKS Automated tests for an AKS cluster

  • منابع بیشتر برای یادگیری Terratest More resources for learning Terratest

تشخیص پیکربندی نادرست در Terraform Detecting misconfigurations in Terraform

  • تشخیص پیکربندی نادرست در Terraform Detecting misconfigurations in Terraform

  • تشخیص پیکربندی نادرست در خطوط لوله DevOps Detecting misconfigurations in DevOps pipelines

معماری چند لایه Multi-layer architecture

  • معماری چند لایه برای Terraform Multi-layer architecture for Terraform

DevOps برای Terraform DevOps for Terraform

  • خطوط لوله CI/CD با استفاده از Azure DevOps CI/CD Pipelines using Azure DevOps

  • استقرار در چندین محیط Deploy to multiple environments

  • خطوط لوله CI/CD با Github Actions CI/CD pipelines with Github Actions

مهاجرت منابع منسوخ شده Migrating deprecated resources

  • مهاجرت منابع منسوخ شده Migrating deprecated resources

منابع Resources

  • چارچوب برنامه Azure Cloud (CAF) Azure Cloud Application Framework (CAF)

استفاده از ارائه دهنده Azure azapi برای ساخت پشته نظارتی برای AKS Leveraging Azure azapi provider to build a monitoring stack for AKS

  • مقدمه ای بر مینیتورینگ AKS با استفاده از Prometheus و Grafana Introduction to AKS minitoring using Prometheus and Grafana

  • کاوش در پیکربندی Terraform azapi Exploring the Terraform azapi configuration

  • استقرار و بررسی منابع Deploying and checking the resources

نمایش نظرات

آموزش استقرار Infra در ابر با استفاده از Terraform
جزییات دوره
7 hours
91
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
55,309
4.5 از 5
ندارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Houssem Dellai Houssem Dellai

هاوسم دلائی مهندس مشتری در مایکروسافت است. پیش از آن ، وی برای 5 سال متوالی نامزد با ارزش ترین حرفه ای مایکروسافت (MVP) شد. شما ممکن است کارهای او را ببینید بدون اینکه حتی متوجه شده باشید! اگر به دنبال محتوا در Docker ، Kubernetes ، DevOps ، Terraform ، Xamarin ، ASP.NET یا Azure بودید ، احتمال آنقدر زیاد است که از کانال Youtube وی یا پست های وبلاگ وی در Microsoft Blog ، Medium و CodeProject عبور کرده اید. وی همچنین سخنران کنفرانس و مربی خبره حرفه ای (MCT) است که هزاران دانشجو و توسعه دهنده حرفه ای را آموزش داده است. بنابراین ، او می داند که مردم برای یادگیری فن آوری های جدید کجا گیر کرده اند. او کسی است که می تواند مفاهیم پیچیده را برای مبتدیان ساده کند.