Azure CLIで操作する（Application Gateway編）

## Azure CLIを利用してスケールアップ/ダウン、スケールアウト/インさせる。
### Azure CLIとは
Windows、MacOS、Linuxなどクロスプラットフォームで利用出来るAzureをコマンドラインで操作出来るツールです。
ダウロードは下記のページから
https://docs.microsoft.com/ja-jp/cli/azure/install-azure-cli?view=azure-cli-latest

1. Azureにログイン
az login
ログインするとサブスクリプションIDなどの情報が表示されます。
※プロキシサーバがある環境では、必要に応じてプロキシを環境変数に設定して下さい。
一時的な場合は、下記のコマンドを入力
set HTTP_PROXY=http://username:password@proxy.contoso.com:8000
set HTTPS_PROXY=http://username:password@proxy.contoso.com:800

2. Azure CLIのバージョンを確認する。
az --version
![cli2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/270447/86d0fd67-bb3d-b67d-c0e3-7de7c4c0aed7.png)

###Application Gateway v2編
Application Gateway v2では自動スケールアウトが可能となっており、設定が手動スケールアウトになっている場合に、Azure CLIでスケールアウトさせることが出来ます。

1. 現状のインスタンス数を確認する。
az network application-gateway show -g リソースグループ名 -n アプリケーションゲートウェイ名 --query "sku"
![ag2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/270447/734f95b4-4417-c953-ab91-f9efd2762b44.png)
Azure Portalでも確認してみます。
![ag1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/270447/0f1bc287-315f-cb2d-c12f-b8c6c1ed68d3.png)

2. Application Gateway v2 を手動で2台にスケールアウトさせる。
az network application-gateway update -g リソースグループ名 -n アプリケーションゲートウェイ名 --set sku.capacity=2
"sku.capacity"で稼働させたいインスタンス数を指定します。
![ag3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/270447/6db6e080-5910-a49d-92be-49881306be1c.png)
※Application Gateway はv1、v2共にインスタンス数が2台以上でSLAが99.95%を得ることが出来ます。
詳細は下記をご確認下さい。
https://azure.microsoft.com/ja-jp/support/legal/sla/application-gateway/v1_2/
3. 手動スケールアウト出来たことを確認する。
az network application-gateway show -g リソースグループ名 -n アプリケーションゲートウェイ名 --query "sku"
![ag4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/270447/4dafd234-e060-7aa9-fe1c-67fc385502d5.png)
Azure Portalでも確認してみます。
![ag5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/270447/971949fd-6599-9ded-8c9a-6dcd3a1f41e1.png)

###Application Gateway v1編
1. 現状のインスタンス数を確認する。
az network application-gateway show -g リソースグループ名 -n アプリケーションゲートウェイ名 --query "sku"
![v1-2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/270447/bcadb953-df37-fa4b-0049-77108a7d9cf6.png)
Azure Portalでも確認してみます。
![v1-1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/270447/943f302e-647c-f72a-06af-e6c9e719ab40.png)

2. Application Gateway v1 をsmallからMediumにスケールアップさせる。
az network application-gateway update  -g リソースグループ名 -n アプリケーションゲートウェイ名 --sku Standard_Medium
{Standard_Large, Standard_Medium, Standard_Small}から選択可能
※約15分程かかる（リージョン内の状況にもよる）
![v1-3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/270447/8e4395bf-7217-80e8-3516-5a6266578e52.png)

3. スケールアップ出来たことを確認する。
az network application-gateway show -g リソースグループ名 -n アプリケーションゲートウェイ名 --query "sku"
![v1-4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/270447/4bcd61c1-f38e-ecb5-6d4e-b500511c7577.png)
Azure Portalでも確認してみます。
![v1-5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/270447/bc654586-ddee-6990-c60e-fa74871408a6.png)

4. Application Gateway v1 をスケールアウトさせる。
az network application-gateway update -g リソースグループ名 -n アプリケーションゲートウェイ名 --set sku.capacity=2
"sku.capacity"で稼働させたいインスタンス数を指定します。
※約15分程かかる（リージョン内の状況にもよる）
![v1-6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/270447/21307a05-e1ba-7d47-e3db-a936f413e93c.png)

5. スケールアウト出来たことを確認する。
az network application-gateway show -g リソースグループ名 -n アプリケーションゲートウェイ名 --query "sku"
![v1-7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/270447/999f4247-aca4-0c8b-f80c-a3ac38897a0c.png)
Azure Portalでも確認してみます。
![v1-8.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/270447/abc2bbe7-9183-c056-e2ce-08c4a6e1e15d.png)