Di Linux, nama penuh pemeta ialah "Pemeta peranti", yang merupakan mekanisme pemetaan daripada peranti logik kepada peranti fizikal di bawah mekanisme ini, pengguna boleh menguruskan sumber storan mengikut keperluan mereka sendiri; tiga konsep penting: peranti dipetakan, peranti sasaran, dsb.
Persekitaran pengendalian tutorial ini: sistem linux5.9.8, komputer Dell G3.
1. Apakah itu pemeta dalam Linux
Nama penuh pemeta ialah "Pemeta peranti" , yang mana ialah Linux 2.6 kernel Mekanisme pemetaan daripada peranti logik kepada peranti fizikal yang disediakan dalam .
Pengurus volum logik yang popular pada masa ini di bawah Linux seperti LVM2 (Versi Pengurus Volume Linux 2), EVMS (Sistem Pengurusan Volume Perusahaan), dmraid (Alat Serbuan Pemeta Peranti), dll. semuanya berdasarkan ini dilaksanakan oleh mekanisme.
Fungsi penting pemeta Peranti adalah untuk memajukan permintaan IO daripada peranti yang dipetakan peranti logik ke peranti sasaran yang sepadan berdasarkan perhubungan pemetaan dan peraturan pemprosesan IO yang diterangkan oleh pemacu sasaran.
Pemeta peranti didaftarkan dalam kernel sebagai pemacu peranti blok Ia mengandungi tiga konsep objek penting, peranti dipetakan, jadual pemetaan dan peranti sasaran.
Pemeta peranti agak mudah dalam ruang pengguna, terutamanya termasuk pustaka pemeta peranti dan alat dmsetup.
Pustaka pemeta peranti ialah enkapsulasi operasi yang diperlukan untuk ioctl dan ruang pengguna untuk mencipta dan memadam peranti logik pemeta peranti
dmsetup ialah arahan yang menyediakan pengguna dengan arahan yang tersedia secara langsung buat dan padam peranti pemeta peranti.
Fungsi:
Anda boleh menggabungkan berbilang peranti fizikal menjadi satu peranti logik, anda boleh melakukan penggabungan biasa, atau melaksanakan jaluran serupa dengan raid0, anda juga boleh menggunakan To shield bad sector dalam cakera keras, anda juga boleh membuat syot kilat lvm untuk menyandarkan pangkalan data, atau menggunakan fail peranti sifar untuk mensimulasikan peranti yang sangat besar untuk menguji fungsi.
Pemeta peranti ialah teknologi asas lvm dan penggandaan.
2. Pakej pemasangan:
device-mapper
device-mapper-multipath
3 Prinsip:
Cipta peranti logik (korrespondensi antara peranti fizikal dan setiap sektor peranti logik) melalui jadual pemetaan. Kandungan jadual termasuk:
Sektor permulaan peranti logik:
Biasanya 0 Sektor jenis nombor peranti logik (linear
Linear, gabungan berterusan; striped
Jaluran; error
Melindungi sektor buruk ; snapshot
Snapshot;zero
Peranti sifar)
4. Pengiraan sektor cakera:
1 sektor = 512 perkataan Bahagian b 1kb. =1024b Saiz sektor kb=bilangan sektor512/1024 Contohnya, untuk cakera 10G, bilangan sektor ialah:
10000000kb=bilangan sektor512/1024=2000
#blockdev --getsize /dev/sda6 查看设备扇区数量 #echo “0 ‘blockdev --getsize /dev/sda6’ linear /dev/sda6 0” | dmsetup create mydevice
5 Ciri peranti jenis linear: Sektor bersebelahan berbilang partition fizikal. digabungkan menjadi peranti logik. 0 20000 linear /dev/sda1 0 20000 60000 linear /dev/sdb1 0 Nota:
Peranti logik diambil dari sda1 dari sektor 0 ke sektor 20000, dan peranti logik diambil dari sektor 20000 ke sektor 20000. sektor 0 daripada sdb1, 60,000 sektor diambil, dan peranti logik mempunyai 80,000 sektor. Laksanakan arahan#echo “0 20000 linear /dev/sda1 0\n20000 60000 linear /dev/sdb1 0” | dmsetup create mydevice
6.jalur jalur: tulis ke cakera 0 1024 jalur 2 256 / melalui
seterusnya dev /sda1 0 /dev/sdb1 0 Nota: Peranti logik bermula dari sektor 0 hingga sektor 1024, jenis berjalur, 2 peranti, chunksize 256kb dari sektor 0 /dev/sda1 dan /dev/sdb1 Mulakan dengan mengambil 512 sektor setiap satu (perhatikan bahawa bilangan sektor mestilah bergandaan daripada pelaksanaan Perintah chunksize
#echo “0 1024 striped 2 256 /dev/sda1 0 /dev/sdb1 0” | dmsetup create mydevice
7.ralat: Alih keluar sektor ralat melalui peranti logik sintetik 0 80 linear /dev/sda1 0 80 100 ralat 181 200 linear /dev/sdb1 0 arahan untuk mencapai
#echo “0 80 linear /dev/sda1 0\n80 100 error\n181 200 linear /dev/sdb1 0” | dmsetup create mydevice
8.syot kilat volum logik Ciri: Selepas mencipta syot kilat, 3 peranti muncul (peranti asal, peranti syot kilat, peranti lembu Jika data tidak berubah, baca data daripada peranti asal dan tulis berubah Data disimpan dalam kawasan lembu, dan peranti syot kilat menyimpan data peranti asal.
#echo ―0 1000 snapshot /dev/sda1 /dev/vg0/realdev P 16 ‖ | dmsetup create mydevice从0扇区到1000扇区为/dev/sda1创建快照,名字为realdev,P表示下次启动仍然生效,16为chunksize
9 ciri peranti sifar: Serupa dengan /dev/zero, tetapi ia adalah peranti blok dan tidak boleh menulis apa-apa. . Biasanya digunakan untuk ujian, mencipta sistem fail yang besar untuk ujian. Sebagai contoh, ujian mencipta peranti 10T yang diformatkan dengan ext3
#export HUGESIZE=$[100 * (2**40)/512] 100T的扇区数量 2**40为2的40次方 #echo "0 $HUGESIZE zero" | dmsetup create zerodev 生成的文件在/dev/mapper/zerodev ext3每个分区最大支持2TB
10. Ciri berbilang laluan: 多路径功能,用来提供线路冗余,监控每条链路,当链路失败时自动切换链路,而且自动恢复运行,防止单点故障。生成的设备名 /dev/dm-X 类型: multipath列出多路径设备,后台需要开启multipathd服务,优先级大小为0-1024 实验步骤: 存储端配置双网卡,配置/dev/sda6为iscsi设备 服务器端安装device-mapper-multipath包,连接iscsi设备 11.FC存储: 存储端建立raid设备,raid建立与HBA卡WWN号的映射关系(连接哪个HBA卡则使用哪块磁盘设备) WWN为HBA卡的授权名称,用来区分一个或一组网络连接,表示网络上的一个连接 相关推荐:《Linux视频教程》 Atas ialah kandungan terperinci Apa itu mapper dalam linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!
当两路径优先级相等:
负载均衡 当两路径优先级不等: 冗余#vi /etc/multipath.conf 注释掉 blacklist { devnode "*" 不同厂商的配置是不一样的 } 取消注释 default{ udev_dir .. .. path_grouping_policy failover(根据失效域来判断执行策略) }
#systemctl enable multipathd
#systemctl restart multipathd 之后生成的设备位置在/dev/mpath/下,可制作文件系统,挂载
#multipath –ll 查询设备状态