all-in-oneインストーラーを使用したWallarm Native Nodeのアップグレード¶
この手順では、all-in-oneインストーラーでインストールされたNative Nodeをアップグレードする手順を説明します。
要件¶
-
Linux OS。
-
x86_64/ARM64アーキテクチャ。
-
すべてのコマンドをスーパーユーザー(例:
root
)として実行します。 -
以下へのアウトバウンドアクセス:
https://meganode.wallarm.com
(Wallarmインストーラーのダウンロード用)- US/EU Wallarm Cloud向けの
https://us1.api.wallarm.com
またはhttps://api.wallarm.com
-
攻撃検知ルールおよびAPI仕様の更新をダウンロードし、さらにallowlisted、denylisted、graylistedの国・地域・データセンターの正確なIPを取得するために必要な、以下のIPアドレス
-
さらに、Wallarm ConsoleでAdministratorロールが割り当てられている必要があります。
1. 新しいインストーラーバージョンをダウンロードする¶
現在のNative Nodeが稼働しているマシンに最新のインストーラーバージョンをダウンロードします。
2. 新しいインストーラーを実行する¶
以下のとおり新しいインストーラーを実行します。現在稼働中のWallarmサービスを停止し、その後新バージョンのサービスを自動的に起動します。
以前に生成したNode deployment/Deployment
使用タイプのAPIトークンとノードグループ名を再利用できます。
構成ファイルについては、初回インストール時に使用したものを再利用できます。必要な場合のみ新しいパラメーターを追加するか既存のものを変更してください。サポートされている構成オプションを参照してください。
connector-server
モードは、MuleSoftのMuleまたはFlex Gateway、Akamai、CloudFront、Cloudflare、Broadcom Layer7 API Gateway、Fastly、IBM DataPowerコネクタとともに自己ホスト型ノードをデプロイした場合に使用します。
Nodeバージョン0.12.x以下からアップグレードする場合
Nodeバージョン0.12.x以下からアップグレードする場合は、初期構成ファイル(デフォルトのインストール手順に従いwallarm-node-conf.yaml
)のversion
値が更新されていること、また(明示的に指定している場合は)セクションtarantool_exporter
がpostanalytics_exporter
に名前変更されていることを確認してください:
x86_64インストーラー版の場合:
# US Cloud
sudo env WALLARM_LABELS='group=<GROUP>' ./aio-native-0.17.1.x86_64.sh -- --batch --token <API_TOKEN> --mode=connector-server --go-node-config=<PATH_TO_CONFIG> --host us1.api.wallarm.com --preserve false
# EU Cloud
sudo env WALLARM_LABELS='group=<GROUP>' ./aio-native-0.17.1.x86_64.sh -- --batch --token <API_TOKEN> --mode=connector-server --go-node-config=<PATH_TO_CONFIG> --host api.wallarm.com --preserve false
ARM64インストーラー版の場合:
# US Cloud
sudo env WALLARM_LABELS='group=<GROUP>' ./aio-native-0.17.1.aarch64.sh -- --batch --token <API_TOKEN> --mode=connector-server --go-node-config=<PATH_TO_CONFIG> --host us1.api.wallarm.com --preserve false
# EU Cloud
sudo env WALLARM_LABELS='group=<GROUP>' ./aio-native-0.17.1.aarch64.sh -- --batch --token <API_TOKEN> --mode=connector-server --go-node-config=<PATH_TO_CONFIG> --host api.wallarm.com --preserve false
自己ホスト型ノードをTCPトラフィック解析用にデプロイした場合にtcp-capture
モードを使用します。
Nodeバージョン0.12.1以下からアップグレードする場合
Nodeバージョン0.12.0以下からアップグレードする場合は、初期構成ファイル(デフォルトのインストール手順に従いwallarm-node-conf.yaml
)のversion
値が更新されていること、また以前にmiddleware
セクションで設定していたパラメーターをgoreplay
セクションに移動していることを確認してください:
x86_64インストーラー版のアップグレードコマンド:
# US Cloud
sudo env WALLARM_LABELS='group=<GROUP>' ./aio-native-0.17.1.x86_64.sh -- --batch --token <API_TOKEN> --mode=tcp-capture --go-node-config=<PATH_TO_CONFIG> --host us1.api.wallarm.com --preserve false
# EU Cloud
sudo env WALLARM_LABELS='group=<GROUP>' ./aio-native-0.17.1.x86_64.sh -- --batch --token <API_TOKEN> --mode=tcp-capture --go-node-config=<PATH_TO_CONFIG> --host api.wallarm.com --preserve false
ARM64インストーラー版のアップグレードコマンド:
# US Cloud
sudo env WALLARM_LABELS='group=<GROUP>' ./aio-native-0.17.1.aarch64.sh -- --batch --token <API_TOKEN> --mode=tcp-capture --go-node-config=<PATH_TO_CONFIG> --host us1.api.wallarm.com --preserve false
# EU Cloud
sudo env WALLARM_LABELS='group=<GROUP>' ./aio-native-0.17.1.aarch64.sh -- --batch --token <API_TOKEN> --mode=tcp-capture --go-node-config=<PATH_TO_CONFIG> --host api.wallarm.com --preserve false
envoy-external-filter
モードは、Istioで管理されるAPI向けのgRPCベースの外部処理フィルターに使用します。
x86_64インストーラー版のアップグレードコマンド:
# US Cloud
sudo env WALLARM_LABELS='group=<GROUP>' ./aio-native-0.17.1.x86_64.sh -- --batch --token <API_TOKEN> --mode=envoy-external-filter --go-node-config=<PATH_TO_CONFIG> --host us1.api.wallarm.com --preserve false
# EU Cloud
sudo env WALLARM_LABELS='group=<GROUP>' ./aio-native-0.17.1.x86_64.sh -- --batch --token <API_TOKEN> --mode=envoy-external-filter --go-node-config=<PATH_TO_CONFIG> --host api.wallarm.com --preserve false
ARM64インストーラー版のアップグレードコマンド:
# US Cloud
sudo env WALLARM_LABELS='group=<GROUP>' ./aio-native-0.17.1.aarch64.sh -- --batch --token <API_TOKEN> --mode=envoy-external-filter --go-node-config=<PATH_TO_CONFIG> --host us1.api.wallarm.com --preserve false
# EU Cloud
sudo env WALLARM_LABELS='group=<GROUP>' ./aio-native-0.17.1.aarch64.sh -- --batch --token <API_TOKEN> --mode=envoy-external-filter --go-node-config=<PATH_TO_CONFIG> --host api.wallarm.com --preserve false
-
WALLARM_LABELS
変数は、ノードが追加されるgroupを設定します(Wallarm Console UIでのノードの論理的なグルーピングに使用されます)。 -
<API_TOKEN>
は、Node deployment/Deployment
使用タイプで生成したAPIトークンを指定します。 -
<PATH_TO_CONFIG>
は、構成ファイルへのパスを指定します。
現在の/opt/wallarm/etc/wallarm/go-node.yaml
、/opt/wallarm/etc/wallarm/node.yaml
およびログファイルは、ディレクトリ/opt/wallarm/aio-backups/<timestamp>
にバックアップされます。
3. アップグレードを検証する¶
ノードが正しく動作していることを確認するには、次を実行します。
-
ログにエラーがないか確認します:
- デフォルトでは
/opt/wallarm/var/log/wallarm/go-node.log
にログが書き込まれます。そこで確認できます。 - データがWallarm Cloudに送信されているか、検出された攻撃など、フィルタリングノードの標準ログはディレクトリ
/opt/wallarm/var/log/wallarm
にあります。
- デフォルトでは
-
保護対象リソースのアドレスにテスト用のパストラバーサル攻撃リクエストを送信します:
トラフィックがexample.com
へのプロキシに構成されている場合は、リクエストに-H "Host: example.com"
ヘッダーを含めます。 -
アップグレードしたノードが前のバージョンと比較して期待どおりに動作していることを確認します。
問題が発生した場合¶
アップグレードまたは再インストールの過程で問題が発生した場合:
-
現在のインストールを削除します:
-
TCPトラフィック解析用、またはMuleSoftのMuleやFlex Gateway、Akamai、CloudFront、Cloudflare、Broadcom Layer7 API Gateway、Fastly、IBM DataPowerの各コネクタ向けに、通常どおりノードを再インストールします。
または、上記のアップグレード手順に従ってください。