Azure CLI का उपयोग करके परिनियोजन को स्वचालित करें

Complete

डेटाबेस स्वचालन अब केवल बड़े उद्यमों के लिए नहीं है; प्रतिस्पर्धी बने रहने के लिए अब सभी आकारों के व्यवसायों के लिए यह आवश्यक है। डेटाबेस व्यवस्थापक के रूप में, डेटाबेस कार्यों को स्वचालित करना कई कारणों से महत्वपूर्ण है:

  • अनुप्रयोगों और डेटाबेस पर दानेदार नियंत्रण
  • आसान मापनीयता, कई संपत्तियों का प्रबंधन करते समय दक्षता बढ़ाना
  • नियमित कार्यों को स्वचालित करने के लिए स्क्रिप्ट की पुन: प्रयोज्यता
  • GUI उपकरण अनुपलब्ध होने पर सरलीकृत समस्या निवारण

Azure Command-Line इंटरफ़ेस (CLI) एक क्रॉस-प्लेटफ़ॉर्म उपकरण है जो Azure संसाधनों को बनाने और प्रबंधित करने में आपकी मदद करता है. आप इंटरैक्टिव संकेतों या स्क्रिप्ट का उपयोग करके टर्मिनल के माध्यम से कमांड चला सकते हैं।

Azure CLI Linux, Mac या Windows कंप्यूटर पर स्थापित किया जा सकता है. आप इसे Azure पोर्टल पर क्लाउड शेल टर्मिनल का उपयोग करके या डॉकर कंटेनर के अंदर ब्राउज़र से भी चला सकते हैं।

Azure CLI सिंटैक्स प्रतिमान का अनुसरण करता हैreference name - command - parameter - parameter value. उदाहरण के लिए, सदस्यता के बीच स्विच करना एक सामान्य कार्य है। यहाँ वाक्यविन्यास है:

az account set --subscription "my subscription name"

PowerShell बनाम Azure CLI

Azure PowerShell और Azure CLI दोनों क्रॉस-प्लेटफ़ॉर्म कमांड-लाइन टूल हैं जो आपको Windows, macOS और Linux पर Azure संसाधन बनाने और प्रबंधित करने की अनुमति देते हैं। उनके बीच प्राथमिक अंतर उन शेल वातावरणों में निहित है जिनका वे समर्थन करते हैं।

शैल पर्यावरण Azure CLI Azure Powershell
सीएमडी हाँ
मार हाँ
Windows PowerShell हाँ हाँ
पावरशेल हाँ हाँ

सही उपकरण चुनने के लिए, अपने अनुभव और अपने कार्य वातावरण पर विचार करें।

Azure CLI बैश स्क्रिप्टिंग के समान है, जो इसे उन लोगों के लिए सहज बनाता है जो आमतौर पर लिनक्स सिस्टम के साथ काम करते हैं। दूसरी ओर, Azure PowerShell में ऐसे मॉड्यूल शामिल हैं जो PowerShell से Azure संसाधनों को प्रबंधित करने में मदद करते हैं। PowerShell कमांड मानक क्रिया-संज्ञा सिंटैक्स का पालन करते हैं, जिससे यह विंडोज सिस्टम से परिचित लोगों के लिए एक स्वाभाविक फिट बन जाता है।

यहां उनके सीएलआई और पावरशेल दोनों रूपों में कुछ आमतौर पर उपयोग किए जाने वाले आदेशों की त्वरित तुलना की गई है:

कमांड Azure CLI Azure PowerShell
वेब ब्राउज़र के साथ साइन इन करें AZ लॉगिन Connect-AzAccount
उपलब्ध सदस्यताएं प्राप्त करें AZ खाता सूची Get-AzSubscription
सदस्यता सेट करें AZ खाता सेट –सदस्यता Set-AzContext -Subscription
सभी वर्चुअल मशीनों की सूची बनाएं az VM list Get-AzVM
कोई नया SQL सर्वर बनाएँ az SQL Server create New-AzSqlServer

Azure CLI का उपयोग करके SQL डेटाबेस परिनियोजित करना

यहाँ SQL डेटाबेस परिनियोजित करने और Azure CLI का उपयोग करके Azure सेवाओं से पहुँच की अनुमति देने के लिए फ़ायरवॉल नियम बनाने का एक उदाहरण दिया गया है:

let "randomIdentifier=$RANDOM*$RANDOM"

$resourceGroup = "<your resource group>"
$location = "<your location preference>"
$server = "dp300-sql-server-$randomIdentifier"
$login = "sqladmin"
$password = "Pa$$w0rD-$randomIdentifier"

az sql server create --name $server --resource-group $resourceGroup --location "$location" --admin-user $login --admin-password $password

az sql server firewall-rule create --resource-group $resourceGroup --server $server -n AllowYourIp --start-ip-address 0.0.0.0 --end-ip-address 0.0.0.0

उपलब्ध सभी Azure SQL CLI आदेशों के बारे में अधिक जानने के लिए, Azure SQL CLI आदेश देखें।

Azure CLI और PowerShell का उपयोग करके Azure संसाधन प्रबंधक (ARM) टेम्पलेट परिनियोजित करना

PowerShell के साथ, आपके पास अपने परिनियोजन के दायरे के लिए कई विकल्प हैं। आप एक संसाधन समूह, एक सदस्यता, एक प्रबंधन समूह, जो समान Azure टेम्पलेट के तहत सदस्यताओं का एक संग्रह है और आमतौर पर बड़े एंटरप्राइज़ परिनियोजन, या एक टैनेंट में उपयोग किया जाता है। Azure संसाधन प्रबंधक टेम्पलेट्स पैरामीटर किए जाते हैं, जिसके लिए आपको पैरामीटर में इनलाइन या पैरामीटर फ़ाइल के माध्यम से पास करने की आवश्यकता होती है, जैसा कि निम्न उदाहरण में दिखाया गया है.

New-AzResourceGroupDeployment -Name ExampleDeployment -ResourceGroupName ExampleResourceGroup `
 -TemplateFile c:\MyTemplates\azuredeploy.json `
 -TemplateParameterFile c:\MyTemplates\storage.parameters.json

पैरामीटर और टेम्पलेट फ़ाइलों को गिट रिपॉजिटरी, एज़्योर ब्लॉब स्टोरेज, या तैनाती मशीन से किसी अन्य सुलभ स्थान पर संग्रहीत किया जा सकता है।

Azure CLI PowerShell के समान परिनियोजन कार्यक्षेत्र विकल्प प्रदान करता है. आप स्थानीय या दूरस्थ पैरामीटर फ़ाइलों और टेम्पलेट्स का उपयोग कर सकते हैं, ठीक वैसे ही जैसे आप PowerShell के साथ करेंगे, जैसा कि निम्न उदाहरण में दिखाया गया है.

az deployment group create --resource-group ExampleResourceGroup --template-file '\path\template.json'

किसी संग्रहण खाते में संग्रहीत संबंधित पथ के साथ दूरस्थ लिंक किए गए टेम्पलेट को परिनियोजित करने के लिए, SAS टोकन निर्दिष्ट करने के लिए क्वेरी-स्ट्रिंग का उपयोग करें:

az deployment group create \
  --name linkedTemplateWithRelativePath \
  --resource-group myResourceGroup \
  --template-uri "https://stage20210126.blob.core.windows.net/template-staging/mainTemplate.json" \
  --query-string $sasToken

नोट

वर्तमान में, Azure CLI दूरस्थ Bicep फ़ाइलों को सीधे परिनियोजित करने का समर्थन नहीं करता है. इसके बजाय, आप Bicep फ़ाइल को JSON टेम्पलेट में कनवर्ट करने के लिए Bicep CLI का उपयोग कर सकते हैं, और फिर JSON टेम्पलेट को दूरस्थ स्थान से परिनियोजित कर सकते हैं।