lvm シンプロビジョニング (最新のカーネル/LVM2) でメタデータ サイズを拡張する方法を知りたいです。
[root@srv ~]# lvs -a
LV VG Attr LSize Pool Origin Data% Meta%
lv1 volgroup1 twi-aotz-- 125.00g 25.80 23.32
[lv1_tdata] volgroup1 Twi-ao---- 125.00g
[lv1_tmeta] volgroup1 ewi-ao---- 96.00m
lvol0 volgroup1 -wi-a----- 96.00m
[lvol1_pmspare] volgroup1 ewi------- 96.00m
いくつか質問があります:
- 上記の「lvs」コマンドでは、23.32% が Meta% です。これは、96M のうち 23.32% が META (または合計 125G) に使用されていることを意味しますか?
- lvol1_pmspare は meta のスペア コピーです。lv1_tmeta を拡張するには、lvol1_pmspare を別途拡張する必要がありますか。
- thin_pool_chunk_size を変更したり、poolmetadatasize をより高い値に設定したりすることによるパフォーマンスへの影響。
- 理想的なメタデータ サイズを識別する方法。
どなたか、あなたの洞察を共有して、メタデータのサイズを拡張する方法について私を助けていただけませんか。
答え1
私は自分の質問に答えることで、知識を公開文書化しています。
使用できますレベル -a問題のメタデータと pmspare の詳細を表示します。
メタデータを拡張するには:
lvextend -L+128M volgroup1/lv1_tmeta
上記のコマンドが成功した後でも、lvol1_pmspare (メタデータ スペア) は元のサイズのままであることがわかります。"lvconvert --repair" プロセスはスペア メタデータ LV を再作成します。(または、lvol1_pmspare を削除し、lvconvert --repair を使用して再作成することもできます)
メタデータのサイズは 2M から 16G の範囲になります。理想的な値は常に、総量と操作の種類によって異なります。
答え2
これなら何もしなくてもうまくいきます--repair
。
lvextend --poolmetadatasize +2G vg0/lv0