このページのトピック
HA Lambdaを手動で有効にする
アプライアンスのアップグレード中のパケット損失を最小限に抑えるには、高可用性 Lambda関数を手動で有効にして、アプライアンスがオフライン状態であることを確認する必要があります。HA Lambda を手動で起動できるのは、AWS Edge 展開を使用している場合のみです。アップグレードのためにアプライアンスを手動でオフラインにするには、次の手順に従います。
- クラウドウォッチのアラームを無効にする:
- AWS CLIを実行するための適切な認証情報があることを確認します(必要に応じてaws-adfsログインを先に実行します)。
- 次のコマンドを実行します。
aws cloudwatch disable-alarm-actions --alarm-names "CloudWatch Alarm Name"
-
ActionsEnabledフィールドが ** false **であることを確認します。
aws cloudwatch describe-alarms --alarm-names "CloudWatch Alarm Name" | grep "ActionsEnabled"
-
HA Lambda を手動で呼び出して、アプライアンスをバイパスするようにルートを変更します。
方法1:AWSマネジメントコンソール経由
-
AWS Lambda Functionsページに移動し、 HALambdaFunction をクリックして関数の詳細を表示します。
-
Code sourceセクションの下にあるオレンジ色のTESTボタンをクリックして、テストイベントを設定します。
-
Create new test eventを選択します。選択するイベントテンプレートは関係ありません。
-
イベントに「HALambdaInvoke」という名前を付けます。
-
元のテンプレートコードを削除し、次のコードを貼り付けます。
{ "Records": [ { "Sns": { "Message": "{\"NewStateValue\": \"ALARM\",\"Trigger\": {\"Dimensions\": [{\"value\": \"i-0000000000000000\",\"name\": \"InstanceId\"}]}}" } } ] }
-
「i-0000000000000000」をアプライアンスインスタンスIDに置き換えます。
-
オレンジ色の TEST ボタンをクリックして、 Lambda関数を実行します。
-
関数のログは、対応するAWS CloudWatch ロググループにあります。(ロググループ名は Lambda関数名と同じにする必要があります)。
注意
アプライアンスを元に戻すには、上記の手順を繰り返して、文字列「ALARM」を「OK」に置き換えます。
方法2:AWSコマンドラインインタフェースを使用して呼び出す
- AWS CLIコマンド(必要に応じてaws-adfs login)を実行するための適切な認証情報があることを確認します。
aws lambda invoke \
--function-name My-HALambdaFunction-Name \
--invocation-type Event \
--payload '{"Records": [{"Sns": {"Message": "{\"NewStateValue\": \"ALARM\",\"Trigger\": {\"Dimensions\": [{\"value\": \"i-0000000000000000\",\"name\": \"InstanceId\"}]}}"}}]}' \
response.json
-
「My-HALambdaFunction-Name」を完全な HALambdaFunction 名に置き換えます。
-
「i-0000000000000000」をアプライアンスインスタンスIDに置き換えます。
-
「response.json」はコマンドの必須パラメータですが、有用な情報が含まれていません。
-
関数のログは、対応するAWS CloudWatch ロググループにあります。(ロググループ名は Lambda関数名と同じにする必要があります)。
- Upgradeをクリックします。アップグレードプロセスが完了するまでお待ちください。 Network Security Applianceページで、アプライアンスのVersion列に「Up to date」と表示されます。
-
CloudWatch アラームを以下の手順で再度有効にします。
- 次のコマンドを実行します。
aws cloudwatch enable-alarm-actions --alarm-names"CloudWatch Alarm Name"
- ActionsEnabledフィールドが ** true **であることを確認します。
aws cloudwatch describe-alarms --alarm-names "CloudWatch Alarm Name" | grep "ActionsEnabled"
- 次のコマンドを実行します。
-
アプライアンスを元に戻すには、上記の手順を繰り返して、文字列「ALARM」を「OK」に置き換えます。