♻️

【プレビュー】SQL Managed Instanceの無料オファーを試してみました

2023/12/21に公開

こんにちは、@mrk_17tksmです!

オンプレミスのSQL ServerをMicrosoft Azureに移行する際、Azure SQL Serverはリソース制約による問題が発生する可能性があります。このため、互換性を考慮してAzure SQL Managed Instanceを選択するシナリオも存在するでしょう。

ご存じの通り、SQL Managed Instanceは最小構成であってもランニングコストが高いです。

■ SQL Managed Instance の価格表

ハードウェアの世代: Standard シリーズ (5.1 GB RAM/仮想コア)

仮想コア数 メモリ容量 ストレージ容量 1時間あたりのコスト
4vCore 20.4GB 64GB 160.8円
8vCore 40.8GB 64GB 321.7円

ハードウェアの世代: Premium シリーズ(7GB RAM/仮想コア)

仮想コア数 メモリ容量 ストレージ容量 1時間あたりのコスト
4vCore 28GB 64GB 210.1円
8vCore 56GB 64GB 420.1円

参考 (1ドル = 147円で計算)

1インスタンスを1ヶ月間(720時間)起動し続けた場合、従来の最小構成でも10万円を超えていました。

■ 無料オファーのパブリックプレビュー開始

(日本時間)2023年12月21日にMicrosoftからSQL Managed Instanceの無料オファーに関する報告がありました。

報告内容はこちら👇
https://azure.microsoft.com/en-us/updates/public-preview-free-sql-managed-instance

無料オファーの制約はこちらです(一部抜粋)。

  1. 1サブスクリプションあたり1インスタンスのみ利用可能
  2. 1ヶ月あたり720vCPU分を利用可能
  3. vCPU数は4個or8個を選択可能
  4. ストレージ容量は64GB(ただしOSなどのファイルシステム容量を含む)
  5. ゾーン冗長はなし
  6. フェールオーバーグループはなし
  7. Azureサポートリクエストは利用不可
  8. 無料版から有料版へのプラン変更はできない
    ※新規で有料インスタンスを作成し、データリストアが必要

詳細はこちら👇
https://learn.microsoft.com/en-us/azure/azure-sql/managed-instance/free-offer?view=azuresql

■ 無料のSQL Managed Instanceを作成してみた

SQL Managed Instanceの作成画面にアクセスすると、無料オファーの案内が表示されます。
Apply free offer(Preview)」のボタンを押下します。


押下後、右側の1ヶ月あたりの推定費用が無料(Free)になりました。

さて、インスタンスの作成をしていきます。最大6時間もかかるので気長に待ちます・・・🍵
私の場合は、2時間10分ほどで作成が完了しました。

リソース構成を確認してみます。

{
    "identity": {
        "principalId": "<プリンシパルID>",
        "type": "SystemAssigned",
        "tenantId": "<MS Entra テナントID>"
    },
    "sku": {
        "name": "GP_Gen5",
        "tier": "GeneralPurpose",
        "family": "Gen5",
        "capacity": 4
    },
    "properties": {
        "provisioningState": "Succeeded",
        "fullyQualifiedDomainName": "free-sql-mi-8818621.<dnsZone名>.database.windows.net",
        "administratorLogin": "<administratorLogin>",
        "subnetId": "/subscriptions/<サブスクID>/resourceGroups/<リソースグループ名>/providers/Microsoft.Network/virtualNetworks/vnet-free-sql-mi-8818621/subnets/ManagedInstance",
        "state": "Ready",
        "licenseType": "LicenseIncluded",
        "vCores": 4,
        "storageSizeInGB": 64,
        "collation": "SQL_Latin1_General_CP1_CI_AS",
        "dnsZone": "<dnsZone名>",
        "publicDataEndpointEnabled": true,
        "proxyOverride": "Proxy",
        "timezoneId": "UTC",
        "maintenanceConfigurationId": "/subscriptions/<サブスクID>/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_Default",
        "privateEndpointConnections": [],
        "minimalTlsVersion": "1.2",
        "storageAccountType": "GRS",
        "zoneRedundant": false
    },
    "location": "eastus",
    "tags": {},
    "id": "/subscriptions/<サブスクID>/resourceGroups/<リソースグループ名>/providers/Microsoft.Sql/managedInstances/free-sql-mi-8818621",
    "name": "free-sql-mi-8818621",
    "type": "Microsoft.Sql/managedInstances"
}

抑えておく情報は下記ぐらいでしょうか。

  • サービスのSKU: GeneralPurpose|Gen5
  • 照合順序: SQL_Latin1_General_CP1_CI_AS
  • タイムゾーンID: UTC
  • ストレージアカウントのタイプ: GRS

■ さいごに

最後まで読んでいただき、ありがとうございます!
SQL Managed Instance の Free プランが利用可能になり、アプリ開発の分野では手軽に試してみることができるようになりました。もちろん、Free であるがゆえの制約で開発の現場でも使えない場面もあると思います(有料版のSKUにアップするためだけにリストアめんどくさい!)。

Discussion