შემოღებულია მიერ Წითელი ქუდი ში RHEL 7.5 და მოგვიანებით, VDO მოკლედ ვირტუალური თარიღის ოპტიმიზატორი არის ბლოკის ვირტუალიზაციის ტექნოლოგია, რომელიც უზრუნველყოფს მონაცემების შიდა დუბლირებას და შეკუმშვას ბლოკის მოწყობილობის დონეზე.
დუბლიკაციის იდეა საკმაოდ მარტივია: წაშალეთ დუბლიკატი მონაცემების ასლები და დარჩეთ მხოლოდ ერთი ასლით. როდესაც იდენტური ფაილი ემატება ბლოკ მოწყობილობას, ის აღინიშნება დუბლიკატად და მის ნაცვლად მითითებულია ორიგინალური ფაილი. ამით, VDO ხელს უწყობს ბლოკის მოცულობის სივრცის დაზოგვას.
ამ გაკვეთილში თქვენ შეისწავლით თუ როგორ უნდა შექმნათ VDO მოცულობა შენახვის მოწყობილობაზე RHEL 8 სისტემა.
დასაწყებად, შედით თქვენს სერვერზე და განაახლეთ თქვენი RHEL გამოყენებით dnf ბრძანება.
$ sudo dnf განახლება -y.
პაკეტებისა და ბირთვის განახლების დასრულების შემდეგ, გააგრძელეთ და დააინსტალირეთ VDO ბირთვის მოდულები და დამოკიდებულებები ბრძანების გამოყენებით.
$ sudo dnf დააინსტალირეთ kmod-kvdo vdo.
წარმატებული ინსტალაციის შემდეგ, დაიწყეთ, ჩართეთ და გადაამოწმეთ ვდო დემონი
$ sudo systemctl დაიწყეთ vdo. $ sudo systemctl ჩართეთ vdo. $ sudo systemctl სტატუსი vdo.
სანამ შექმნიდა ა ვდო მოცულობა, დარწმუნდით, რომ თქვენს სისტემაში გაქვთ დამატებითი მყარი დისკი. ამ გაკვეთილში ჩვენ დავამატეთ დამატებითი ტომი xvdb
. ამის დემონსტრირება შესაძლებელია გაშვებით lsblk ბრძანება ქვევით.
$ lsblk.
გამომავალიდან თქვენ აშკარად ხედავთ, რომ მეორე დისკს აქვს ტევადობა 100 GB.
ახლა ჩვენ შევქმნით ცარიელს VDO მოცულობა ჩართულია /dev/xvdb
დისკი.
$ sudo vdo შექმნა -სახელი = vdo1 -მოწყობილობა =/dev/xvdb --vdoLogicalSize = 300 გ.
თქვენ შეხვდებით ნაჩვენებ შეცდომას.
ეს არის ჩვეულებრივი შეცდომა და გამოსავალი არის თქვენი სერვერის უბრალოდ გადატვირთვა.
$ sudo გადატვირთვა.
მეორე ცდაზე ბრძანება შესრულდება, შექმნის ცარიელს VDO მოცულობა მოწყობილობაზე /dev/xvdb
.
$ sudo vdo შექმნა -სახელი = vdo1 -მოწყობილობა =/dev/xvdb --vdoLogicalSize = 300 გ.
მოდით დავანგრიოთ ბრძანება და გადავხედოთ გამოყენებულ ვარიანტს:
Ახალი VDO მოცულობა შეიქმნა ზე /dev/mapper/vdo1
მიდის იმ გამომავალი გზით, რაც წინა ნაბიჯში ვნახეთ. ჩვენ შეგვიძლია გამოვიყენოთ ბრძანება როგორც ნაჩვენებია ფაილის ნებართვების და საკუთრების შესამოწმებლად.
$ ls -l/dev/mapper/vdo1.
უფრო გამჭრიახი ინფორმაციის მისაღებად გამოიყენეთ ვდოსტატები ბრძანება მოცულობის ზომისა და გამოყენების შესახებ სტატისტიკის აღსადგენად.
$ vdostats -ჰუ.
--ჰუ
დროშა აჩვენებს ინფორმაციას ადამიანისთვის წაკითხული ფორმატით, ანუ ფორმატით, რომლის წაკითხვა და გაშიფვრა ადვილია. ჩვენ შეგვიძლია განვიხილოთ ატრიბუტები, როგორიცაა მოწყობილობის სახელი, ზომა დამატებით დისკზე, გამოყენებული და ხელმისაწვდომი სივრცე, როგორც %
გამოყენება.
ყურადღებით დააკვირდით, რომ %
დაზოგვა მითითებულია როგორც არ გამოიყენება (N/A).
ასევე, გაითვალისწინეთ, რომ ჩვენ უკვე გვაქვს გარკვეული მოცულობის გამოყენება 4.1 გ რაც ითარგმნება 4% ჯერ ჩვენ არაფერი გვაქვს დაწერილი მოცულობაზე. Რატომ არის, რომ? ეს იმიტომ ხდება, რომ უნივერსალური დუბლიკაცია უკვე დაწერილია დისკზე და ეს არის ის, რაც შესაძლებელს ხდის დუბლიკაციას.
ვდოსტატები ბრძანება შეიძლება გამოყენებულ იქნას -სიტყვიერი
დროშა უფრო დეტალური ინფორმაციის მისაღებად, როგორც ნაჩვენებია:
$ sudo vdostats --verbose/dev/mapper/vdo1 | grep -B6 "პროცენტის დაზოგვა"
რაც თქვენ შეგიძლიათ ნახოთ არის იგივე მონაცემები, როგორც წინა მაგალითი, მაგრამ განსხვავებული ფორმატით.
მოცულობიდან საკმარისი შეხედულების მიღების შემდეგ, ჩვენ უნდა გავყოთ იგი და შემდგომ შევქმნათ ფაილური სისტემა ისე, რომ ის გამოვიყენოთ როგორც ნორმალური დისკი.
მოდით შევქმნათ ფიზიკური მოცულობისა და მოცულობის ჯგუფი, როგორც ნაჩვენებია, შეასრულეთ შემდეგი ბრძანებები.
$ sudo pvcreate/dev/mapper/vdo1. $ sudo vgcreate vdo1vg/dev/mapper/vdo1.
მოცულობის ჯგუფის სტატისტიკის საჩვენებლად:
$ sudo vgdisplay vdo1vg.
ახლა ჩვენ შევქმნით 2 თანაბარი ზომის ლოგიკურ ტომს, თითოეული მოცულობით 50 გ.
$ sudo lvcreate -n vdo1v01 -L 50G vdo1vg. $ sudo lvcreate -n vdo1v02 -L 50G vdo1vg.
მოგვიანებით შეგიძლიათ ნახოთ ახლად შექმნილი მოცულობის სტატისტიკა ბრძანების შესრულებით.
$ sudo lvs.
ჩვეულებრივ, როდესაც ფაილური სისტემა იქმნება, მოწყობილობაზე ტარდება ოპერაცია. ეს არასასურველია იმ შემთხვევაში VDO. ფორმატის გამოყენებისას mkfs ბრძანება, გამოიყენეთ -კ
ვარიანტი ბრძანების მითითება არ გადაყაროთ ბლოკები ფაილური სისტემის შექმნისას.
$ sudo mkfs.xfs -K/dev/vdo1vg/vdo1v01. $ sudo mkfs.xfs -K/dev/vdo1vg/vdo1v02.
თუ იყენებთ EXT $ ფაილური სისტემა, გამოიყენეთ "-ე ნოდისკარდი”ვარიანტი.
შექმენით სამონტაჟო წერტილები მოცულობის დასაყენებლად:
$ sudo mkdir /data /v01. $ sudo mkdir /data /v02.
ახლა დააინსტალირეთ ფაილური სისტემები მათ მთაზე, როგორც ნაჩვენებია.
$ sudo mount -o discard/dev/vdo1vg/vdo1v01/data/v01. $ sudo mount -o discard/dev/vdo1vg/vdo1v02/data/v02.
ახლა, როდესაც თქვენ შეამოწმებთ VDO მოცულობა შეამჩნევთ, რომ %
გადარჩენა შეიცვალა 99% რაც საკმაოდ შთამბეჭდავია. ეს ნიშნავს, რომ დუბლიკაცია მუშაობს ისე, როგორც მოსალოდნელი იყო.
$ sudo vdostats -ჰუ.
თქვენ შეგიძლიათ გააგრძელოთ გამოკვლევა პროგრამის გამოყენებით df -Th ბრძანება. ქვედა ნაწილში ნახავთ ფაილურ სისტემებს, რომლებიც დამონტაჟებულია /data/v01
და /data/v02
შესაბამისად.
$ df -hT.
ამ გაკვეთილში ჩვენ ვაჩვენეთ, თუ როგორ შეგიძლიათ შექმნათ VDO ტომი დამატებითი საცავის მოწყობილობიდან RHEL 8. ჩვენ მოგვიანებით გავაგრძელეთ და ვაჩვენეთ, თუ როგორ შეგიძლიათ შექმნათ მეტი ტომი და შექმნათ ფაილური სისტემა ამ ტომიდან.