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


132

यह क्षमता नियोजन के बारे में एक विहित प्रश्न है

सम्बंधित:

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


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

जवाबों:


97

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


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

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

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


कुछ क्षमता योजना Axioms

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

1
आपको पूरी तरह से छोड़ देना चाहिए और भागों द्वारा एकीकरण का उपयोग करना चाहिए!
गिल्स

+1। और RAM, जैसा कि आप axiom # 1 में सुझाव देते हैं, उन चीजों में से एक है, जिनके बड़े पैमाने पर लाभ हैं। उदाहरण के लिए, यह कैशिंग का बेहतर उपयोग करने की आपकी क्षमता को बढ़ाता है, जो बदले में आपको कम डेटाबेस प्रश्न बनाने की अनुमति देता है, जो बदले में डिस्क और सीपीयू पर भार को हल्का करता है। मैं अक्सर उन प्रदाताओं की मेजबानी करने से निराश हूं जो अपने सर्वर के साथ एक तेज सीपीयू और न्यूनतम मात्रा में रैम की पेशकश करते हैं।
स्टीव वॉर्थम

31
मैं इसे जोड़ूंगा: डिस्क क्षमता सस्ती है। डिस्क प्रदर्शन महंगा हो जाता है। विशेष रूप से जब हम 10 वर्षों में डिस्क आकार में वृद्धि देखते हैं, लेकिन भौतिकी के नियम नहीं बदले हैं। अंगूठे का नियम जो मैं उपयोग करता हूं (आज के रूप में; जून 2014) इष्टतम प्रदर्शन के लिए: SATA पर प्रति स्पिंडल पर 75 IOP, FC पर प्रति स्पिंडल पर 200 IOP, और SSD प्रति 1500 IOP। बिग SATA ड्राइव वास्तव में प्रति गीगाबाइट अनुपात में काफी खराब आईओ देते हैं।
सोब्रीक

2019 के मध्य में किसी को भी स्पिंडल ड्राइव नहीं खरीदना चाहिए।
रॉबर्ट हार्वे

@RobertHarvey किसी को भी SAS स्पिंडल ड्राइव नहीं खरीदना चाहिए । पेटाबॉक्स स्केल सर्वर के लिए क्षमता प्राप्त करने के लिए अभी भी बहुत सारे SATA ड्राइव की आवश्यकता होती है या आप बहुत अधिक भुगतान करते हैं।
मिकको रेंटालीनन

44

वर्चुअल मशीन गणना योजना

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

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

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

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


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

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

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

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

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


इन सबसे ऊपर, दो अलग-अलग भौतिक सर्वरों पर इनबाउंड vm के साथ vm आधारित सिस्टम का उपयोग करें। यह पूरे सिस्टम के नुकसान के बिना हार्डवेयर विफलता की अनुमति देता है। vm का डेटा खोए बिना समान सर्वर के बीच जा सकता है। बस सत्र खो जाते हैं, फिर से बनाया जाता है। व्यक्तिगत रूप से, मैं एक होस्टिंग कंपनी को आउटसोर्स करूंगा जो इन सेवाओं (Google या amazon) की पेशकश करती है। वे महंगे हैं लेकिन अपने खुद के चलाने से बहुत कम हैं।
रैंडम-आईटी

2
VM कार्यान्वयन में सबसे अधिक बार जो चीज मैंने देखी है वह डिस्क I / O है। ज्यादातर लोग डिस्क स्पेस, सीपीयू स्पीड और मेमोरी को समझते हैं। वे उस डिस्क प्रदर्शन के बारे में भूल जाते हैं।
डैन प्रिट्स

6

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

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

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

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

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

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.