ZFS ARC कैश ट्यूनिंग

Proxmox डिफ़ॉल्ट रूप से zfs_arc_max को सिस्टम RAM का 50% सेट करता है, 16 GiB पर सीमित है। 64 GiB होम लैब होस्ट पर जो चार VMs चला रहा है, वह शायद ही कभी वह है जो आप वास्तव में चाहते हैं, और यहां गलत मान चुप-चाप आपके VMs को RAM से भूखा कर देता है जब ही एक ARC-heavy बैकअप शुरू होता है। डेस्कटॉप और होम-लैब सर्वर पर ZFS ARC कैश ट्यूनिंग के लिए सर्वश्रेष्ठ ऐप्स आपको दो चीजें देते हैं जिनकी आपको फैसले के लिए आवश्यकता है: वर्तमान हिट दर, और हेडरूम-जागरूक साइजिंग।

हमने सात पिक का परीक्षण किया, सभी Linux पर चलाने योग्य (जहां OpenZFS वास्तव में रहता है), डैशबोर्ड साइड के लिए Windows और macOS क्लाइंट के साथ कई। छह मुफ्त हैं। सभी सात Proxmox होम लैब के साथ अच्छी तरह से जोड़ी जाती हैं।

क्या खोजें

इस सूची में प्रत्येक उपकरण को आपकी ARC ट्यूनिंग के लिए तीन प्रश्नों का उत्तर देना होगा:

चुनाव तीन समूहों में विभाजित होते हैं: CLI उपकरण जो OpenZFS के साथ आते हैं, डैशबोर्ड जो CLI डेटा की कल्पना करते हैं, और आर्केस्ट्रेशन उपकरण जो ARC राज्य को स्नैपशॉट के साथ प्रबंधित करते हैं।

त्वरित तुलना

ऐप सर्वश्रेष्ठ प्लेटफॉर्म मुफ्त योजना शुरुआत मूल्य लाइसेंस
arc_summary विस्तृत ARC विभाजन Linux, FreeBSD, macOS हाँ मुफ्त CDDL
arcstat रीयल-टाइम ARC निगरानी Linux, FreeBSD हाँ मुफ्त CDDL
zpool iostat पूल-स्तरीय I/O आंकड़े Linux, FreeBSD, macOS हाँ मुफ्त CDDL
Cockpit Proxmox alt के लिए वेब डैशबोर्ड Linux हाँ मुफ्त LGPL
Netdata रीयल-टाइम ARC ग्राफ़ Linux, macOS, FreeBSD हाँ मुफ्त स्तर GPL / क्लाउड
Prometheus + Grafana पूर्ण ऐतिहासिक डैशबोर्ड Linux, क्रॉस-प्लेटफॉर्म UI हाँ मुफ्त Apache 2
Sanoid स्नैपशॉट + ARC समन्वय Linux हाँ मुफ्त GPLv3

1. arc_summary – सर्वश्रेष्ठ विस्तृत ARC विभाजन

arc_summary OpenZFS के साथ आता है और ARC ट्यूनिंग के लिए सबसे उपयोगी कमांड है। arc_summary चलाने से हिट अनुपात, MFU बनाम MRU संतुलन, प्रीफेच प्रभावशीलता, और L2ARC स्थिति सभी एक रिपोर्ट में मुद्रित होती है। Proxmox VE 8.x और 9.x पर यह पहले से स्थापित है।

जहां यह कम पड़ता है: केवल CLI। कोई ऐतिहासिक डेटा नहीं (यह “अभी” का स्नैपशॉट है)।

मूल्य निर्धारण:

प्लेटफॉर्म: Linux, FreeBSD, macOS जहां कहीं OpenZFS स्थापित है।

डाउनलोड: Debian/Proxmox पर zfsutils-linux पैकेज में शामिल। openzfs.org देखें।

निचली पंक्ति: हर ट्यूनिंग सेशन को इसे चलाकर शुरू करें। बाकी सब कुछ वैकल्पिक है।

2. arcstat – रीयल-टाइम ARC निगरानी के लिए सर्वश्रेष्ठ

arcstat arc_summary का रीयल-टाइम साथी है। arcstat 1 चलाने से हिट अनुपात, MRU/MFU हिट, और demand-hit प्रतिशत का प्रति-सेकंड दृश्य मिलता है। ARC आकार परिवर्तन के प्रभाव को रीयल-टाइम में देखने के लिए बिल्कुल सही।

जहां यह कम पड़ता है: केवल CLI। बहुत-स्तंभ आउटपुट समझ में आने के लिए कुछ पढ़ना लेता है।

मूल्य निर्धारण:

प्लेटफॉर्म: Linux, FreeBSD।

डाउनलोड: zfsutils-linux पैकेज में शामिल।

निचली पंक्ति: ARC ट्यूनिंग परिवर्तन वास्तव में तुरंत मदद की पुष्टि के लिए सर्वश्रेष्ठ पिक।

3. zpool iostat – पूल-स्तरीय I/O आंकड़ों के लिए सर्वश्रेष्ठ

zpool iostat CLI त्रिकोण को पूरा करता है। जहां arc_summary और arcstat कैश को कवर करते हैं, zpool iostat नीचे पूल दिखाता है: read/write ops, बैंडविड्थ, और प्रति vdev विलंबन। यह है कि आप “ARC अंडरसाइज्ड है” से “पूल स्वयं धीमा है” को कैसे अलग करते हैं।

जहां यह कम पड़ता है: केवल CLI। विलंबन संख्याओं की व्याख्या करने की आवश्यकता है।

मूल्य निर्धारण:

प्लेटफॉर्म: Linux, FreeBSD, macOS।

डाउनलोड: OpenZFS के साथ शामिल।

निचली पंक्ति: उपकरण जो बताता है कि क्या ARC ट्यूनिंग वास्तव में मदद करेगी, या क्या आपकी बाधा कहीं और है।

4. Cockpit – Proxmox alt के लिए सर्वश्रेष्ठ वेब डैशबोर्ड

Cockpit Red Hat का वेब-आधारित सर्वर डैशबोर्ड है, और इसका ZFS प्लगइन ब्राउज़र UI के माध्यम से ARC स्थिति, पूल स्वास्थ्य, और डेटासेट गुण प्रदर्शित करता है। यदि आप TrueNAS SCALE चलाते हैं, तो Cockpit गैर-TrueNAS होस्ट के लिए प्राकृतिक वेब कंसोल है।

जहां यह कम पड़ता है: TrueNAS वेब UI जितना पॉलिश नहीं। ZFS प्लगइन कवरेज CLI गहराई की तुलना में बुनियादी है।

मूल्य निर्धारण:

प्लेटफॉर्म: Linux (सर्वर)। कोई भी ब्राउज़र (क्लाइंट)।

डाउनलोड: cockpit-project.org

निचली पंक्ति: यदि आप गैर-Proxmox होस्ट पर वेब UI चाहते हैं तो सर्वश्रेष्ठ पिक।

5. Netdata – रीयल-टाइम ARC ग्राफ़ के लिए सर्वश्रेष्ठ

Netdata प्रति सेकंड सैकड़ों मीट्रिक्स एकत्र करता है और इसका ZFS मॉड्यूल ARC हिट अनुपात, आकार, और निष्कासन दरों को रीयल-टाइम स्ट्रीमिंग चार्ट के रूप में प्रदर्शित करता है। मुक्त स्तर पूरी तरह से आपकी मशीन पर चलता है और कभी भी घर नहीं बुलाता। क्लाउड स्तर बहु-होस्ट एकत्रीकरण के लिए वैकल्पिक है।

जहां यह कम पड़ता है: आक्रामक डिफ़ॉल्ट पोलिंग कम-शक्ति वाले होस्ट पर CPU लोड को माप सकती है। क्लाउड सुविधाएं भुगतान किया गया पथ हैं।

मूल्य निर्धारण:

प्लेटफॉर्म: Linux, FreeBSD, macOS।

डाउनलोड: netdata.cloud

निचली पंक्ति: यदि आप Prometheus और Grafana को स्वयं सेट किए बिना रीयल-टाइम स्ट्रीमिंग ARC ग्राफ़ चाहते हैं तो सर्वश्रेष्ठ पिक।

6. Prometheus + Grafana – पूर्ण ऐतिहासिक डैशबोर्ड के लिए सर्वश्रेष्ठ

Prometheus + Grafana ऐतिहासिक निगरानी के लिए उद्योग-मानक संयोजन है। समुदाय प्रकल्प zfs_exporter ARC और पूल आंकड़ों को scrapes, Prometheus उन्हें संग्रहीत करता है, और Grafana उन्हें डैशबोर्ड के साथ प्रदान करता है जो आप साझा कर सकते हैं (या समुदाय से खींच सकते हैं)।

जहां यह कम पड़ता है: सेटअप एक कमांड नहीं है। आप तीन सेवाएं (exporter, Prometheus, Grafana) चला रहे हैं और प्रतिधारण को कॉन्फ़िगर कर रहे हैं।

मूल्य निर्धारण:

प्लेटफॉर्म: कलेक्टर के लिए Linux; Grafana के लिए ब्राउज़र (Windows, macOS, Linux)।

डाउनलोड: prometheus.io, grafana.com, github.com/pdf/zfs_exporter

निचली पंक्ति: यदि आप मिनटों नहीं, महीनों में ARC हिट दर को ट्रैक करना चाहते हैं तो सर्वश्रेष्ठ पिक।

7. Sanoid – स्नैपशॉट और ARC समन्वय के लिए सर्वश्रेष्ठ

Sanoid ZFS स्नैपशॉट को प्रबंधित करता है, और इसका Syncoid साथी प्रतिकल्पना को संभालता है। दोनों सीधे ARC को ट्यून नहीं करते हैं, लेकिन Sanoid की अनुसूची ARC दबाव को आकार देती है: एक आक्रामक स्नैपशॉट cadence कैश churn उत्पन्न करता है। आपकी ARC हिट दर के आगे Sanoid के config को पढ़ना है कि आप कैसे कैप्चर करते हैं “हमारा ARC ठीक है सिवाय 2 बजे रात जब स्नैपशॉट हिट करते हैं।”

जहां यह कम पड़ता है: स्वयं एक ARC उपकरण नहीं। केवल पूर्ण ZFS परिचालन चित्र के भाग के रूप में उपयोगी।

मूल्य निर्धारण:

प्लेटफॉर्म: Linux।

डाउनलोड: github.com/jimsalterjrs/sanoid

निचली पंक्ति: यदि आपकी ARC हिट दर दिन के दौरान ठीक है लेकिन स्नैपशॉट विंडो के दौरान गिरती है तो यह चुनें।

सही एक को कैसे चुनें

FAQ

Proxmox पर ZFS ARC के लिए सही आकार क्या है?

अपने VMs और Proxmox के लिए RAM आरक्षित करें (2 से 4 GiB), और ZFS को बाकी दें। 64 GiB होस्ट पर दो 24 GiB VMs चला रहे हैं, जो ARC के लिए लगभग 12 GiB है। रूढ़िवादी रूप से शुरू करें और यदि arc_summary 80% के नीचे हिट दर दिखाता है तो बढ़ें।

मैं Proxmox पर zfs_arc_max कैसे सेट करूं?

/etc/modprobe.d/zfs.conf लाइन options zfs zfs_arc_max=BYTES के साथ बनाएं, फिर update-initramfs -u चलाएं और रीबूट करें। BYTES को कच्चे बाइट में अपने चुने गए मान से बदलें।

क्या L2ARC लायक है?

केवल अगर आपकी ARC हिट अनुपात पहले से 90% से ऊपर है और आप लगातार मिस देख रहे हैं। इसके नीचे, आप मुख्य ARC के लिए अधिक RAM चाहते हैं। यदि L2ARC हिट दर 20% के नीचे रहती है, तो SSD स्लॉट विशेष vdev या पूल दर्पण के लिए बेहतर उपयोग किए जाते हैं।

arc_summary क्या है और मैं इसे कैसे चलाऊं?

arc_summary एक CLI स्क्रिप्ट है जो OpenZFS के साथ आता है। Proxmox शेल में root के रूप में चलाएं। यह हिट अनुपात, MFU बनाम MRU संतुलन, और L2ARC स्थिति सहित पूर्ण ARC रिपोर्ट मुद्रित करता है।

बड़े बैकअप के बाद मेरा Proxmox VM धीमा क्यों है?

लगभग हमेशा ARC निष्कासन दबाव। बैकअप कैश के माध्यम से बड़ी मात्रा को खींचता है और गर्म VM डेटा को निष्कासित करता है, इसलिए अगला VM पढ़ना एक धीमा पूल हिट है। बैकअप के दौरान पुष्टि के लिए arcstat 1 देखें।