Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu hızlı başlangıçta, Azure SQL Yönetilen Örneği ve bir sanal ağ (vNet) oluşturmak için Azure Resource Manager şablonu (ARM şablonu) dağıtma işlemine odaklanılır. Azure SQL Yönetilen Örneği, SQL Server veritabanı altyapısıyla neredeyse %100% özellik eşliğine sahip, akıllı, tam olarak yönetilen, ölçeklenebilir bir bulut veritabanıdır.
Ortamınız önkoşulları karşılıyorsa ve ARM şablonlarını kullanmayı biliyorsanız Azure'a dağıt düğmesini
Önkoşullar
- Bir Azure aboneliği. Azure aboneliğiniz yoksa ücretsiz bir hesap oluşturun
- Genel olarak, kullanıcınızın abonelik kapsamında SQL Yönetilen Örneği Katkıda Bulunan rolüne sahip olması gerekir.
- Azure SQL Yönetilen Örneği'ne tahsis edilmiş bir alt ağda sağlama yapıyorsanız, kullanıcınızın yalnızca abonelik kapsamına atanmış Microsoft.Sql/managedInstances/yazma iznine ihtiyacı vardır.
Şablonu gözden geçirme
Bu hızlı başlangıçta kullanılan şablon,
Anahtar şablonu parametreleri
| Parametre adı | Varsayılan / Örnek | İzin verilen değerler / Kısıtlamalar | Description |
|---|---|---|---|
| yönetilenÖrnekAdı | sqlmi | 1–63 karakter | SQL yönetilen örneğinin adı |
| location | resourceGroup().location | SQL yönetilen örneğini destekleyen Azure bölgeleri | Tüm kaynaklar için bölge |
| yöneticiGiriş | sqladmin | Rezerve edilmiş kelimeler olamaz | SQL yöneticisi oturum açma |
| yöneticiGirişParolası | — | En düşük uzunluk ve karmaşıklık zorunlu kılındı | SQL yönetici parolası |
| vCores | 8 | SKU başına geçerli sanal çekirdek değerleri | Örneğin boyutunu hesapla |
| storageSizeInGB | 256 | Hizmet katmanı başına en az/en fazla | Örneğe ayrılan depolama alanı |
| alt ağ adres öneki | 10.0.0.0/24 | Özel, delege edilmiş alt ağ gerekiyor | Yönetilen örnek için alt ağ |
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.17.1.54307",
"templateHash": "2861010078937229146"
}
},
"parameters": {
"managedInstanceName": {
"type": "string",
"metadata": {
"description": "Enter managed instance name."
}
},
"administratorLogin": {
"type": "string",
"metadata": {
"description": "Enter user name."
}
},
"administratorLoginPassword": {
"type": "securestring",
"metadata": {
"description": "Enter password."
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Enter location. If you leave this field blank resource group location would be used."
}
},
"virtualNetworkName": {
"type": "string",
"defaultValue": "SQLMI-VNET",
"metadata": {
"description": "Enter virtual network name. If you leave this field blank name will be created by the template."
}
},
"addressPrefix": {
"type": "string",
"defaultValue": "10.0.0.0/16",
"metadata": {
"description": "Enter virtual network address prefix."
}
},
"subnetName": {
"type": "string",
"defaultValue": "ManagedInstance",
"metadata": {
"description": "Enter subnet name."
}
},
"subnetPrefix": {
"type": "string",
"defaultValue": "10.0.0.0/24",
"metadata": {
"description": "Enter subnet address prefix."
}
},
"skuName": {
"type": "string",
"defaultValue": "GP_Gen5",
"allowedValues": [
"GP_Gen5",
"BC_Gen5"
],
"metadata": {
"description": "Enter sku name."
}
},
"vCores": {
"type": "int",
"defaultValue": 16,
"allowedValues": [
4,
8,
16,
24,
32,
40,
64,
80
],
"metadata": {
"description": "Enter number of vCores."
}
},
"storageSizeInGB": {
"type": "int",
"defaultValue": 256,
"maxValue": 8192,
"minValue": 32,
"metadata": {
"description": "Enter storage size."
}
},
"licenseType": {
"type": "string",
"defaultValue": "LicenseIncluded",
"allowedValues": [
"BasePrice",
"LicenseIncluded"
],
"metadata": {
"description": "Enter license type."
}
}
},
"variables": {
"networkSecurityGroupName": "[format('SQLMI-{0}-NSG', parameters('managedInstanceName'))]",
"routeTableName": "[format('SQLMI-{0}-Route-Table', parameters('managedInstanceName'))]"
},
"resources": [
{
"type": "Microsoft.Network/networkSecurityGroups",
"apiVersion": "2021-08-01",
"name": "[variables('networkSecurityGroupName')]",
"location": "[parameters('location')]",
"properties": {
"securityRules": [
{
"name": "allow_tds_inbound",
"properties": {
"description": "Allow access to data",
"protocol": "Tcp",
"sourcePortRange": "*",
"destinationPortRange": "1433",
"sourceAddressPrefix": "VirtualNetwork",
"destinationAddressPrefix": "*",
"access": "Allow",
"priority": 1000,
"direction": "Inbound"
}
},
{
"name": "allow_redirect_inbound",
"properties": {
"description": "Allow inbound redirect traffic to Managed Instance inside the virtual network",
"protocol": "Tcp",
"sourcePortRange": "*",
"destinationPortRange": "11000-11999",
"sourceAddressPrefix": "VirtualNetwork",
"destinationAddressPrefix": "*",
"access": "Allow",
"priority": 1100,
"direction": "Inbound"
}
},
{
"name": "deny_all_inbound",
"properties": {
"description": "Deny all other inbound traffic",
"protocol": "*",
"sourcePortRange": "*",
"destinationPortRange": "*",
"sourceAddressPrefix": "*",
"destinationAddressPrefix": "*",
"access": "Deny",
"priority": 4096,
"direction": "Inbound"
}
},
{
"name": "deny_all_outbound",
"properties": {
"description": "Deny all other outbound traffic",
"protocol": "*",
"sourcePortRange": "*",
"destinationPortRange": "*",
"sourceAddressPrefix": "*",
"destinationAddressPrefix": "*",
"access": "Deny",
"priority": 4096,
"direction": "Outbound"
}
}
]
}
},
{
"type": "Microsoft.Network/routeTables",
"apiVersion": "2021-08-01",
"name": "[variables('routeTableName')]",
"location": "[parameters('location')]",
"properties": {
"disableBgpRoutePropagation": false
}
},
{
"type": "Microsoft.Network/virtualNetworks",
"apiVersion": "2021-08-01",
"name": "[parameters('virtualNetworkName')]",
"location": "[parameters('location')]",
"properties": {
"addressSpace": {
"addressPrefixes": [
"[parameters('addressPrefix')]"
]
},
"subnets": [
{
"name": "[parameters('subnetName')]",
"properties": {
"addressPrefix": "[parameters('subnetPrefix')]",
"routeTable": {
"id": "[resourceId('Microsoft.Network/routeTables', variables('routeTableName'))]"
},
"networkSecurityGroup": {
"id": "[resourceId('Microsoft.Network/networkSecurityGroups', variables('networkSecurityGroupName'))]"
},
"delegations": [
{
"name": "managedInstanceDelegation",
"properties": {
"serviceName": "Microsoft.Sql/managedInstances"
}
}
]
}
}
]
},
"dependsOn": [
"[resourceId('Microsoft.Network/networkSecurityGroups', variables('networkSecurityGroupName'))]",
"[resourceId('Microsoft.Network/routeTables', variables('routeTableName'))]"
]
},
{
"type": "Microsoft.Sql/managedInstances",
"apiVersion": "2021-11-01-preview",
"name": "[parameters('managedInstanceName')]",
"location": "[parameters('location')]",
"sku": {
"name": "[parameters('skuName')]"
},
"identity": {
"type": "SystemAssigned"
},
"properties": {
"administratorLogin": "[parameters('administratorLogin')]",
"administratorLoginPassword": "[parameters('administratorLoginPassword')]",
"subnetId": "[resourceId('Microsoft.Network/virtualNetworks/subnets', parameters('virtualNetworkName'), parameters('subnetName'))]",
"storageSizeInGB": "[parameters('storageSizeInGB')]",
"vCores": "[parameters('vCores')]",
"licenseType": "[parameters('licenseType')]"
},
"dependsOn": [
"[resourceId('Microsoft.Network/virtualNetworks', parameters('virtualNetworkName'))]"
]
}
]
}
Bu kaynaklar şablonda tanımlanır:
- Microsoft.Network/networkSecurityGroups
- Microsoft.Network/routeTables
- Microsoft.Network/virtualNetworks
- Microsoft.Sql/managedinstances
daha fazla şablon örneği Azure Hızlı Başlangıç Şablonlarıbulunabilir.
Şablonu dağıtma
Azure Cloud Shell'i açmak için aşağıdaki PowerShell kod bloğundan Deneyin seçin.
Dağıtım denetim listesi
- Önkoşulları doğrulayın:
- Etkin Azure aboneliği
- Gerekli izinler (SQL Yönetilen Örneği Katkıda Bulunanı veya Microsoft.Sql/managedInstances/write)
- Aşağıdaki kod parçacıklarını kullanarak dağıtım komutunu (PowerShell veya Azure CLI) çalıştırın.
- Başarılı olduğunu doğrulayın:
- Azure portalında dağıtım Başarılı olarak görünür.
- SQL yönetilen örneği, hedef kaynak grubunda Oluşturuluyor veya Hazır durumda görünüyor
Önemli
SQL yönetilen örneği dağıtmak uzun süre çalışan bir işlemdir. Alt ağdaki ilk örneğin dağıtımı genellikle mevcut yönetilen örneklere sahip bir alt ağa dağıtılmaktan çok daha uzun sürer. Ortalama sağlama sürelerini incelemek için SQL Yönetilen Örneği yönetim işlemleri'ye bakın.
$projectName = Read-Host -Prompt "Enter a project name that is used for generating resource names"
$location = Read-Host -Prompt "Enter the location (i.e. centralus)"
$templateUri = "https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.sql/sqlmi-new-vnet/azuredeploy.json"
$resourceGroupName = "${projectName}rg"
New-AzResourceGroup -Name $resourceGroupName -Location $location
New-AzResourceGroupDeployment -ResourceGroupName $resourceGroupName -TemplateUri $templateUri
Read-Host -Prompt "Press [ENTER] to continue ..."
Dağıtılan kaynakları gözden geçirme
Azure portalı ziyaret edin ve yönetilen örneğin seçtiğiniz kaynak grubunda olduğunu doğrulayın. Yönetilen örnek oluşturmak biraz zaman alabileceğinden, kaynak grubunuzun Genel Bakış sayfasındaki Dağıtımlar bağlantısını denetlemeniz gerekebilir.
- Azure sanal makinesinden SQL Yönetilen Örneği'ne bağlanmayı gösteren hızlı başlangıç kılavuzu için bkz. Azure sanal makine bağlantısını yapılandırma.
- Şirket içi istemci bilgisayardan noktadan siteye bağlantı kullanarak SQL Yönetilen Örneği'ne nasıl bağlanılacağını gösteren hızlı başlangıç için, Noktadan siteye bağlantı yapılandırmabölümüne bakın.
Kaynakları temizleme
Sonraki adımlargitmek istiyorsanız yönetilen örneği koruyun, ama ekstra dersleri tamamladıktan sonra yönetilen örneği ve ilgili kaynakları silin. Yönetilen bir örneği sildikten sonra, bir alt ağı silmek için bkz. .
Kaynak grubunu silmek için:
$resourceGroupName = Read-Host -Prompt "Enter the Resource Group name"
Remove-AzResourceGroup -Name $resourceGroupName