しばやん雑記

Azure とメイドさんが大好きなフリーランスのプログラマーのブログ

Elastic Beanstalk が Windows Server 2016 に対応してました

何となく新しい Elastic Beanstalk を作成したら、自動的に Windows Server 2016 になっていることに気が付きました。RTM になってから半年以上かかってますが、喜ばしいです。

設定を弄らなかったので Windows Server 2016 で作られるのは、少し注意した方が良いかもしれないです。ちなみに Server Core もちゃんと用意されています。

f:id:shiba-yan:20170702000457p:plain

Release Notes を調べると 3 日ほど前に追加されたとありました。一瞬だけ Windows Server 2016 が Platform History に表示されたことはありましたが、ちゃんと作業は進んでいたようです。

Added support for Windows Server 2016.
The following new platforms are provided:

  • 64bit Windows Server 2016 v1.2.0 running IIS 10.0
  • 64bit Windows Server Core 2016 v1.2.0 running IIS 10.0
Release: AWS Elastic Beanstalk support for Windows Server 2016 on June 26, 2017 : Release Notes : Amazon Web Services

環境を作成する時にドロップダウンリストから、Windows Server 2016 と Windows Server Core 2016 が選べるようになっています。バージョンは v1.2.0 のみ用意されてます。

後から Windows Server 2016 や Windows Server Core 2016 に切り替えることは出来ないので、新しい環境を作る必要があります。切り替える機能が欲しいです。

f:id:shiba-yan:20170701235940p:plain

Windows Server 2016 の環境が意図せず出来てしまったので、一応リモートデスクトップで入って確認しておきました。普通の Windows Server 2016 が入っています。

f:id:shiba-yan:20170702000853p:plain

これまでの EC2Config は入っておらず、代わりに EC2Launch を使って設定をする必要があります。インストールされているモジュールは 2012 R2 と同じでした。

ついに IIS 10.0 が使えるようになり、Request Filtering などのモジュールが最新になっています。最新の Request Filtering を使うと、簡単に Server ヘッダーを削除する機能が付いてます。

f:id:shiba-yan:20170702011429p:plain

removeServerHeader を True にすると、レスポンスから Server ヘッダーが消えます。

f:id:shiba-yan:20170702012021p:plain

地味に消すのが大変だった Server ヘッダーですが、IIS 10.0 からは簡単に消せました。他にも HTTP2 対応などがありますが、Elastic Beanstalk で HTTP2 を使うには ALB を利用する必要がありそうです。