Azure Firewallの起動停止方法(停止で課金を止める)
Azure PowerShellを使ったAzure Firewallの起動停止方法の紹介です。
Azure Firewallはリソースを停止させることで課金を止めることができます。
Azure PortalではAzure Firewallを停止できませんが、Azure PowerShellを使うことで停止できます。
Azure PowerShellを使ったAzure Firewallの起動停止手順をまとめてみました。
Azure CLIとAzure PowerShellを使ったAzure Firewallの情報を取得するためのコマンド(コマンドレット)も紹介してます。
※記事記載時点では、Azure CLIを使ったAzure Firewallの停止はできないようです。
Azure Firewallは停止すると課金も止まる
価格
Azure Firewallは、デプロイされている時間に応じて課金が発生します。
Standardで$1.25/デプロイ時間(東日本リージョン)、Premiumの場合は$1.75/デプロイ時間の課金が発生します。
検証環境などで夜間使わない場合でもデプロイしておくだけで課金が発生します。
1時間未満は1時間に切り上げられる
1時間に満たない時間は、1時間分として課金されます。
短時間でデプロイを繰り返すとその分課金額も上がっていきます。
例えば1時間に3回デプロイすると3時間分の課金となります。
停止させると課金も止まる
Azure Firewallが停止状態(割り当て解除)の場合は課金が発生しません。
Azure Firewall の停止と起動の方法を教えてください
※パブリックIPの課金はAzure Firewallのリソース停止状況とは関連しません。パブリックIPのリソースが存在する限り課金は継続します。
Azure Firewallの起動停止はAzure PowerShellのみ
Azure Firewallの起動停止はAzure PowerShellのみで実施できます。
Azure Portalでは提供されていません。
Azure CLIを使ったAzure Firewallの停止もサポートされていません。
※記事記載(2023年9月末)時点の情報です
起動時にはパブリックIPの再割り当てが必要
Azure Firewallの停止時はパブリックIPの割り当てが解除されます。
起動時にはパブリックIPの再割り当てが必要になります。
※仮想ネットワークの割り当ても解除されます。
Azure CLIとAzure PowerShell使ってAzure Firewallのリストやリソース情報を取得
リストやリソース情報を取得
Azure Firewallのリストやリソース情報取得時に使うAzure CLI、Azure PowerShellです。
実施内容 | Azure CLI | Azure PowerShell |
リソースのリストを取得 | az network firewall list –output table |
Get-AzFirewall | ft Name,Location,ResourceGroupName,ProvisioningState,ThreatIntelMode |
リソースのリストを取得 (リソースグループ指定) |
az network firewall list list –resource-group “リソースグループ名" –output table | |
リソース情報を取得 |
サブスクリプション内すべて リソースグループ内すべて 個別のリソース |
サブスクリプション内すべて リソースグループ内すべて 個別のリソース |
※Azure PowerShellの表示内容はAzure CLIの出力結果と同じとなるよう項目を指定しています。
※Azure CLIの–resource-groupは-g、–nameは-nと省略して表記できます。
※Azure CLIで詳細情報取得時も–output tableを付与する事でリソース名、ステータスを表形式で取得できます。
Azureテナントへのサインイン方法はこちらに纏めています。
リソースのリスト取得結果
Azure CLIとAzure PowerShellを使ってAzure Firewallのリソース一覧を取得した例です。
※詳細情報の取得は停止起動の方で実施しています。
Azure Firewallのリストを取得 | |
Azure CLIを利用した場合
|
|
Azure PowerShellを利用した場合
|
※Azure PowerShellの場合の表示項目はAzure CLIの場合と同じとしています。
az network firewall初回実行時の注意点
Azure CLIのaz network firewallコマンド初回実行時には拡張機能のインストールが求められます。
Yを選択してインストールします。
PS C:> az network firewall list –output table The command requires the extension azure-firewall. Do you want to install it now? The command will continue to run after the extension is installed. (Y/n): Y |
Azure PowerShellを使ってAzure Firewallを起動停止
Azure Firewallのリソース設定
検証で利用したAzure Firewallのリソースです。
区分 | 項目 | 設定値 |
ファイアウォール | リソースグループ名 | rg-fw-test-01 |
ファイアウォール名 | fw-test-01 | |
SKU | Standard | |
仮想ネットワーク | リソースグループ名 | rg-fw-test-01 |
仮想ネットワーク名 | vnet-fw-test-01 | |
パブリックIP | リソースグループ名 | rg-fw-test-01 |
パブリックIP名 | pip-fw-fw-test-01 | |
パブリックIP名(管理パブリック IP) |
pip-fwm-fw-test-01
|
Get-AzFirewallとSet-AzFirewallを使って停止、起動
Azure PowerShellを使ってAzure Firewallの停止と起動します。
FAQの中に起動停止の記載があります。
Stop-AzFirewallやStart-AzFirewallと言ったコマンドレットは存在しません。
Get-AzFirewallとSet-AzFirewallを使ってパブリックIPアドレスや仮想ネットワークの割り当て解除(起動時は割り当て)します。
停止はすべての構成で同じですが、起動は構成により3パターンあります。
-
- 強制トンネリング用に構成されていないファイアウォール
- 強制トンネリング用に構成されているファイアウォール
- セキュリティで保護された仮想ハブ アーキテクチャのファイアウォール
azfw.Allocateでの指定内容(割り当て方法)が異なります。
※今回はセキュリティで保護された仮想ハブ アーキテクチャのファイアウォールは実施していません。
Azure Firewallの停止から起動まで | |
停止
|
|
起動
|
|
起動(強制トンネリング構成)
|
起動停止時のリソース状態
起動停止時のリソース状態について確認します。
Azure Firewallのリソース状態はGet-AzFirewallで取得しています。
ProvisioningState(プロビジョニング状態)はありますが、起動停止状態を直接示す項目はありません。
IpConfigurationsTextの値の有無で起動停止状態を確認出来ます。
-
- 停止状態
- IpConfigurationsText:値が存在しない
- ManagementIpConfigurationText:値が存在しない
- 起動状態(強制トンネリング用に構成されていないファイアウォール)
- IpConfigurationsText:値が存在する
- ManagementIpConfigurationText:値が存在しない
- 起動状態(強制トンネリング用に構成されていないファイアウォール)
- IpConfigurationsText:値が存在する
- ManagementIpConfigurationText:値が存在する
- 停止状態
※リソースに対して課金が発生しているかどうかは停止後に確認した方が安全です。
Get-AzFirewall実行結果 |
停止状態 |
起動状態(強制トンネリング用に構成されていないファイアウォール) |
起動状態(強制トンネリング用に構成されているファイアウォール) |
Azure Portal上でステータスを確認
Azure Portal上でも起動停止状態を示す項目はありません。
パブリックIPアドレスや仮想ネットワークの表示状態で確認出来ます。
状態 | コマンド実行内容 |
停止状態 | |
起動状態 | |
起動状態 (強制トンネリング構成) |
※リソースに対して課金が発生しているかどうかは別途確認した方が安全です。
最後に
Azure Firewallのリストやリソース情報取得から起動停止方法を纏めてみました。
リソースの起動停止には数分程度かかる事もありますが停止する事で課金停止するのは大変メリットかと思います。
検証環境等でのコスト削減に活用する事も出来ます。
引き続き色々試してみたいと思います。
Azure Application Gateway(アプリケーションゲートウェイ)の起動停止方法についてはこちらで紹介しています。