Raspbianのiptables問題を解消する

概要 ラズパイでk3sクラスタを構築しそこでシステムを稼働させているのですが、ある日内部の処理がかなり低下していることに気づきました。raspbianに最初から入っているiptablesに無駄なエントリが徐々に増えていくバグがあり、iptablesをアンインストールすることで解消しました。 環境 raspberry pi3 b+ と pi4が混在したクラスタを構成しています。 $ cat /etc/os-release PRETTY_NAME="Raspbian GNU/Linux 10 (buster)" NAME="Raspbian GNU/Linux" VERSION_ID="10" VERSION="10 (buster)" VERSION_CODENAME=buster ID=raspbian ID_LIKE=debian HOME_URL="http://www.raspbian.org/" SUPPORT_URL="http://www.raspbian.org/RaspbianForums" BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs" 詳細 kubernetesで稼働しているプロセス溜まっており、詳しく見てみると通常数百ms程度で動作していた処理が数秒かかっているようでした。 不要なログは伏せています 遅い処理時間 単純なAPIリクエストからレスポンスまでの時間を測っているだけですので数秒かかるのは遅すぎます。 Nodeの負荷もかなり高かったためプロセスを確認すると以下のとおりksoftirqdとiptablesが怪しそうです。 重いnodeのプロセス そこでGitHubを漁っていたらHigh load due to ksoftirqd, growing iptables rulesというissueを見つけました。 こちらのコメントの通りルールをリストしてwcかけてみるとやはり大きいようです、3MBもある $ sudo iptables -L | wc # Warning: iptables-legacy tables present, use iptables-legacy to see them 18606 393165 3159290 またこちらで言及されているiptablesのバージョンにも近いようです。これはraspbianインストール時に最初から入っているiptablesです。...

October 17, 2021 · 1 min · Me

Launch NFS on Raspberrypi

Introduction NFS is very useful tool to mount volumes and share files. That is also used as a PersistentVolume of Kubernetes, so it is meaningfull that to know how to launch nfs server on your RaspberryPi on recent k3s movement. Install NFS If you use raspbian, you just execute a command. $ sudo apt-get install -y nfs-common nfs-server Please make directory to be mounted. $ sudo mkdir /mnt/share $ sudo chmod -R 777 /mnt/share Then, add setting to /etc/exports...

May 5, 2019 · 2 min · Me

Launch Plex on RaspberryPi k3s Cluster

Introduction Plex is a media server works on Linux. You can enjoy movie or music from Plex, and the UI is very useful. This works as DLNA server too, and the setting is very easy. If you buy PlesPass, which is paid version of Plex, additional function is unlocked for you. However, free version is also enough for the basic funcionality. People may operate Plex on docker, but operating it on Kubernetes is meaningful for the users who operate many apps other than Plex....

May 5, 2019 · 3 min · Me

Install Helm to ARM k3s cluster

Introduction Helm is a tool for deploying apps to Kubernetes. It is time consuming that deploying a bunch of pods by hand, but Helm is very useful for such situation. Helm enables users to deploy many resources Kubernetes at once. It also works like “apt” or “yum” because you can load Helm charts that made by someone else from Helm repository. This page introduces that how to install Helm to your ARM k3s cluster....

May 4, 2019 · 2 min · Me

Connect to Raspberrypi with SSH

Introduction After you setup Raspberry pi like this page, you are able to execute any command and get response from HDMI monitor. To make it more useful, you might think to log in from remote host. I will introduce the way how to set up ssh with Raspberry pi. Set password of pi account First of all you should change the password of pi account. Please hit this command. $ passwd After hit this command, a interactive setting will start, so please follow the guidance....

May 3, 2019 · 1 min · Me