動かざることバグの如し

近づきたいよ 君の理想に

Kubernetesでコントロールプレーンとワーカーノードを分けたい

環境

やりたいこと

たくさんノードがある中でコントロールプレーンとワーカーノードを分けたい

昔はコントロールプレーンのことマスターって言ってたらしい

コントロールプレーンにさせたい

結局の所ラベルで管理してるだけなのでkubecrlで変更できる 追加は「=」で削除が「-」

kubectl label nodes MYSERVER node-role.kubernetes.io/control-plane=

コントロールプレーンから外したい

kubectl label nodes MYSERVER node-role.kubernetes.io/control-plane-

ワーカーにさせたい

kubectl label nodes MYSERVER node-role.kubernetes.io/worker=

ワーカーから外したい

kubectl label nodes MYSERVER node-role.kubernetes.io/worker-

Macbook M1構築メモ

# 全ての拡張子のファイルを表示する
defaults write NSGlobalDomain AppleShowAllExtensions -bool true
# USB やネットワークストレージに .DS_Store ファイルを作成しない
defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool true
defaults write com.apple.desktopservices DSDontWriteUSBStores -bool true
# Finder のタイトルバーにフルパスを表示する
defaults write com.apple.finder _FXShowPosixPathInTitle -bool true
# 名前で並べ替えを選択時にディレクトリを前に置くようにする
defaults write com.apple.finder _FXSortFoldersFirst -bool true
# 不可視ファイルを表示する
# defaults write com.apple.finder AppleShowAllFiles YES
# 検索時にデフォルトでカレントディレクトリを検索する
defaults write com.apple.finder FXDefaultSearchScope -string "SCcf"
# 拡張子変更時の警告を無効化する
defaults write com.apple.finder FXEnableExtensionChangeWarning -bool false
# クイックルックでテキストを選択可能にする
defaults write com.apple.finder QLEnableTextSelection -bool true
# パスバーを表示する
defaults write com.apple.finder ShowPathbar -bool true
# ステータスバーを表示する
defaults write com.apple.finder ShowStatusBar -bool true
# タブバーを表示する
defaults write com.apple.finder ShowTabView -bool true
# スクリーンショットに日本語名が入らないように変更
defaults write com.apple.screencapture name Screenshot
killall Finder
killall Dock
killall SystemUIServer

WireGuardで「resolvconf: command not found」エラー

環境

問題

WireGuardのクライアント側の設定をして再起動しようとしたらエラーになる

/usr/bin/wg-quick: line 31: resolvconf: command not found

resolvconf?????????あるが????

解決策

resolvconf自体は最初からUbuntuにインストールされている。が、WireGuardからパスが見えてないのでシンボリックリンクを張ってあげる。

# ln -s /usr/bin/resolvectl /usr/local/bin/resolvconf

でおk

参考リンク

FFmpegを依存ライブラリなしで1ファイルで実行する

FFmpegのインストール重い問題

  • 自分でビルドする
    • 色々ライブラリインストールしなきゃいけない
  • 公式パッケージからビルド済みのバイナリをapt installする

    • 依存ライブラリも一緒にインストールされてしまう
  • もっとシンプルに1ファイルで実行できんのか

可能

静的ビルドすれば依存ライブラリもバイナリの中に入るので可能。が結局静的ビルドは自分でやるんかーいと思ってたら良いサイトを見つけた

www.johnvansickle.com

しかもいろんなアーキテクチャに対応

自分が今回つかったのはこれ

https://johnvansickle.com/ffmpeg/releases/ffmpeg-release-amd64-static.tar.xz

確認

いいね

$ ./ffmpeg --version
ffmpeg version 5.0.1-static https://johnvansickle.com/ffmpeg/  Copyright (c) 2000-2022 the FFmpeg developers
  built with gcc 8 (Debian 8.3.0-6)
  configuration: --enable-gpl --enable-version3 --enable-static --disable-debug --disable-ffplay --disable-indev=sndio --disable-outdev=sndio --cc=gcc --enable-fontconfig --enable-frei0r --enable-gnutls --enable-gmp --enable-libgme --enable-gray --enable-libaom --enable-libfribidi --enable-libass --enable-libvmaf --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librubberband --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libvorbis --enable-libopus --enable-libtheora --enable-libvidstab --enable-libvo-amrwbenc --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libdav1d --enable-libxvid --enable-libzvbi --enable-libzimg
  libavutil      57. 17.100 / 57. 17.100
  libavcodec     59. 18.100 / 59. 18.100
  libavformat    59. 16.100 / 59. 16.100
  libavdevice    59.  4.100 / 59.  4.100
  libavfilter     8. 24.100 /  8. 24.100
  libswscale      6.  4.100 /  6.  4.100
  libswresample   4.  3.100 /  4.  3.100
  libpostproc    56.  3.100 / 56.  3.100

ちなみにディレクトリ構造はこんな感じ

❯ ls -l
total 153672
drwxr-xr-x 2 thr3a thr3a     4096  4月  5 13:36 manpages
drwxr-xr-x 7 thr3a thr3a     4096  4月  5 12:58 model
-rw-r--r-- 1 thr3a thr3a    35147  4月  5 13:36 GPLv3.txt
-rwxr-xr-x 1 thr3a thr3a 78358336  4月  5 13:36 ffmpeg
-rwxr-xr-x 1 thr3a thr3a 78256480  4月  5 13:36 ffprobe
-rwxr-xr-x 1 thr3a thr3a   690888  4月  5 13:36 qt-faststart
-rw-r--r-- 1 thr3a thr3a     2234  4月  5 13:36 readme.txt

参考リンク