Математично, як обчислити відсоток часу роботи на основі кількості вузлів та їх відповідного відсотка часу роботи?


11

Це питання є скоріше математичним питанням, ніж серверним, але сильно пов'язаним із сервером.

Якщо у мене є сервер, який би я міг гарантувати 95% часу безперебійного користування, і я ставлю цей сервер у кластер 2, скільки буде тоді тривалість роботи? Скажімо, я роблю те саме, але я роблю це кластером з 3?

Не будемо розглядати речі, такі як одна точка провалу, а суто зосередимось на математиці. Одне з речей, що робить це трохи складніше, це те, що якщо, наприклад, у мене є 2 сервери, ймовірність того, що вони обидва вимкнені, є 2 ^ 2, тож це 1/4; або для 3 це 2 ^ 3, тому 1/8. Враховуючи, що у мене 5% простоїв для кожного з цих серверів, чи буде загальний середній показник тоді 1/8 з цих 5%?

Як би ви обчислили щось подібне?


"95% часу роботи" - що thaaat? Я знаю, що таке 5 днів або 5 років. Що таке 0,95 тривалості роботи? Які одиниці?
poige

1
Навіщо це потрібно знати? Який випадок використання?
ewwhite

@poige Імовірно, "95% часу безперервного часу" означає "тривалість тривалості становить 95% часу", хоча, якщо ви вирішили бути педантичним щодо цього, ви можете сказати, що тому все має ~ 0%, оскільки воно не буде існувати весь час .
Позов по

1) Імовірно, автор повинен відповісти? ;) 2) Я думаю, перш ніж щось обчислити, краще зрозуміти, що це таке. ;)
poige

Відповіді:


11

Перебіг часу - це слизька річ ... Якщо ви хочете порахувати наявність послуги, то це просто

amount of time service is available
-----------------------------------   x 100
  amount of time that has passed 

Якщо у вас є кластер, що надає послугу, то ймовірність того, що послуга стає недоступною, зменшується, але розрахунок доступності (тривалості роботи) для служби залишається колишнім.


8

Шанс одного сервера бути в автономному режимі (1 - 0,95) Шанс того, що обидва сервера перебувають в автономному режимі, є (1 - 0,95) * (1 - 0,95) = 0,0025 і т.д. ...

Отже, використовуючи вашу модель та з чисто математичної точки зору, один або обидва сервери повинні становити 99,75% часу

Однак я не впевнений, що використання такої математичної моделі є правильним способом відпрацювати потенційний час роботи, оскільки існують інші фактори, які можуть вплинути на неї, які є спільними для обох серверів, тобто 95% може бути через 5% часу є вимкнення електроенергії, що би вплинуло на БОТИ-сервери, тому наявність кластеру не матиме ніякої різниці


Привіт Філе. Потужність, безумовно, є одним із компонентів доступності, який можна пом'якшити, поставивши установки в декілька стійок і забираючи живлення з різних джерел і т. Д. Ідея суто з математичної точки зору, оскільки, очевидно, є більше компонентів, які входять у це, ніж лише декілька серверів :)
Jeroen Landheer

8
Справа в тому, що розрахунки в цьому і відповіді Йеронена працюють лише в тому випадку, якщо час роботи незалежно (в математичному сенсі). Якщо є кореляції (наприклад, силовий кабель, що подає обидві стелажі), то не все так просто.
TripeHound

@TripeHound Ось чому я написав свою відповідь :)
Seamus

5

Це залежить від того, чому ваші сервери займають 5% часу. Якщо у вас є потужність 95% час, але ваші сервера в іншому випадку бездоганні, то другий сервер в тому ж місці , не збільшує час безперебійної роботи на всіх : якщо один йде вниз, і йти вниз. Це приклад співвіднесення невдач . Цілком ймовірно, що хоча б частина вашого простою пов’язана з помилками, які впливають на всі сервери разом (живлення ...). Але деякі простої будуть незалежнимиміж серверами. Якщо ви хочете зробити це правильно, вам слід розібратися з цими речами окремо. Отже, ви хочете розробити ймовірність того, що сервер 1 не має незалежної помилки (p) і що сервер 2 не має незалежної помилки (q) і що немає системної помилки, яка вбиває обидва (r). Буде порівняно безпечно вважати, що ці помилки є незалежними, і, таким чином, ви можете просто помножити їх разом: p q r - це ймовірність того, що якийсь сервер з'явиться.

Проблема полягає в тому, що ви не можете використовувати фактичні дані про продовження часу, щоб дати вам значення p, q і r, за винятком випадків, якщо у вас просто сервер 1 і це 95% часу, то p * r = 0,95.


5

Перш за все, загальна доступність або тривалість роботи кластера залежить від того, наскільки велика частина кластера необхідна, щоб бути активним для того, щоб весь кластер вважався "до".

  • Чи достатньо однієї функціонуючої машини? Це означатиме, що будь-яка окрема машина може взяти повне навантаження при необхідності.
  • Чи всі вони повинні бути активними одночасно? Тобто надмірності немає.
  • Чи, можливо, двох з трьох в Інтернеті достатньо? Це дозволить отримати більшу завантаженість, ніж перший випадок.

Як ви з’ясували, перші два випадки обчислити досить просто. Нехай вірогідність того, що один сервер буде в Інтернеті в будь-який момент часу, p = 0,95. Тепер для трьох серверів ймовірність того, що всі вони одночасно в Інтернеті, становить p 3 = 0,857375.

У протилежному випадку, коли принаймні одна машина повинна бути активною в даний момент часу, це простіше обчислити, перевернувши проблему і переглянувши ймовірність того, що машини будуть в автономному режимі . Ймовірність того, що одна машина не працює в автономному режимі, дорівнює q = 1- p = 0,05, а отже, ймовірність того, що вони знижуються одночасно, дорівнює q 3 = 0,000125, що дає ймовірність 1- q 3 = 1- (1- p ) 3 = 0,999875, що принаймні один вгору.

2 з 3 випадку обчислити трохи складніше. Можливі чотири ситуації, коли щонайменше два з трьох серверів підняті. 1) ABC вгору, 2) AB вгору, 3) AC вгору, 4) BC вгору. Ймовірності все це, відповідно, ррр , PPQ , ПКІ і QPP . Оскільки випадки роз'єднані, ймовірності можна скласти разом, даючи загальний A = p 3 + 3 p 2 q = 0,992750.

(Це може бути розширено до більшої кількості машин. Коефіцієнтами є добре відомі біноміальні коефіцієнти , тому підрахунок різних випадків вручну працює здебільшого як вправа.)


Звичайно, з такими розрахунками набагато простіше впоратися за допомогою готової комп'ютерної програми ... Принаймні один онлайн-калькулятор можна знайти тут:
http://stattrek.com/online-calculator/binomial.aspx

Вводячи вхідні значення: ймовірність успіху = 0,95, кількість випробувань = 3, кількість успіхів = 2, отримуємо результат "Сукупна ймовірність: P (X ≥ 2) = 0,99275". Також даються деякі інші пов’язані значення, і онлайн-інструмент дозволяє легко грати і з іншими номерами.


І так, все вищесказане передбачає, що сервери виходять з ладу незалежно, тобто а) я ігнорував будь-які проблеми, що впливають на кластер в цілому, б) не існує нічого подібного до старіння компонентів, що б зробило це ймовірним для серверів вийти з ладу або майже одночасно.


3

У вас 5% простоїв на кожному сервері, тому ви помножуєте його - 0,05 * 0,05 = 0,0025, що дає вам 1-0,0025 = 0,9975 -> 99% часу роботи. З 3 серверами у вас є 1-0.000125 = 0.999875> 99.9% часу роботи.

Зазвичай я припадаю на 97% доступності для автономного хоста (із надлишковим жорстким диском та блоком живлення), даючи> 99,9% для 2N та> 99,99% для 3N надмірності.


3

Я ще трохи копав і знайшов цю частину головоломки.

Використовуючи приклад сервера з доступністю 95%, додавання другого сервера збільшить доступність до: 95% + (1-95%) * 95% = 99,75%. Логіка цього полягає в тому, що коли перший сервер знижується (5% часу), другий сервер все ще перевищує 95% часу.

Додавання 3-го сервера дозволить повторити цей же спосіб. Перші 2 разом уже доступні на 99,75%, тому додавання третього буде: 99,75% + (1-99,75%) * 95% = 99,9875%. І так далі, і так далі. Це близьке до відповіді Філа, але все-таки трохи інше, оскільки вам потрібно взяти результат попередньої ітерації та використовувати його в наступному.

Для компонентів, які залежать від інших, ви просто помножите відсотки доступності, тому, якщо у вас є 2 компоненти, доступні 50%, у вас є 25% загальної доступності (тобто система працює лише тоді, коли обидва компоненти працюють.)


0

Якщо припустити, що час роботи кожного сервера не залежить від інших, то загальний час роботи

1 - (0,05) ^ н

Де n - кількість серверів, а 0,05 - вірогідність простою одного сервера

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.