Help us understand the problem. What is going on with this article?

AppServiceにて固定IPを設定する方法(AppService Environment)

More than 3 years have passed since last update.

皆さん、Azure使っていますか?使っていませんね
普通に使うならAWSだと思います。しかし、世の中にはAzureを使わざるを得ないこともあります。
そんな理不尽を戦いながら、調査した内容をしたためてみました

AppService Environmentについて

AzureにはGAEのぱくったAppServiceというContainerServiceが存在しており、VisualStudioで実装すればとても簡単にデプロイできます
WebサービスをAzure上に構築する際にはよっぽどのことがないかぎりAppServiceで実装するのが良いでしょう

しかしながら、このAppServiceはクラウドのサービスなのでデプロイした際にIPが決まるのですが、Azure自体はIPが変わらないことを保証しているわけではありません。エンタープライズの用途で使う際にはIPを固定化して使いたいという用途があります

App Service Environment の概要

ここで用いるのがAppServiceEnvironment(以下、ASE)というもので仮想ネットワーク(以下、VNET)以下にAppServiceに作れるという代物です

ここが難しいよ、ASE

IPは最初の作成時に割り振られる

既存IPは設定できない

Azure上に展開できる他のサービスのCloudServiceなどは予約IPを購入しておき、そのIPを設定して使うような作りになっています。しかし、ASEは環境作成時自動で割り振られてそのIPが変わらない、ということを保証してくれる仕組みとなっています。ですので、予め確保してあるIPを割り当てる、ということはできません。

なんかよく分からないv1とv2の差異

だまってV2使っておけ

このASEにはv1とv2が存在しており、これの使い分けが分かりません
しかもドキュメントも分かりにくくどちらがどちらを指しているのかページを追っていくと分からなくなったりします

App Service Environment v2 の概要

App Service Environment v1 の概要

IPを固定したいという用途だけならv2を使っておけばまず問題ありません
ので黙ってv2を使っておくことをおすすめします

サブネット設定の罠

サブネットは新規で作るべし

ASEを作成時に必ず設定するVNET上に新しいサブネットを作成する必要があります
既存のVNETを使うとそのVNET上にあるサブネットにかぶらないように新しいサブネットを構成する必要があり、とてもめんどくさいです

Pasted image at 2017_09_12 08_20 PM.png

上記のようになっていたら設定不可ですね…
だまって新規で作成する方が楽です

AppServiceの作り方が分からない

まずAppServicePlanを作れ、話はそれからだ

ASEを作ると意味合い的にその下にAppAerviceが作れるのかな、と思うのですが探せど探せどそんなUIはASEのUI上には見つかりません
下記の順を追わないとAppServiceを作ることが出来ないのです

  1. ASEを作る
  2. 上記で作成したASEを場所としてAppServicePlanを作成する
  3. 上記で作成したAppServicePlanを指定してAppServiceを作成する

Pasted image at 2017_09_12 08_29 PM.png

ASE環境を作っておくとAppServicePlanの作成をしようとすると場所に作成したASEを指定できるようになっています
これを使ってAppServicePlanを作成します

次にAppServiceを作るのですが、通常AppServiceの名称部分は下記のように表示されています

Pasted image at 2017_09_12 08_35 PM.png

ここで先程作成したAppServicePlanを入力すると下記のように表示が変わります

Pasted image at 2017_09_12 08_36 PM.png

先程作成したASEがサブドメインとして設定されていることが分かると思います
このままAppServiceを作成すればASE以下にAppServiceを構築することができます

まとめ

なんとかAppServiceのIPの固定化に成功しました
これでIPが代わってしまう可能性がある日々から解放されました

akehoyayoi
フルスタックエンジニアリングコンサルタント、時にはパワポを操り、そして時にはコンソールを操り、問題解決したり、モノを作ったりしています。職歴的に一番エンタメ系が長いのと趣味でエンタメにそれなりに詳しいです。 職の遍歴的にはカーナビ開発(メーカー系)→アパレル(SI系)→生保(SI系)→ゲーム(ベンチャー)→交通(ベンチャー)→製造業関係(SI系、イマココ)という感じです
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした