Weitere ähnliche Inhalte Ähnlich wie OverlayFS を使って Raspberry Pi を Network Bootする (20) OverlayFS を使って Raspberry Pi を Network Bootする3. 今日の内容
Network Boot で Raspberry Pi を起動させる (SD 不要!)
+
Network Boot に使用するサーバー上のファイルを Overlay
File System を使って管理する
11. Network Boot ができるまで
• NFS の設定 (SD の中身を丸ごとコピー)
• TFTP の設定 (SD の /boot の中身を TFTP でExport)
• DHCP の設定
詳細は Document を参照!
https://www.raspberrypi.org/documentation/hardware/raspberrypi/bootmodes/net_tutorial.md
12. Raspberry Pi で Network boot
• SD カードよりも耐久性が高い
• 複数の起動イメージを切り替えられる
• 簡単にバックアップできる
• ディスクアクセスがやや遅い
• 常に有線 LAN のネットワーク接続が必要
14. Overlay File System とは?
Lower Dir 2
Lower Dir 1
Upper Dir
Overlay
File2
File1 File2 File3
File3
File1 File3
複数のディレクトリを層状に重ねて 1 つに見せる!
Read Only
Read/Write
16. Overlay FSを使用する際の手順
mount -t overlay overlay –o
lowerdir=./lower,upperdir=./upper,workdir=./work,nfs_export=on,index=on ./merg
ed
Linux カーネル Ver 4.16 以降が必要!
18. Network Boot & Overlay FS はいいぞ!
• 複数台のセットアップを一度で
• 複数の起動イメージを切り替えられる
• 好きなバージョンにロールバック
Hinweis der Redaktion 京都大学3回
今年から CAMPHOR- の運営 ここまで 0:20-0:30
話すこと
Raspberry Pi でネットブート
ファイルの管理に Overlay FS をサーバー側で使う
ここまでで 1:00 程度
そもそも、ネットブートとはなにか?
これは Raspberry Pi が起動する際のかなり大まかな処理の順序。
電源が入ると最初にブートローダー読み込む。
ブートローダーによって、カーネルがロードされる。
そのあとは様々な処理が入るが、今回重要になってくるのはファイルシステムのマウント。他に関しては省略!
で、赤枠の部分がネットブートの場合は大きく違っている! ここまでで 1:30 程度
Network Boot において重要になってくるプロトコルの紹介。
DHCP は自動的に IP アドレス、 NDS のアドレスなどのネットワークの設定を行うプロトコル
TFTP はネットワーク的な距離が近いコンピューターとの間で比較的小さなファイルを転送するのに適したプロトコル
NFS はネットワーク越しのコンピューターのファイルにアクセスするためのファイルシステムと、そのプロトコル。
マウントすればローカルと同じようにアクセスできる ブートローダーの読み込みに関して、 ブートローダーは普通は SD カードの boot ボリュームに格納されている。
が、ネットブートする際には
クライアントの端末が DHCP のリクエストを出す
サーバーがクライアント IP と一緒に TFTP サーバーの IP, ファイルのパスを通知する
のフローでブートローダーの場所を把握し、そのパスから TFTP で DL する ファイルシステムのマウントに関して話す。 ここまで 2:30 程度
ファイルも、通常は SD 上にある。
サーバー上のファイルを、NFS で export してルートディレクトリにマウントする。
サーバー、パスなどの設定はブートローダと一緒にある設定ファイルに記述。 特徴は、ファイルを全てサーバー上においてそこから Boot する!
これまでのアイデアを使えば Net Boot ができる!
Network Boot の設定を行う大まかな手順
NFS のセットアップ – SD の中身をそのままコピー、パーミッションに注意!
TFTP の設定 - /boot をそのまま
DHCP – ブートがらみの設定を
詳細は Document を参照、かなり丁寧に書いてある! ここまで 4:30-5:00
実際に Network Boot するときはのメリット、デメリットに関して、
メリットとして
HDD などの方が一般的に耐久性は高い
複数イメージの切り替えができる
バックアップが簡単 (後半の話!)
デメリットとして
ディスクアクセスがやや遅い場合が、スループットはそこそこだが応答速度に難あり
ネットワーク上のファイルを参照し続けるため、常にネットワーク接続 (有線) が必要! 「簡単にバックアップ」に関して、 Overlay FS で差分バックアップする話を後半はしていく。 Overlay File System とはこの図のように、複数のディレクトリを重ねるようにマウントすることで、一つに見せる仕組みのこと。
読み込みはそのファイルがある一番上のレイヤーから
書き込みは Upper の Layer に
File 4 みたいにファイルが存在する層より上の層に削除のマークが付いていればそのファイルは存在しないものとする。 先のスライドのようにレイヤーを重ねることで差分バックアップの差分をそれぞれ 1 つのディレクトリで表現できる。
Lower な層は Read Only なので、共有でき、それによって、バージョンの系列を分岐することができる。
また、下の方の層に直接 Upper Layer を置けるので、これがロールバックになる。
ここまで 7:00 程度
ネット上にあまり情報がなかったので実際に使用すべきコマンドを書いておく
赤字の部分が重要
Linux カーネルは 4.16 以降が必要。 (例えば Ubuntu 18.10 など) つまり、 Network Boot と Overlay File System を組み合わせるとデータ周りのメンテナンスが楽になる。
同じ設定、環境構築を一度で済ませられる
複数の起動イメージを切り替えられる。
好きなバージョンにロールバックできる。