BIG-IP SSLO (SSL Orchestrator)は、Web UIからメニュー: SSL Orchestrator > Configuration
を押下した際にRPMファイルのインストール処理が実行されます。
しかし、検証で初期セットアップのたびにWeb UIを意図的に開くのは作業漏れを起こす可能性が出てくるため、CLI (Command Line Interface)からSSLO用RPMファイルのインストール処理を行う方法を整理しました。また本記事では合わせてアンインストールの方法も記載しております。
iControl LX REST API: /mgmt/shared/iapp/package-management-tasks
本記事内ではiControl LX REST APIの /mgmt/shared/iapp/package-management-tasks
を用いて、QUERY
, INSTALL
, UNINSTALL
のアクションを実行します。
設定手順
検証時のバージョン
- F5 BIG-IP Virtual Edition Version: 16.1.3
前提
本作業を行う前にSSLOモジュールを有効化しておきます。
下記はCLIからSSLOモジュールの有効化と、設定の確認を行うコマンドです。
tmsh modify sys provision sslo { level nominal } tmsh list sys provision
要調整な可変パラメータ
環境によって変更が必要な可変パラメータは下記の通りです。
項目名 | 項目値 | 備考 |
---|---|---|
Username | admin | |
Password | Pa$$w0rd | |
RPMファイル名 | f5-iappslx-ssl-orchestrator-16.1.3-9.3.41.noarch | v16.1.3 にデフォルトで含まれているRPMファイルです。 |
非同期処理に関して
/mgmt/shared/iapp/package-management-tasks
のAPIでの QUERY
, INSTALL
, UNINSTALL
のアクションは非同期処理になっています。
動作イメージとしては、実行処理を依頼してから、その処理結果を別途問い合わせるようなイメージです。
INSTALL
と UNINSTALL
の実行処理結果に関しては QUERY
でパッケージのインストール状況を確かめれば代用が効きます。
QUERY
QUERY
ではパッケージのインストール状況が確認できます。
QUERYの実行コマンド
QUERY
の実行処理を依頼するコマンドは下記になります。
curl -s -u 'admin:Pa$$w0rd' -X POST http://localhost:8100/mgmt/shared/iapp/package-management-tasks \ -d '{ "operation": "QUERY"}' | jq .
非同期処理のため QUERY
を実行すると id
が発番されます。結果を知るには selfLink
の id
が付与されたURLを辿る必要があります。
QUERYでの情報取得まで (One Liner)
手動で結果の問い合わせコマンドを毎回組み立てるのは手間がかかりますし、作業ミスも発生しやすいので自動的に結果の情報を取得するOne Linerが下記になります。
curl -s -u 'admin:Pa$$w0rd' -X POST http://localhost:8100/mgmt/shared/iapp/package-management-tasks \ -d '{ "operation": "QUERY"}' | jq .selfLink | xargs -n 1 curl -s -u 'admin:Pa$$w0rd' -k | jq .
INSTALL
INSTALL
ではパッケージのインストールを実行します。非同期処理のため実行結果を確認するには別途問い合わせが必要になります。適宜、QUERY
で結果を確認してください。
INSTALLの実行コマンド
INSTALL
の実行処理を依頼する一連のコマンドは下記になります。
本手順では、BIG-IP上にデフォルトで存在するRPMファイルを使用しているため、RPMファイル名のバージョン部分を適宜修正してください。
ls /usr/share/packages/f5-iappslx-ssl-orchestrator/f5-iappslx-ssl-orchestrator-* cp -ipv /usr/share/packages/f5-iappslx-ssl-orchestrator/f5-iappslx-ssl-orchestrator-16.1.3-9.3.41.noarch.rpm /var/config/rest/downloads/ ls /var/config/rest/downloads/f5-iappslx-ssl-orchestrator-* curl -s -u 'admin:Pa$$w0rd' -X POST http://localhost:8100/mgmt/shared/iapp/package-installer-tasks \ -d '{ "operation": "INSTALL", "packageFilePath": "/var/config/rest/downloads/f5-iappslx-ssl-orchestrator-16.1.3-9.3.41.noarch.rpm"}' | jq .
インストール対象のRPMファイルは /var/config/rest/downloads/
配下に保存しておいてください。それ以外のディレクトリからインストールを試みると失敗する場合があるのを確認しております。
K10190200: In some BIG-IP versions RPM installation will fail as a result of changing the installation directory
https://support.f5.com/csp/article/K10190200
UNINSTALL
CLIからアンインストールする方法も補足的に説明しておきます。
UNINSTALL
ではパッケージのアンインストールを実行します。非同期処理のため実行結果を確認するには別途問い合わせが必要になります。適宜、QUERY
で結果を確認してください。
UNINSTALLの実行コマンド
UNINSTALL
の実行処理を依頼するコマンドは下記になります。
curl -s -u 'admin:Pa$$w0rd' -X POST http://localhost:8100/mgmt/shared/iapp/package-management-tasks \ -d '{ "operation": "UNINSTALL", "packageName": "f5-iappslx-ssl-orchestrator-16.1.3-9.3.41.noarch"}' | jq .