goofysとは
goofysはS3をフォルダとしてマウントできるミドルウェア。
kahing/goofys: a high-performance, POSIX-ish Amazon S3 file system written in Gomountコマンドやfstabを使ってS3の任意のパスをフォルダとしてマウントできて便利。
IMDSv2を必須にするとマウントに失敗する
SecurityHubを導入し、EC2に対するセキュリティ指摘[EC2.8]Amazon EC2 instances should use Instance Metadata Service Version 2 (IMDSv2)
に対応するとgoofys
のマウントが失敗するようになった。
参考: 【Terraform】EC2インスタンスでIMDSv2を必須にする
/var/log/messagesを確認すると以下の様なメッセージを確認できる。
error: NoCredentialProviders: no valid providers in chain. Deprecated.
goofysの現リリースバージョン(2023年3月現在)はIMDSv2をサポートしていない
GithubにIssueは上がっていて、最先端のコードではサポートしているらしい。
≫ goofys not compatible with imds v2 #727
≫ NoCredentialProviders error surfaces when using goofys on ec2 instances with IMDSv2 enabled. #671
Goofys Release Plan v0.25.0 によると2022年10月予定となっているが2023年3月現在でもリリースされていない。
対処
goofysの先端を自分でビルドする
- メリット: IMDSv2を必須にできる
- デメリット: (リリースバージョンに比べると)思わぬ不具合が入っている可能性がある。また、自前でビルド環境を用意する必要がある。
IMDSv1を許可する
- メリット: リリースバージョンを使える
- デメリット: IMDSv1を利用可能にする必要がありセキュリティ低下
\手を動かしながらTerraformを学びたい人にオススメ!/