मेरे सर्वर में 2GB रैम और 120GB SSD है, साथ ही स्टोरेज के लिए कुछ RAID सरणियाँ हैं। ओएस डेबियन 8 (लिनक्स 3.16) है।
मेरे पास एक MySQL गहन अनुप्रयोग है जिसमें tmpdir
= /run/mysqld
, जो tmpfs
डेबियन द्वारा कॉन्फ़िगर किया गया है /etc/default/tmpfs
:
# Size limits. Please see tmpfs(5) for details on how to configure
# tmpfs size limits.
TMPFS_SIZE=40%VM
यह हुआ करता था 20%VM
, जो लगभग 384M है। मैं कई लोगों के खिलाफ भागा no space left on device
, इसलिए मैंने इसे बढ़ा दिया है 40%VM
, लेकिन 763M के साथ यह अभी भी बहुत छोटा है।
अब मुझे अब अधिक रैम जोड़ना चाहिए, लेकिन जिज्ञासा से बाहर, मैं यहां की सीमाओं को जानना चाहता हूं।
/dev/sdd1
पर/
लगभग 50GB मुफ्त मुहिम शुरू की गई है, और यह काफी तेज़ है (Samsung 850 EVO SSD)/dev/sdd5
मेरा स्वैप विभाजन है, यह 3.7G है (fdisk प्रकार आईडी 82 है)TMPFS_SIZE
को सेट किया जाता है40%VM
, जिसका अर्थ/run
763M है
अब मुझे पता है कि tmpfs स्वैप कर सकते हैं, जो मेरे साथ ठीक है। मैं चाहता हूं कि जब भी संभव हो MySQL रैम को लिखें, लेकिन अगर इसे अधिक मेमोरी की आवश्यकता है, तो मैं सिस्टम को एसएसडी पर स्वैप करने की अनुमति दे सकता हूं।
तो मेरे सेटअप के साथ, क्या मैं धक्का /run
दे सकता हूं :
- 300 मीटर बड़ा? हाँ। वह डिफ़ॉल्ट था।
- 1.5GB बड़ा? हां, कोशिश की गई, MySQL ने इस पर 1.3GB तक का उपयोग किया और सिस्टम ने एक आकर्षण की तरह काम किया। लेकिन यह अभी भी आधे से कम भौतिक स्मृति + स्वैप विभाजन है।
- 2.5GB बड़ा? यह भौतिक मेमोरी से अधिक है, लेकिन आधे से कम भौतिक मेमोरी + मेरे स्वैप विभाजन से कम है।
- 4GB बड़ा? यह कसकर आधा शारीरिक + स्वैप में फिट होगा
- अधिक? 10GB की तरह? क्या यह
/
अधिक स्वैप करने के लिए मुक्त स्थान का उपयोग कर सकता है ?
मैं अनुमान लगा रहा हूं कि सुरक्षा के लिए अंगूठे का नियम TMPFS_SIZE
स्वैप + आधा भौतिक स्मृति से बड़ा नहीं है। क्या मैं स्वैप विभाजन को बढ़ाए बिना इससे आगे जा सकता हूं?
इसके अलावा, यह डाल करने के लिए संभव है 200%VM
में /etc/default/tmpfs
? मैंने यह tmpfs(5)
जानने के बिना पढ़ा है कि क्या मैं इस पर 100% लगा सकता हूं।
अंतिम, क्या मुझे /etc/fstab
इसके बजाय करना चाहिए और स्पर्श नहीं करना चाहिए /etc/default/tmpfs
?
(यह जानने के लिए कि मैंने केवल इसके साथ किया है mount -o remount
, मैंने अभी तक सर्वर को रिबूट नहीं किया है)
संपादित करें: अंतिम प्रश्न के लिए, मुझे पता है कि इसे /etc/fstab
(मैन पेज से नीचे का उद्धरण देखें) संशोधित किया जा सकता है , हालांकि मैं सबसे अच्छा अभ्यास जानना चाहता था, क्योंकि मैंने /etc/default
अब तक किसी भी चीज को नहीं छुआ है ।
अधिक जटिल माउंट विकल्पों का उपयोग / etc / fstab में एक उपयुक्त प्रविष्टि के निर्माण के द्वारा किया जा सकता है।