Istnieją dwa zasadnicze cele tworzenia systemów klastrowych. Pierwszy z nich to zapewnienie potrzebnej mocy obliczeniowej niezbędnej do wykonania złożonych zadań. Takie problemy jak symulacje fizyczne, animacje filmowe, czy nawet zwykła prognoza pogody wymagają bardzo dużej mocy obliczeniowej, aby móc otrzymać wynik w odpowiednio krótkim czasie.
Drugim celem jest potrzeba zapewnienia ciągłej i nieprzerwanej pracy systemów informatycznych. W miejscach, gdzie są gromadzone i przetwarzane wszystkie istotne dla działania danej instytucji informacje, ważnym jest, aby pojedyncza awaria sprzętu czy też oprogramowania, nie spowodowała awarii całego systemu informatycznego. Zadania takie stawiane serwerom bankowym czy też systemom bilingowym wymagają, aby ich praca była niezawodna.
Przy realizacji wyżej wymienionych zadań najistotniejszym jest więc wydajność i niezawodność systemu informatycznego. Dopiero na drugim planie pojawia się koszt wdrożenia takiego systemu. Właśnie z uwagi na wysoką cenę rozwiązań klastrowych i ich specyficzny obszar zastosowania nie stosuje się ich w codziennym życiu. Z kolei tam, gdzie są one stosowane użytkownicy końcowi na ogół nie zdają sobie sprawy, że są klientami systemu klastrowego. Funkcjonowanie takiego systemu jest dla ostatecznych użytkowników trudne do rozpoznania. Kto z nas zastanawiał się kiedyś jak na przykład jest zbudowany system informatyczny banku, w którym ma konto, aby zapewnił on nam bezpieczeństwo danych i umożliwił sprawdzenie stanu konta w dowolnym momencie, lub też jak przebiegają operacje symulacji pogody, której prognozę oglądamy wieczorem w telewizji. Użytkownik danej strony WWW widzi jedynie jej zawartość. Nie zastanawia się jednak na ogół w jaki sposób komputer po drugiej stronie „kabla” pracuje aby obsłużyć tysiące innych użytkowników w tym samym czasie.
