今回は仮想マシンのスケールセットを試してみます。
1.仮想マシンの自動スケール
従来Azureの仮想マシンをアクセスに応じて動的にスケールするには、スケールさせる台数分の仮想マシンを用意し、ロードバランサに紐づける必要がありましたが、今回ご紹介するスケールセットを利用することで、不要な台数を立てることなく自動スケールが可能になります。
2.立ててみる
今回は新規にスケールセットを立てます。
Azureポータル左上の「新規」から「Compute」→「Virtual machine scale set」を選択し、作成します。
基本設定を行います。
スケールセットの名前、OS、ユーザー名、認証方法等を入力します。
続いてスケールセットの設定を行います。
パブリックIPやドメイン名、OSイメージの選択や初期稼働台数、サイズを指定します。
Linuxの場合、OSイメージは下記が用意されています。
続いて自動スケールの設定をします。
最小・最大台数や、増減の条件、一度に増減させる台数を指定できます。
最後に設定を確認し、OKをクリックします。
作成が完了すると、スケールセットの他にロードバランサやストレージアカウントが用意されます。
スケールセットの管理画面はほぼ通常の仮想マシン管理画面と変わりませんが、インスタンス台数やジョブの確認ができるようになっています。
インスタンスに接続するにあたっては、ロードバランサの「受信NAT規則」から確認ができます。
複数台稼働していてもIPアドレスは変わらず、接続するポート番号でインスタンス接続が区別されます。基本は50000番ポートから連番となります。
3.自動スケールさせてみる
インスタンスに負荷を発生させて、自動スケールが行われるかを確認します。
今回の自動スケール条件は下記となっています。
・5分間平均CPU使用率75%以上で1台増加
・5分間平均CPU使用率25%以下で1台減少
・最小台数1台
・最大台数3台
インスタンスにログインし、下記コマンドで負荷を発生させます。
1 |
# yes > /dev/null |
下のメトリックのように15分ほどCPU使用率100%を記録していたようです。
その間、インスタンスは自動スケールで最大台数の3台にまで増えていました。
先述の通り、複数台稼働している際の接続ポートは50000番から連番となっているようです。
いかがでしたでしょうか。
今回は試しにスケールセットを操作してみましたが、次回からはより実用的にスケールセットの検証をしてみたいと思います。
お楽しみに!