【Terraform】 AWSの認証でError: No valid credential sources foundと出た際の回避方法
hama-matcha
エラー解決IT奮闘ブログ
いつもなら動いていたStepFunctionsが唐突にUnable to execute HTTP request: connection timed out: cloudformation.[aws_region].amazonaws.com/[public_ipv4]:443
で動かなくなり焦りながら修正したのでその備忘録です。
States.TaskFailed
等をトリガーとして各Stateに再実行の設定をしよう
"Retry": [
{
"ErrorEquals": [
"States.TaskFailed"
],
"BackoffRate": 1,
"IntervalSeconds": 20,
"MaxAttempts": 60,
"Comment": "Unable to execute HTTP request対策"
}
]
CloudFormationを使い必要なAWSリソースとツールをインストールしてLambda関数(Python3.9)を使いboto3のssmクライアントで色々実行するサーバを作ってました。今まではCloudFormationのリソースの作成が完了するStateだけ再実行する設定を入れていた。
動くことを優先した設定
上記の設定は1つのStateで 20~30秒 x 60 = 1200~1800秒 動かなかったら明らかにおかしいと判断して設定しました。(この値の設定は各Stateで普段どのくらい時間をかけているのか確認する必要があります。)
StepFunction
sは便利なツールですが、各Stateでどこかと通信をしている場合は各Stateに再実行の設定を入れておくのが無難だと思います。(ログで失敗の履歴が追う際にも助けになるかもです。)
エラーで探してもあまり引っ掛かりがなく解決策で悩んでいたので誰かの助けになると幸いです。
以上hamaでした〜