सवाल क्या आप मेरी क्षमता योजना के साथ मेरी मदद कर सकते हैं?


यह है एक कैनोलिक सवाल के बारे में क्षमता की योजना

सम्बंधित:

मेरे पास क्षमता नियोजन के बारे में एक सवाल है। क्या सर्वर फॉल्ट समुदाय निम्नलिखित के साथ मदद कर सकता है:


  • मुझे किस प्रकार के सर्वर को संभालने की ज़रूरत है कुछ संख्या उपयोगकर्ताओं का?
  • सर्वर के साथ कितने उपयोगकर्ता कर सकते हैं कुछ विनिर्देशों संभाल?
  • मर्जी कुछ सर्वर विन्यास के लिए पर्याप्त तेज़ हो मेरा उपयोग मामला?
  • मैं एक सोशल नेटवर्किंग साइट का निर्माण कर रहा हूं: मुझे किस तरह के हार्डवेयर की आवश्यकता है?
  • मुझे कितनी बैंडविड्थ की आवश्यकता है कुछ परियोजना?
  • कितनी बैंडविड्थ होगी कुछ संख्या उपयोगकर्ताओं का उपयोग करें कुछ आवेदन?

131
2018-04-30 19:20


मूल




जवाब:


सर्वर फॉल्ट समुदाय आमतौर पर क्षमता नियोजन के साथ आपकी सहायता नहीं कर सकता है - हम जो सर्वोत्तम उत्तर दे सकते हैं वह है "हार्डवेयर पर अपने कोड को बेंचमार्क करें जो आप उत्पादन में उपयोग करेंगे, किसी भी बाधाओं की पहचान करें, फिर निर्धारित करें कि आपका वर्तमान हार्डवेयर कितना वर्कलोड कर सकता है, और / या आपके लक्षित वर्कलोड को संभालने के लिए आपको कितने हार्डवेयर अश्वशक्ति की आवश्यकता है"


क्षमता योजना में खेलने के कई कारक हैं जिन्हें हम किसी प्रश्न और उत्तर साइट पर पर्याप्त रूप से आकलन नहीं कर सकते हैं:

  • आपके विशेष कोड / सॉफ्टवेयर की आवश्यकताएं
  • बाहरी संसाधन (डेटाबेस, अन्य सॉफ्टवेयर / साइट्स / सर्वर)
  • आपका वर्कलोड (पीक, औसत, क्यूइंग)
  • प्रदर्शन का व्यापार मूल्य (लागत / लाभ विश्लेषण)
  • आपके उपयोगकर्ताओं की प्रदर्शन अपेक्षाएं
  • आपके पास हो सकता है कि कोई भी सेवा स्तर समझौते / अनुबंधिक दायित्व

इन कारकों और अन्य लोगों पर उचित विश्लेषण करना, एक साधारण प्रश्न-उत्तर-उत्तर साइट के दायरे से बाहर है: उन्हें आपके पर्यावरण और आवश्यकताओं के बारे में विस्तृत ज्ञान की आवश्यकता होती है, जो केवल आपकी टीम (या पर्याप्त रूप से मुआवजा सलाहकार) कुशलता से एकत्र हो सकती हैं।


कुछ क्षमता योजना सिद्धांत

  1. राम सस्ता है
    यदि आप अपने आवेदन को बहुत सी रैम का उपयोग करने की उम्मीद करते हैं तो आपको उतना ही रैम लगाया जाना चाहिए जितना आप बर्दाश्त / फिट कर सकते हैं।
  2. डिस्क सस्ता है
    यदि आप बहुत सारी डिस्क का उपयोग करने की उम्मीद करते हैं तो आपको बड़ी ड्राइव खरीदनी चाहिए - उनमें से बहुत सारे।
    SAN / NAS संग्रहण कम सस्ता है, और आमतौर पर बाद में महंगे अपग्रेड से बचने के लिए छोटे से बड़े पैमाने पर spec'd किया जाना चाहिए।
  3. समय के साथ वर्कलोड बढ़ता है
    मान लें कि आपकी संसाधन जरूरतों में वृद्धि होगी।
    ध्यान रखें कि वृद्धि सममित नहीं हो सकती है (सीपीयू और रैम डिस्क से तेज़ी से बढ़ सकता है), और यह रैखिक नहीं हो सकता है।
  4. बिजली महंगी है
    हालांकि रैम और डिस्क की कीमत में काफी कमी आई है, फिर भी बिजली की लागत तेजी से बढ़ी है। उन सभी अतिरिक्त डिस्क और रैम, सीपीयू पावर का उल्लेख नहीं करने के लिए, आपके बिजली बिल (या आपके द्वारा प्रदाता को भुगतान किए जाने वाले बिल) में वृद्धि होगी। तदनुसार योजना बनाएं।

94
2018-01-17 15:46



आपको इसे पूरी तरह से छोड़ देना चाहिए और भागों द्वारा एकीकरण का उपयोग करना चाहिए! - Gilles
+1। और रैम, जैसा कि आप सिद्धांत # 1 में सुझाव देते हैं, उन चीजों में से एक है जिनके बड़े पैमाने पर लाभ हैं। उदाहरण के लिए, यह कैशिंग का बेहतर उपयोग करने की आपकी क्षमता को बढ़ाता है, जो बदले में आपको कम डेटाबेस क्वेरी बनाने की अनुमति देता है, जो बदले में डिस्क और सीपीयू पर लोड को हल्का कर देता है। मैं अक्सर उन प्रदाताओं को होस्ट करके निराश हूं जो अपने सर्वर के साथ एक तेज सीपीयू और कम से कम रैम प्रदान करते हैं। - Steve Wortham
मैं इसमें जोड़ दूंगा: डिस्क क्षमता सस्ता है। डिस्क प्रदर्शन महंगा हो जाता है। खासकर जब हम 10 साल से अधिक डिस्क आकार में वृद्धि देखते हैं, लेकिन भौतिकी के नियम नहीं बदला है। अंगूठे का नियम जो मैं उपयोग करता हूं (आज के रूप में; जून 2014) यह है कि इष्टतम प्रदर्शन के लिए: एसएटीए पर प्रति स्पिंडल के 75 आईओपी, एफसी पर 200 आईओपी प्रति स्पिंडल और प्रति एसएसडी 1500 आईओपी। बिग सैटा ड्राइव प्रति गीगाबाइट अनुपात वास्तव में काफी गरीब आईओ प्रदान करते हैं। - Sobrique


आभासी मशीन गणना योजना

जब यह पता लगाने की बात आती है कि एक मेजबान पर आपको कितने वीएम की योजना बनाना चाहिए, वास्तव में अंगूठे का वास्तव में कोई अच्छा नियम नहीं है। वास्तव में, केवल एक ही है, और यह केवल एक अच्छा है:

वर्चुअल-मशीन गणना आमतौर पर राम द्वारा बाध्य होती है, सिवाय इसके कि जब वे नहीं हैं।

जो बहुत उपयोगी नहीं है। यदि वे वीएम कम-सीपीयू अनुप्रयोग चला रहे हैं, तो आपका limiter रैम पर आधारित होगा। प्रत्येक वीएम प्लेटफ़ॉर्म की रैम ओवरसब्सक्राइब करने की अपनी क्षमता होती है, इसलिए यह TOTAL_RAM / Per-VM-RAM = MachineCount जितना आसान नहीं है, लेकिन यह संख्या एक अच्छी योजना वस्तु है।

लेकिन क्या होगा यदि आपके वीएम कम-सीपीयू पैकेट-स्लिंगिंग के अलावा चीजें कर रहे हैं?


वर्चुअल-मशीन गणना मेजबान मशीन के लिए उपलब्ध सात अलग-अलग संसाधनों से बंधी हुई है:

  • सूत्र वीएमवेयर, ज़ेन, हाइपरवी, केवीएम, जो भी हो। प्रत्येक की अपनी गिनती-प्रभावकारी विशेषताएं होती हैं। कुछ स्मृति-पृष्ठ deduplication पर बहुत अच्छे हैं, दूसरों को इतना नहीं। कुछ CPU क्षमता के ओवरस्क्रिप्शन की अनुमति नहीं देते हैं, कुछ करते हैं।
  • सीपीयू कोर स्पीड यह अधिकतम सिंगल-थ्रेडेड प्रदर्शन को सीमित करता है जो एक वीएम चलाने में सक्षम होगा। एक मेजबान पर 1.8 गीगाहर्ट्ज सीपीयू का 36 कोर सीपीयू 64.8 गीगाहर्ट्ज हो सकता है, लेकिन कोई भी धागा 1.8 गीगाहर्ट्ज से तेज नहीं होगा।
  • सीपीयू कोर गणना यह कोर-स्पीड के साथ, अधिकतम CPU प्रदर्शन की छत का वर्णन करता है जिसे आप अनुभव कर सकते हैं।
  • सिस्टम रैम जैसा कि ऊपर वर्णित है, यह आपके द्वारा चलाए जा रहे वीएम की संख्या को सीमित करता है। कुछ हाइपरवाइजर दूसरों की तुलना में स्मृति-पृष्ठ deduplication जैसी चीजों से बेहतर होते हैं, इसलिए यदि आप 100 समान वीएम चला रहे हैं तो आप 100 से अधिक अलग-अलग वीएम चला रहे हैं, तो आप इस तरह के deduplicating सिस्टम पर इनमें से अधिक पैक कर सकते हैं।
  • डिस्क आकार प्रत्येक ओएस छवि एक निश्चित मात्रा में अंतरिक्ष लेता है। आपको इसे स्टोर करने के लिए पर्याप्त जगह चाहिए। इसलिए, डिस्क-आकार आप कितने वीएम होस्ट कर सकते हैं इस पर ऊपरी सीमा डालता है।
  • आई / ओ बैंडविड्थ वीएम के अंतर्निहित डिस्क में अधिकतम अधिकतम I / Os प्रति सेकेंड है जो इसे संभाल सकता है। यदि आप इसमें बहुत अधिक फेंक देते हैं, तो सिस्टम I / O को पूरा करने के लिए प्रतीक्षा कर देगा। यह एक ऊपरी सीमा रखता है कि कितने I / O उपभोग करने वाले वीएम आप चला सकते हैं।
  • नेटवर्क बैंडविड्थ नेटवर्क-वीएम का उपयोग करने के लिए, उपलब्ध नेटवर्क बैंडविड्थ एक छत लगाएगा कि आप किसी दिए गए होस्ट पर कितने वीएम चला सकते हैं।

ये सब कुछ हो सकता है जिस पर आप यात्रा करते हैं, यह सब आपके वीएम के साथ क्या कर रहा है इस पर निर्भर करता है। याद रखने के लिए कुछ चीजें:

  • जेनेरिक सिस्टम जैसी कोई चीज नहीं है।
  • जेनेरिक वेब-सर्वर जैसी कोई चीज़ नहीं है, चूंकि एप्लिकेशन कोड मुश्किल से चलने वाली सुई से चलाया जा सकता है CDNवीडियो ट्रांसकोडिंग जैसी बड़ी गहरी-क्रैक सामग्री के लिए स्टाइल सेवारत।
  • जेनेरिक डेटाबेस सर्वर जैसी कोई चीज़ नहीं है। ये केवल सत्र-राज्य-ट्रैकिंग के लिए उपयोग किए जाने वाले छोटे सिस्टम से चल सकते हैं, बहुत बड़े लोगों के लिए।

यह पता लगाने के लिए कि आप कितने वीएम को होस्ट-सिस्टम में पैक कर सकते हैं, आपको यह जानना होगा कि आपके सिस्टम कैसे चलते हैं और उन्हें अच्छी तरह से चलाने के लिए क्या आवश्यक है। एक बार जब आप उसे जानते हैं, तो आप गिनती योजना बना सकते हैं। और बेहतर अभी तक, यह पता लगाएं कि आपको अपने मेजबान सिस्टम बनाने के लिए कितना मांसपेशियों की आवश्यकता है!


42
2018-02-06 20:32



अन्य सभी से ऊपर, अनमबाउंड वीएम के साथ दो अलग-अलग भौतिक सर्वरों पर वीएम आधारित सिस्टम का उपयोग करें। यह पूरे सिस्टम के नुकसान के बिना हार्डवेयर विफलता की अनुमति देता है। वीएम डेटा के नुकसान के बिना समान सर्वर के बीच स्थानांतरित कर सकते हैं। बस सत्र खो जाते हैं, फिर पुनर्निर्मित। व्यक्तिगत रूप से, मैं एक होस्टिंग कंपनी को आउटसोर्स करता हूं जो इन सेवाओं (Google या अमेज़ॅन) प्रदान करता है। वे महंगी हैं लेकिन खुद को चलाने से बहुत कम हैं। - Random-IT
वीएम कार्यान्वयन में अक्सर जो चीज मैंने अंडरसाइज्ड देखी है वह डिस्क I / O है। अधिकांश लोग डिस्क स्पेस, सीपीयू की गति और मेमोरी को समझते हैं। वे उस डिस्क प्रदर्शन के बारे में भूल जाते हैं। - Dan Pritts


सुनिश्चित करें कि आप सही सवाल पूछ रहे हैं।

  • कंप्यूटर सस्ते हैं
  • भविष्य की जरूरतों की भविष्यवाणी करना बहुत मुश्किल है
  • समय से पहले क्या खरीदना है, न कि स्केल करें

यदि आपको नहीं पता कि आपको क्या चाहिए, तो इसका तात्पर्य है कि आपको बहुत ज्यादा आवश्यकता नहीं है। यदि आपके पास एक गर्म वेब साइट है, तो आपके पास शायद एक ऑपरेशन टीम भी है जो जानता है कि कितना रैम, डिस्क, आईओ, नेटवर्क इत्यादि ... आपके ऐप की ज़रूरत है। यदि आप सपने देखने वाले चरण में हैं, तो आपको अपने डेस्कटॉप से ​​शुरू करना चाहिए और अपना रास्ता तय करना चाहिए।

सुनिश्चित करें कि आपके पास कुछ विचार है कि जब चीजें बड़ी हो जाती हैं तो आप कैसे स्केल करने जा रहे हैं। क्या आप लोड बैलेंसर के पीछे और सर्वर जोड़ सकते हैं? क्या आप रेडिस सर्वर को शार्ड कर सकते हैं?

इसके अलावा, अपना खुद का डाटा सेंटर बेकार है। एक डाटा सेंटर (भले ही यह केवल एक कंप्यूटर है) आपके वास्तविक उद्देश्य से एक व्याकुलता है। आप सिर्फ कंप्यूटर नहीं खरीद सकते हैं, इसे चालू कर सकते हैं, और चले जा सकते हैं। आपको एयर कंडीशनिंग, वायु निस्पंदन, विश्वसनीय शक्ति, भरोसेमंद इंटरनेट, बैकअप, स्पेयर पार्ट्स, बढ़ने के लिए भौतिक कक्ष, बढ़ने की शक्ति क्षमता, पावर केबल्स की आवश्यकता नहीं है और एक अरब अन्य सिरदर्द की आवश्यकता है।


4