የPFCACHE ቴክኖሎጂን በመጠቀም በመስቀለኛ መንገድ ላይ የመያዣ ጥግግት መጨመር

የPFCACHE ቴክኖሎጂን በመጠቀም በመስቀለኛ መንገድ ላይ የመያዣ ጥግግት መጨመር

የአስተናጋጅ አቅራቢው አንዱ ዓላማዎች ከፍተኛ ጥራት ያለው አገልግሎት ለዋና ተጠቃሚዎች ለማቅረብ የነባር መሳሪያዎችን አጠቃቀም ማሳደግ ነው። የዋና አገልጋዮች ሀብቶች ሁል ጊዜ የተገደቡ ናቸው ፣ ግን የተስተናገዱ የደንበኛ አገልግሎቶች ብዛት ፣ እና በእኛ ሁኔታ ስለ VPS እየተነጋገርን ያለነው ፣ በከፍተኛ ሁኔታ ሊለያይ ይችላል። ዛፉን እንዴት መውጣት እንደሚችሉ ያንብቡ እና ከተቆረጠው ስር በርገር ይበሉ።

ደንበኞቻቸው ጨርሶ በማይሰማቸው መንገድ VPSን በመስቀለኛ መንገድ ማጠቃለል የማንኛውም ማስተናገጃ አቅራቢ ኢኮኖሚያዊ አፈጻጸምን ለመጨመር ይረዳል። እርግጥ ነው፣ አንድ መስቀለኛ መንገድ በኮንቴይነሮች ከተጨናነቀ ከስፌቱ ላይ መበተን የለበትም፣ እና ማንኛውም የጭነት መጨመር ወዲያውኑ በሁሉም ደንበኞች ይሰማል።

በአንድ መስቀለኛ መንገድ ላይ ስንት VPS ማስተናገድ እንደሚቻል በብዙ ሁኔታዎች ላይ የተመሰረተ ነው፣ እንደ ግልጽ የሆኑት፡-

1. የመስቀለኛ ክፍል ሃርድዌር ባህሪያት
2. የ VPS መጠን
3. በ VPS ላይ ያለው ጭነት ተፈጥሮ
4. እፍጋትን ለማመቻቸት የሚረዱ የሶፍትዌር ቴክኖሎጂዎች

በዚህ አጋጣሚ የPfcache ቴክኖሎጂን ለ Virtuozzo የመጠቀም ልምዳችንን እናካፍላለን።
6 ኛውን ቅርንጫፍ እንጠቀማለን, ነገር ግን የተነገረው ሁሉ ለ 7 ኛም እውነት ነው.

Pfcache - IOPSን እና RAMን በመያዣዎች ውስጥ ለማባዛት የሚያግዝ የVirtuozzo ዘዴ፣ በኮንቴይነሮች ውስጥ ተመሳሳይ ፋይሎችን ወደ የተለየ የጋራ ቦታ ይመድባል።

በእውነቱ እሱ የሚከተሉትን ያጠቃልላል
1. የከርነል ኮድ
2. የተጠቃሚ-ቦታ ጋኔን
3. የተጠቃሚ-ቦታ መገልገያዎች

በመስቀለኛ መንገድ, በመስቀለኛ መንገድ ላይ ሁሉም VPS በቀጥታ ጥቅም ላይ የሚውሉ ፋይሎች የሚፈጠሩበት ሙሉ ክፍል እንመድባለን. በዚህ ክፍል ውስጥ የማገጃ ploop መሣሪያ ተጭኗል። ከዚያም መያዣው ሲጀምር ለዚህ ክፍል ማጣቀሻ ይቀበላል-

[root@pcs13 ~]# cat /proc/mounts
...
/dev/ploop62124p1 /vz/pfcache ext4 rw,relatime,barrier=1,data=ordered,balloon_ino=12 0 0
...
/dev/ploop22927p1 /vz/root/418 ext4 rw,relatime,barrier=1,data=ordered,balloon_ino=12,pfcache_csum,pfcache=/vz/pfcache 0 0
/dev/ploop29642p1 /vz/root/264 ext4 rw,relatime,barrier=1,data=ordered,balloon_ino=12,pfcache_csum,pfcache=/vz/pfcache 0 0
...

በአንደኛው መስቀለኛ መንገድ ላይ ባሉ የፋይሎች ብዛት ላይ ግምታዊ ስታቲስቲክስ እነሆ።

[root@pcs13 ~]# find /vz/pfcache -type f | wc -l
45851
[root@pcs13 ~]# du -sck -h /vz/pfcache
2.4G    /vz/pfcache
2.4G    total

የ pfcache መርህ የሚከተለው ነው-
• የተጠቃሚ-ስፔስ ዴሞን Pfcached የፋይሉን sha-1 hash በዚህ ፋይል የ xattr ባህሪ ላይ ይጽፋል። ሁሉም ፋይሎች አይሰሩም ነገር ግን በ / usr, /bin, /usr/sbin, /sbin, /lib, /lib64 ማውጫዎች ውስጥ ብቻ ነው.

• በእነዚህ ማውጫዎች ውስጥ ያሉት ፋይሎች "ይጋራሉ" እና በበርካታ ኮንቴይነሮች ጥቅም ላይ የሚውሉ ሊሆኑ ይችላሉ;

• Pfcached በየጊዜው ከከርነል ፋይሎችን የማንበብ ስታቲስቲክስን ይሰበስባል፣ ይመረምራል እና ፋይሎችን በተደጋጋሚ ጥቅም ላይ ከዋለ ወደ መሸጎጫው ያክላል፤

• እነዚህ ማውጫዎች የተለያዩ ሊሆኑ ይችላሉ እና በውቅረት ፋይሎች ውስጥ የተዋቀሩ ናቸው።

• ፋይል በሚያነቡበት ጊዜ፣ በ xattr የተራዘሙ ባሕሪያት ውስጥ የተገለጸውን ሃሽ እንደያዘ ይጣራል። በውስጡ የያዘ ከሆነ, ከመያዣው ፋይል ይልቅ "አጠቃላይ" ፋይል ይከፈታል. ይህ መተካት የሚከሰተው በመያዣው ኮድ ሳይታወቅ እና በከርነል ውስጥ ተደብቋል;

• ወደ ፋይል በሚጽፉበት ጊዜ, ሀሽው የተሳሳተ ነው. ስለዚህ በሚቀጥለው ጊዜ ሲከፍቱት የእቃ መያዣ ፋይሉ ራሱ ይከፈታል እንጂ መሸጎጫው አይደለም።

የተጋሩ ፋይሎችን ከ/vz/pfcache በገጽ መሸጎጫ ውስጥ በማቆየት በዚህ መሸጎጫ ውስጥ ቁጠባን እና እንዲሁም በ IOPS ውስጥ ቁጠባ እናገኛለን።ከዲስክ አስር ፋይሎችን ከማንበብ ይልቅ አንድ እናነባለን ይህም ወዲያውኑ ወደ ገፁ መሸጎጫ ይሄዳል።

struct inode {
...
 struct file             *i_peer_file;
...
};
struct address_space {
...
 struct list_head        i_peer_list;
...
}

የፋይሉ የቪኤምኤ ዝርዝር ነጠላ ሆኖ ይቆያል (ማህደረ ትውስታን እናባዛለን) እና ከዲስክ ብዙ ጊዜ አይነበብም (አይኦፖችን በማስቀመጥ ላይ)። የጋራ ፈንዳችን በኤስኤስዲ ላይ ይገኛል - ተጨማሪ የፍጥነት ትርፍ።

የ/ቢን/bash ፋይልን ለመሸጎጥ ምሳሌ፡-

[root@pcs13 ~]# ls -li /vz/root/2388/bin/bash
524650 -rwxr-xr-x 1 root root 1021112 Oct  7  2018 /vz/root/2388/bin/bash
[root@pcs13 ~]# pfcache dump /vz/root/2388 | grep 524650
8e3aa19fdc42e87659746f6dc8ea3af74ab30362 i:524650      g:1357611108  f:CP
[root@pcs13 ~]# sha1sum /vz/root/2388/bin/bash
8e3aa19fdc42e87659746f6dc8ea3af74ab30362  /vz/root/2388/bin/bash
[root@pcs13 /]# getfattr -ntrusted.pfcache /vz/root/2388/bin/bash
# file: vz/root/2388/bin/bash
trusted.pfcache="8e3aa19fdc42e87659746f6dc8ea3af74ab30362"
[root@pcs13 ~]# sha1sum /vz/pfcache/8e/3aa19fdc42e87659746f6dc8ea3af74ab30362
8e3aa19fdc42e87659746f6dc8ea3af74ab30362  /vz/pfcache/8e/3aa19fdc42e87659746f6dc8ea3af74ab30362

የአጠቃቀም ቅልጥፍናን እናሰላለን ዝግጁ ስክሪፕት.

ይህ ስክሪፕት በእያንዳንዱ መያዣ የተሸጎጡ ፋይሎችን በማስላት በመስቀለኛ መንገዱ ላይ ባሉት ሁሉም መያዣዎች ውስጥ ያልፋል።

[root@pcs16 ~]# /pcs/distr/pfcache-examine.pl
...
Pfcache cache uses 831 MB of memory
Total use of pfcached files in containers is 39837 MB of memory
Pfcache effectiveness: 39006 MB

ስለዚህ ከማህደረ ትውስታ ወደ 40 ጊጋባይት የሚጠጉ ፋይሎችን በኮንቴይነሮች እናስቀምጣለን፤ ከካሼው ላይ ይጫናሉ።

ይህ ዘዴ በተሻለ ሁኔታ እንዲሠራ, በጣም "ተመሳሳይ" VPS በመስቀለኛ መንገድ ላይ ማስቀመጥ አስፈላጊ ነው. ለምሳሌ, ተጠቃሚው ስርወ መዳረሻ የሌላቸው እና ከተዘረጋው ምስል አከባቢ የተዋቀረባቸው.

pfcacheን በማዋቀር ፋይል በኩል ማስተካከል ይችላሉ።
/etc/vz/pfcache.conf

MINSIZE፣ MAXSIZE - ለመሸጎጫ ቢያንስ/ከፍተኛው የፋይል መጠን
TIMEOUT - በመሸጎጥ ሙከራዎች መካከል ያለው ጊዜ አልቋል

የመለኪያዎችን ሙሉ ዝርዝር ማየት ይችላሉ ማያያዣ.

ምንጭ: hab.com

አስተያየት ያክሉ