BIG-IPのバージョン情報とサポート期間について

# はじめに
今回はBIG-IPのバージョン情報、サポート期限の調べ方について書きます。なお本記事の内容はバージョン12.0.0以降に当てはまるものとなっています。11.x.x以前については個別に調べて確認した方が良いです。

# バージョンを確認する方法
動作中の機器、CLIやGUIどちらでも確認することができます。CLIではTMOS上で以下のコマンドで確認します。

```text:

(tmos)# show sys version

Sys::Version
Main Package
  Product     BIG-IP
  Version     13.1.0.2
  Build       0.0.6
  Edition     Point Release 2
  Date        Tue Jan 16 08:46:28 PST 2018
```

GUIではこんな感じです。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/126284/ff93213a-56d3-feea-1094-b810cdc28fcc.png)

この例では、バージョンは**13.1.0.2**ということになります。

# ソフトウェアのサポート期限について
メーカによって作られるソフトウェアは永久にサポートされる訳ではなく、定められた期間が終了することでサポート対象外となります。サポート対象外になった場合には、「バグ/脆弱性が発見された際にパッチが提供されない」「不具合が発生した際にメーカサポートに解析してもらえない」という問題点が発生します。したがって運用の際には、ソフトウェアのサポート期限に気を配りながら適宜バージョンアップを行っていく必要があります。
BIG-IPのサポート期限を知るためにはまず、BIG-IPのバージョン情報の読み方を理解する必要があります。

# バージョン情報の読み方
バージョンはピリオド(.)で区切られた4つの数字で表され、左からそれぞれ「メジャーリリース」「マイナーリリース」「メンテナンスリリース」「ポイントリリース」という名前が付いています。今回の例では、
メジャーリリース：13
マイナーリリース：1
メンテナンスリリース：0
ポイントリリース:2
です。
名前の通り、メジャー＞マイナー＞メンテナンス＞ポイントの順で、バージョンが上がった際の動作への影響が変わります。メジャーバージョンのアップデートが最もインパクトが大きく、ポイントリリースのアップデートが最もインパクトが小さくなります。
より詳細に、各リリースでバージョンアップを行った際の影響は以下のページに記述があります。

[K8986: F5 software lifecycle policy](https://support.f5.com/csp/article/K8986)

重要な部分を抜き出すと、以下のようになります。
**メジャー**：製品動作への重要な変更、機能追加、大きなパフォーマンス改善、新しいハードウェアへの対応、アーキテクチャの変更
**マイナー**：機能追加、パフォーマンス改善、新しいハードウェアへの対応、不具合の改修
**メンテナンス**：過去のポイントリリース集積、追加の不具合や脆弱性の改修。既存の動作への変更はない（重要！）
**ポイント**：不具合や脆弱性の改修

これを読むと、メジャーでは製品動作への変更を含む可能性がありますが、メンテナンスでは動作変更が無いと書かれています。マイナーには記載がないためグレーですが、断りがなければ変更されている可能性があると思った方がいいでしょう。バージョンアップの際の重要な考慮点の一つとなる後方互換性については、「マイナーバージョンアップ以上では要注意」と思っておく必要があります。

# サポート期限について
サポート期限についての説明も同じページに書いてありますが、若干複雑なので注意が必要です。まず一番最初に知るべきこととしては、「サポート終了日はメジャー、マイナーバージョンで決定される」ということです。バージョン13.0.0とバージョン13.0.1ではメンテナンスバージョンが異なりますがマイナーバージョンまでは同じ13.0のため、同じサポート終了日を持ちます。同様に、全ての13.0.xは同じサポート終了日となります。13.0.xと13.1.xではサポート終了日が異なります。

サポート終了日については下記の3つの日付とともに説明します。
**First customer ship**
各マイナーバージョンがリリースされた日付です。サポート終了日を決める大事な日となります。13.1.xでは2017/12/19となります。
**End of Software Development (EoSD)**
この日を境に、新たなパッチが提供されなくなります。解析などのメーカサポートは引き続き受けられますが、脆弱性が出た際の対応が出来なくなるため、早めのバージョンアップを検討するべきです。
この日付は、マイナーバージョンが0の場合はFirst customer shipの15ヶ月後、マイナーバージョンが1以降の場合は4年後となります。マイナーバージョンが0のもの（12.0.xや13.0.x）はサポート期間がかなり短いので注意が必要です。
**End of Technical Support (EoTS)**
EoSDの1年後で、この日でサポートが終了します。EoL (End of Life)などと呼ばれることもあります。

文字で説明すると分かりづらいため、表にしてみました。

| Version       |       Release Date |    First customer ship    | EoSD | EoTS |
|:-----------------:|:------------------:|:------------------:|:---:|:---:|
| 13.1.0    |    2017/12/19 | 2017/12/19    |2022/12/19|2023/12/19|
| 13.0.1    |  2018/3/27 |    2017/2/22      |2018/5/22|2019/5/22|
| 13.0.0         |   2017/2/22 |       2017/2/22       |2018/5/22|2019/5/22|
| 12.1.3        |       2017/12/18 |   2016/5/18  |2021/5/18|2022/5/18|
| 12.1.2          |          2016/12/14 |  2016/5/18 |2021/5/18|2022/5/18|
| 12.1.1       |           2016/8/23 |   2016/5/18   |2021/5/18|2022/5/18|
| 12.1.0     |           2016/5/18 | 2016/5/18 |2021/5/18|2022/5/18|
| 12.0.0       |           2015/9/2 |      2015/9/2       |2016/12/2|2017/12/2|

各バージョンのリリース日とFirst customer shipの違いに要注意です。サポート期間(EoTS)を決めるのはあくまでFirst customer shipの日付で、リリース日はサポート期間とは一切関係がありません。また、マイナーバージョン0のものはサポート期間が短いのが分かると思います。

各バージョンのリリース日は以下にあります。
[K9412: The BIG-IP release matrix](https://support.f5.com/csp/article/K9412)

また、各バージョンのサポート終了日は以下にあります。
[K5903: BIG-IP software support policy](https://support.f5.com/csp/article/K5903)

# まとめ
・使用中の製品のバージョン情報はCLI又はGUIで調査できる
・バージョンは「メジャー」「マイナー」「メンテナンス」「ポイント」の階層構造になっていて、バージョンアップの際のインパクトが異なる
・メンテナンスバージョンアップは機器の動作に影響がない
・マイナーバージョンがサポート終了期限を決める
・マイナーバージョン0のものはサポート期限がとても短くなるので注意