HalNiの雑記

備忘録を兼ねて。サーバマシンとかネットワークとか

KVM 環境で virtio-mem を使用する ( openSUSE Leap 15.4 )

の記事はopenSUSE Advent Calendar 2022 8日目の記事です。

virtio-mem とは

virtio-memとは、ゲスト(仮想マシン)のメモリ提供手段の一つです。

Overview

A virtio-mem device manages a memory region in the the guest physical address space of a virtual machine and provides a dynamic amount of memory via this memory region to the virtual machine.

https://virtio-mem.gitlab.io/user-guide/

従来のメモリ管理の方法として virtio balloon memory がありましたが、virtio-memには ゲストに割り当てたメモリを、ゲストの起動中に縮小できる という特徴があります。

なお現在 Tech-preview扱いのため、本番環境での使用は推奨されていません。念のため。

動作要件

ネスト環境で virtio-mem は正常に動作しないため、L2ゲストに virtio-mem は使用できません。
またメモリを動的に縮小・完全に取り外し可能であるというvirtio-memの性質上、virtio-mem とは別に初期メモリの領域をゲストに割り当てる必要があります。

virtio-mem は新しい実装のため、qemu5.1.0-rc1 以降、libvirtv7.9.0-rc1 以降の環境が必要です。
注意点として、ゲストOSはLinuxのみ、かつ kernel 5.8-rc1 以降のみ対応しています。 また対応アーキテクチャは現時点で x64・aarch64のみです。

メジャーどころでは openSUSE Leap 15.4 や Fedora 36/37、RHEL 9.0/9.1 が上記の環境を備えています。

今回は openSUSE Leap 15.4 で構築したKVMホスト上で検証を行います。

検証環境:

GIGABYTE MZ32-AR0
- AMD EPYC 7401P / DDR4 256GB / PM1725(HHHL) 3.2TB

openSUSE Leap 15.4
- kernel : 5.14.21-150400.24.11
- qemu : 6.2.0-150400.37.5.3
- libvirt : 8.0.0-150400.5.8

現在の手元環境たち。機会があればそのうちまとめたい。

続きを読む

git send-email で Patch をメール送信する

タイトルの通り。

メーリングリストでコードの議論や修正が行われているコミュニティに対しては、Eメールでパッチを送る必要がある

その際、git send-emailコマンドを使用することで、テキストが崩れることなく送信が可能となる

検証環境:

  • Fedora 36
  • git / git-email 2.37.3

メールアカウント:yahooメール

パスワードを使用した SMTP 認証でメールを送信するため、今回は設定が簡単なyahooメールで検証を行っている

続きを読む

openSUSE Leap のライブアップグレードは2コマンドで完了するよ ( System live upgrade )

要約

openSUSE のマイナーバージョンをライブアップグレードする場合、15.3 → 15.4 の場合

zypper --releasever=15.4 refresh
zypper --releasever=15.4 dist-upgrade

でOK!


openSUSE 13や42では、マイナーバージョンのアップグレードにライブアップグレードを選択するのは推奨されておらず、 またライブアップグレードを行う場合はリポジトリの書き換え等の作業が必要だった

しかし現在ではリポジトリを書き換えることなく、たったの2コマンドの実行だけでライブアップグレードが可能になっている
リポジトリ内のURLにreleaserverの変数を使用しているため、アップグレードの際に変数をzypperに指定してあげればよい

15.3から15.4へのアップグレードを行う場合は--releaserver=15.4、15.2から15.3への場合は--releaserver=15.3となる

リポジトリのURLにはreleaserver変数が使用されている

続きを読む

Mellanox ( NVIDIA ) ConnectX-4 で InfiniBand EDR Mode を Ethernet 100G Modeに変換する

Mellanox ConnectX-4 を中古で購入したものの、IBモードだったので Ethモードへ変更した時のメモ。

カード2枚をCWDM4で直結させるスモールスタート構成

今回はWindowsマシンで作業を行っている

作業端末:Windows 10 21H2

とりあえずカードを差したPCのデバイスマネージャーを確認してみる

カード自体がIBモードでドライバだけEthのものが当たっているからか、IOエラーを吐いてドライバが停止している

Information の値もほとんど読み込めていない

Ethに変換するためのツールと、ドライバを作業端末にインストールする

続きを読む

openSUSE でシステム要件以下のドライブ容量にインストールしてみる

の記事はopenSUSE Advent Calendar 2021 11日目の記事です。

openSUSE Leap 15.3 では、インストールの推奨要件で / に 10GB 以上の割り当てが要求されています。 en.opensuse.org

HalNiの場合、一時的に仮想マシンを立ち上げたい時など、5GB のqcow2ファイルを作成して oepnSUSE をインストールさせています。

halni@localhost:~> df -h
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        970M     0  970M   0% /dev
tmpfs           982M     0  982M   0% /dev/shm
tmpfs           393M  948K  392M   1% /run
/dev/vda2       4.5G  2.1G  2.4G  47% /
tmpfs           982M     0  982M   0% /tmp
/dev/vda1       511M  152K  511M   1% /boot/efi
tmpfs           197M     0  197M   0% /run/user/1000

/が 5GB 以下の場合、guided setup が動作しないため
・/boot に 500MB
・/ に4.5GB
を手動で設定しています。

Serverパッケージをインストール(GUI無し)で、/下で約 2.2GB 使用されています。

ところでこのDisk容量、一体どこまで少なくしてインストールできるのか気になりませんか??
ということでDisk容量の限界値にチャンレンジしてみます。

続きを読む

KVM でゲストのストレージに Transient Disk を使用する ( openSUSE Tumbleweed )

の記事はopenSUSE Advent Calendar 2021 8日目の記事です。

transient diskとは、特定のディスクイメージ内の状態を基準として、ゲスト動作中の変更点をゲスト停止時に破棄し、次回立ち上げた時にまた特定の状態からゲストを開始させることで、 前回の起動時と同じ環境が維持されているというものです。

transient disk 自体は libvirt 6.9.0 で実装され、7.4.0ではホットプラグのサポートや単一イメージで複数のゲスト動作等が追加されています。
openSUSE の場合、 libvirt 7.1.0 である Leap 15.3 から transient disk を使用することができます。
Leap 15.2 まで(~libvirt 6.0.0 )では、サポートされてない旨の表示となり使用できません。

SUSE-152:~ # cat /etc/os-release | grep PRETTY_NAME
PRETTY_NAME="openSUSE Leap 15.2"

SUSE-152:~ # virsh start vm01
error: Failed to start domain Win10-test01
error: unsupported configuration: transient disks not supported yet

Tumbleweed では、現時点で libvirt 7.9.0 のため ディスクのゲスト間共有等も使用することができます。

検証環境:

Supermicro SuperServer 5028R-WR ( X10SRW-F )
openSUSE Tumbleweed : 20211129

続きを読む

ジャンクな Alexon Cloud Shelter のQNAP化

某所にてQNAPのOEMであるAlexon Cloud Shelter が大量に流通。今回は此奴と格闘した備忘録である

続きを読む

MAP-E対応のまともなルータまとめ

自分用まとめ。
A○USやB○ffalo、E○ecom 等の所謂ブロードバンドルータではない

※2021年8月現在。
新品価格: XTT-Xぷらっとオンライン
中古価格:ヤフオクの落札相場
を参照した

一覧:

Allied Telesis
・AT-AR1050V

Fujitsu
・Si-R G210

古河電工
・FITELnet F70

NEC
・IX 2105
・IX 2207

YAMAHA
・RTX830
・RTX1220
・NVR510

-------
Juniper
・SRX300

Fortinet
・Fortigate 40F
・Fortigate 60E

Allied Telesis

AT-AR1050V

https://www.allied-telesis.co.jp/products/list/router/ar1050v/images/ar1050v_1.jpg www.allied-telesis.co.jp

新品:30000円

AT-AR1050V は 新品が3万円ちょっとで購入可能。
新品で購入できるMAP-E対応のまともルータとしては多分最安。

続きを読む

最安のフルサイズ一眼を探して Nikon D600 を買った

※技術ブログではありません

昔から写真を撮ることが好きだ。
カメラやレンズのメーカー・ブランドに拘りはない。

初めて一眼カメラを手にしてから4年近く、Sony α55やNikon D7000等、様々なAPS-Cのカメラを使い続けてきた。
十分満足していたはずなのだが、フルサイズシステムで撮影された画像の

超広角での没入感、 Re-7823_201212

黒つぶれしない暗所耐性やハイダイナミックレンジ、 002

浅い被写界深度からくる奥行き感、 DSC_3101

これらのセンササイズの違いからくる差を目の当たりにしてしまい、自分もフルサイズセンサの世界を体感したいと思うようになってしまった

遊びで撮っているだけなのでセンサの性能はあまり気にしないし、古くても問題ない。
ただフルサイズセンサの画角やデフォーカス量、画素ピッチを体感したいだけなので。


まずは機材選定から。
価格は安ければ安いほど良い。よって5万円以下で取引されているボディを選定対象とした

続きを読む

ルータOS用Linux仮想化基盤をつくりたい ( openSUSE in UTM )

「小さくてNICが複数生えてるx86箱が手元に1台欲しい…。」

要件としては
x86 CPU 
・ネットワークインターフェースが2つ以上 or USB3.0 ポート搭載 (USB NIC用) ※1
・仮想化支援機能 VT-x or AMD-V 対応 ※2
・なるべく小さい ※3
・安い( 中古で5000円以下 ) ※4

といった感じです。

※1 VyOSSEILvSRX等で遊びたいためx86かつNICが複数ある機器にしたい
※2 FortiのVDOM的にソフトウェアルータを動作させたい、これの上位互換的にDockerを動かしたい…等
※3 ネットワーク機材として考えた時に、そこらのルータ(IX2215、G200、Forti60D等)以上の大きさのものは置きたくない
※4 それラズパイでよくね?とならないようにラズパイの価格よりも安く抑えたい

この要件、簡単そうに見えて最後の”安い”で大抵の機器(小型PC、NUC等)が候補から外れてしまいます。
しかし!中古UTMを漁ると、この条件に合致するものが出てくるのです…!
(有名なのは SS3000CE70/100 辺りとか…)
ただ中古UTM箱の最大の欠点として、構成やハードウェアスペック等の情報がほぼ公開されていません :innocent:
Twitter等にある人柱有志の情報しか手掛かりがなく、それすらない機種は外観や中古商品に提示されているBootLog、ACアダプタの容量から搭載CPU(SoC)を推測するなりOEM元を探したりした上で賭けに出るしかありません。これがUTMは沼といわれる所以…

結果買ったのはこれ。

f:id:v_7zrgu0:20201205001259j:plain
Neusoft NISG3000

続きを読む