IBM Cloud: VPCにF5 BIG-IP Virtual Editionを導入してみた

:::note
この記事は2020年に記述したものであり、現在では古くなっています。代わりに以下の記事を参照することを推奨します。
[IBM Cloud: VPCにF5 BIG-IP Virtual Editionを導入してみた（2022年10月改訂版）](https://qiita.com/testnin2/items/c747edcb699d6acf030f)
:::

# 1. はじめに
IBM CloudのVPCではVirtual Network Function(VNF)機能が、allow-listに追加されたユーザーにだけベータで利用が可能になっている。執筆時点（2020/11/21)時点では、F5 BIG-IP Virtual Editionのみが利用可能。今回はそのベータ申請を実施して、その機能を試してみた。
なお、当面はBYOL(Bring Your Own License)での提供のようなので、ライセンスは別途取得する必要がある。今回は、30日のトライアルライセンスを[ここ](https://www.f5.com/ja_jp/trials/big-ip-virtual-edition)から申請し、メールに送付されてきたライセンス情報を利用した。

# 2. 注文方法
(allow-listに追加されたユーザーであれば）カタログからF5を検索すれば、対象のタイルが表示される。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/62127/04d658af-3ffd-44d4-fa72-eb612fc65509.png)

以下は、画面に沿って値を入力していくだけである。特に何も指示がない限りはデフォルトを選択すればよい。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/62127/a1de2b78-389f-4ebf-8e95-e914a53469ff.png)
F5 BIG-IPの導入は内部的にはIBM Cloud Schematics（実装はTerraform）を使っているので、そのworkspace名を指定する必要がある。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/62127/28123a57-bad0-39ca-7306-4a996f23ac5f.png)

以下、必須とされる箇所は赤枠で囲んだ。今回は、必須とされる箇所以外では、`data_1_X_subnet_id`と`tmos_admin_password`しか指定しておらず、それ以外はデフォルトの値を利用した。
ライセンス情報は後から入力可能なので、`none`のままでよい。
なお、TMOSはF5製品のOS(Operating System)であり、adminはブラウザアクセス用の管理IDである。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/62127/da101178-e0b5-67fc-1107-7dabfe6fa8a4.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/62127/4e7bc308-932a-b120-cd8a-24a7d2812408.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/62127/5477f2d6-77e8-2a08-5ff2-46104fb98871.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/62127/278e8fc7-e48d-3587-6294-403548782dc6.png)


# 3. プロビジョニング

IBM Cloud Schematicsのworkspace上で淡々とプロビジョニングが実施される。5分程度で完了する。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/62127/575dafec-c3b6-7b2c-9018-6ac46797615e.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/62127/777d8379-0f16-6668-372c-015bf907f439.png)


# 4. プロビジョニング後の状態

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/62127/b898d871-aefd-9722-09d3-cac4fb406898.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/62127/29d3355b-1dd7-b71b-6c27-e127607e7ae2.png)

management interfaceには新たにFloating IP（今回の例では`162.xxx.xxx.xxx`）が割り当てられ、Public IP経由でアクセス可能な形でプロビジョニングされてくる。
気をつけなければいけないのは、defaultのsecurity groupではなく、新たにsecurity groupが生成されており、しかもそのsecurity groupは全ての通信を許可するような構成になっていることである。よって、Inboundだけでも早々に通信元を制限するように構成変更することが望ましい。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/62127/120c1859-dc26-9965-869e-d7923bdb5c54.png)



# 5. CLIによるログイン確認

```txt:バージョン情報の確認
Shinobu-no-MacBook-Pro:~ yasuda$ ssh root@162.xxx.xxx.xxx
The authenticity of host '162.xxx.xxx.xxx (162.xxx.xxx.xxx)' can't be established.
ECDSA key fingerprint is SHA256:EbX3CRCZnmwKCpwgOphdoEE00HsKaYJ/f0sF3j6Q6/k.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '162.xxx.xxx.xxx' (ECDSA) to the list of known hosts.
[root@f5-ve-01:NO LICENSE:Standalone] config # tmsh
root@(f5-ve-01)(cfg-sync Standalone)(NO LICENSE)(/Common)(tmos)# show sys version

Sys::Version
Main Package
  Product     BIG-IP
  Version     15.1.0.4
  Build       0.0.6
  Edition     Point Release 4
  Date        Thu Jun 18 20:31:45 PDT 2020

```

# 6. Web Consoleへのログイン確認とSetup Utilityの完了

`https://162.xxx.xxx.xxx/`にアクセスすると以下の画面が出てくる。


- UserIDは`admin`、Passwordは`tmos_admin_password`で設定した値を利用。<br> ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/62127/badc0450-1517-65c4-4ecf-97a588812010.png)
- Setup Utilityが起動している。`Next`を選択。<br> ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/62127/607386de-31ba-f606-5472-ba5f3b265d88.png)
- `Activate`を選択<br> ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/62127/3d03e570-703d-0324-ecab-a4c2af1273c1.png)
- ライセンス情報を入力して`Next`を選択。<br> ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/62127/5172b733-87d1-f418-84b4-4c312b1b0bdb.png)
- `Accept`を選択。<br> ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/62127/932d8bd4-9eb6-ce31-5406-59af669931a5.png)
- 一連の処理が完了した後に、`Log in`を選択。<br> ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/62127/34ed8275-c6b3-ef3d-b29c-4402c7c8863b.png)
- 再度ログインしなおす<br> ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/62127/31466fd5-d871-f7c9-2abb-6533a3597210.png)
- Setup Utilityを再度選択<br> ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/62127/2723088a-82ec-4e3c-48a2-683c7232509c.png)
- Licenseが登録されていることを確認<br> ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/62127/abcf8df5-6ca1-0a41-c8ab-8059178a0bb3.png)
- `Platform`にて、TimezoneをUTC->Japanに変更。RootAccount: `Disable Login`を選択するか、パスワードを設定するかを必ず指定しないといけないようであり、コンソールアクセスは引き続き必要なため、適切なパスワードを設定。`SSH IP Allow`は、Security Groupで制限しているので今回は設定しない。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/62127/5263aa30-0198-05ab-e07e-2d860a29b6ec.png)
- これ以上は設定ウィザードに従う必要はないので、`Network`にてAdvanced Network Configurationの`Finished`を選択。<br>![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/62127/e9a25a87-0498-ba64-3bdd-62ee61a56ece.png)
- Setup Utilityが完了し、一旦セットアップは完了。<br> ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/62127/4952927b-9640-29e0-5ff4-1ed956f528a4.png)