Macでsshfsをインストール
Mac で sshfs をインストール
Summary
brew install macfuse
brew install gromgit/fuse/sshfs-mac
Mac で sshfs を使うには?
Environment
MacBook Pro (13-inch, 2019, Four Thunderbolt 3 ports)
OS: macOS Big Sur 11.4
$ brew --version
Homebrew 3.1.9-121-g654c78c
Homebrew/homebrew-core (git revision 07324b2d0c; last commit 2021-06-05)
Homebrew/homebrew-cask (git revision d0a039f23c; last commit 2021-06-05)
$ telepresence version
Client: v2.3.0 (api v3)
Root Daemon: v2.3.0 (api v3)
User Daemon: v2.3.0 (api v3)
# k8s環境には、kindを使っています。
$ kind version
kind v0.11.1 go1.16.4 darwin/amd64
Contents
あまり日本語の情報がなかったので、記録しておきます。
telepresence を使って、k8s での pod の動きをデバッグしたい場合に、intercept のフラグに--mount=true
を渡してあげると、pod にマウントしている configMap などをローカルにマウントしてくれます。
そのマウント方法に sshfs が利用されていますが、sshfs を mac に install する際に詰まって日本語の情報もなかなか探せなかったので備忘録です。
sshfs のインストール方法を適当にググってみると
brew で osxfuse macfuse をインストールして、sshfs をインストールするだけで OK!みたいなことが書かれている情報に辿り着けましたが、自分の環境ではそうはいかず、
$ brew install sshfs
Error: sshfs has been disabled because it requires FUSE!
と、macfuse をいれていても FUSE が必要だよとインストールすることができません。
brew edit sshfs で覗いてみると
on_macos do
disable! date: "2021-04-08", because: "requires FUSE"
end
このように記述されています。brew の Formulae の書き方には、詳しくありませんが、どうも macos では、問答無用で macfuse の存在にかかわらず、FUSE が必要だよ!と怒るようになっている模様です。
そこで色々と対処法を探していると、この issue へのコメントに辿り着きました。
https://github.com/osxfuse/osxfuse/issues/801#issuecomment-833419942
macfuse を良い感じに使って、brew install するための formulae を提供してくださっている神がいらっしゃいました。
https://github.com/gromgit/homebrew-fuse
brew install gromgit/fuse/sshfs-mac
でインストールすることができました。
どうも telepresence2 になってから、あまり日本語の情報が出ていないようなのですが、実行コマンドは、
telepresence intercept <deployment名> -n <namespace> --mount=true -- <Podを差し替えたい実行コマンド>
↑ こんな感じで configMap などがローカルのTELEPRESENCE_ROOT
以下のディレクトリにマウントされ無事に実行できるかと思います。
telepresence2 の日本語情報が少なかったけれど、今なういデバッグの方法はなんかあるのかな。