Posted in

Construirea unui Server de la Zero – Provocări și Soluții

componente server ambalate 3cheaps claudiu mihut
componente server ambalate 3cheaps claudiu mihut

După ce am analizat costurile pe termen lung, mi-am dat seama că este mult mai rentabil să construiesc un server pentru proiectele mele, cum este 3CHEAPS, în loc să plătesc 40 euro/lună pentru chiria unui server la Hetzner. Fratele meu, Adi, m-a ajutat pe parcursul procesului de asamblare și configurare. În acest articol, vă voi povesti despre experiența de la achiziția componentelor până la configurarea finală a serverului, inclusiv provocările întâmpinate și soluțiile găsite.


Alegerea și Asamblarea Componentelor

componente server 3cheaps claudiu mihut

Placa de bază și procesoarele

Am ales o placă de bază X99-ZX DU99D4, care mi-a permis să montez două procesoare Intel Xeon E5-2682v4. Fiecare dintre aceste procesoare are 16 nuclee și 32 de fire de execuție, oferind un total de 64 de threads – o putere de procesare impresionantă pentru orice tip de sarcină intensivă.

                                                                                
    0[   0.0%]   4[   0.0%]   8[   0.0%]  12[   0.0%]  16[   0.0%]  20[   0.0%]  24[   0.0%]  28[   0.0%]  32[   0.0%]  36[   0.0%]  40[   0.0%]  44[   0.0%]  48[   0.0%]  52[   0.0%]  56[   0.0%]  60[   0.0%]
    1[   0.0%]   5[   0.0%]   9[   0.0%]  13[   0.0%]  17[   0.0%]  21[   0.0%]  25[|100.0%]  29[   0.0%]  33[   0.0%]  37[   0.0%]  41[   0.0%]  45[   0.0%]  49[   0.0%]  53[   0.0%]  57[   0.0%]  61[   0.0%]
    2[   0.0%]   6[   0.0%]  10[   0.0%]  14[   0.0%]  18[   0.0%]  22[   0.0%]  26[   0.0%]  30[   0.0%]  34[   0.0%]  38[   0.0%]  42[   0.0%]  46[   0.0%]  50[   0.0%]  54[   0.0%]  58[   0.0%]  62[   0.0%]
    3[   0.0%]   7[   0.0%]  11[   0.0%]  15[   0.0%]  19[   0.0%]  23[   0.0%]  27[   0.0%]  31[   0.0%]  35[   0.0%]  39[   0.0%]  43[   0.0%]  47[   0.0%]  51[   0.0%]  55[   0.0%]  59[   0.0%]  63[   0.0%]
  Mem[||||||||||||||||||||||||||||||||||||||||||                                             6.20G/62.7G] Tasks: 82, 676 thr, 591 kthr; 1 running
  Swp[                                                                                          0K/8.00G] Load average: 0.10 0.08 0.06 
                                                                                                          Uptime: 10 days, 15:53:15

                                                                                
                                                                                

Memorie RAM și Stocare

Am instalat 64GB RAM DDR4 ECC, folosind patru plăcuțe de 16GB fiecare. Pentru stocare, am ales două unități NVMe Kingston PCIe 4.0 M.2 KC3000 de 2TB, care oferă atât viteză ridicată, cât și o capacitate generoasă pentru workload-uri.

Carcasa și adaptările necesare

Pentru acest build, am ales carcasa PCCOOLER C3B310 Black. Aici am întâmpinat o provocare majoră: placa de bază era mult mai mare decât standardul suportat de carcasă. Pentru a putea fixa placa de bază, a trebuit să dăm alte găuri și să introducem threaded inserts pentru a o prinde corect în șuruburi.

asamblare_server_carcasa3

Această modificare a dus la o altă problemă: slotul PCI Express pe care trebuia să montăm placa video nu mai era aliniat cu orificiile standard ale carcasei pentru porturile plăcii de bază. Din această cauză, a trebuit să tăiem din carcasa PC-ului pentru a face loc pentru acest port.

Provocări cu sursa de alimentare

Inițial, am comandat o sursă Segotep de 550W, dar, din păcate, am primit una de 250W, insuficientă pentru cerințe. Am cumpărat apoi Segotep SG-600A Netzteil, 500W, PFC Active, 80 PLUS, însă aceasta nu avea doi conectori ESP pentru alimentarea celor două procesoare. Aici a intervenit Adi, care a improvizat un hack ingenios: a transformat un conector SATA într-un conector ESP, rezolvând astfel problema alimentării procesoarelor.

Protecție și stabilitate

Pentru a proteja serverul de întreruperi de curent și fluctuații de tensiune, am achiziționat și un UPS de 600VA/360W, echipat cu o baterie de 7Ah, două prize Schuko, ecran LCD și conexiune USB, produs de Breckner Germany.


Instalarea și Configurarea Software

Instalarea Ubuntu Server

După ce m-am asigurat că toate componentele funcționează corect, am instalat Ubuntu Server ca sistem de operare, datorită stabilității și flexibilității sale în gestionarea serviciilor de server.

Configurarea RAID-1 pentru NVMe

Pentru a maximiza viteza de acces la date, am configurat cele două NVMe-uri în RAID-1 folosind mdadm, soluția software RAID oferită de Ubuntu Server. Aceasta oferă atât o performanță ridicată, cât și o formă de protecție a datelor.

lsblk raid 0 nvme kingston kc3000 2TB 3cheaps claudiu mihut

Instalarea și configurarea serviciilor

Pentru gestionarea containerelor, am instalat Portainer, un tool web ușor de utilizat pentru administrarea Docker. Apoi, am început să rulez diverse servicii esențiale pentru proiecte, printre care:

  • Solr – motor de căutare performant
  • NiFi – procesare și automatizare a fluxurilor de date
  • MongoDB și MariaDB – baze de date NoSQL și SQL
  • Jenkins – automatizare CI/CD
  • PHP-FPM, GIT, Apache2 – necesare pentru dezvoltarea web și versionarea codului

Concluzie

Construirea acestui server de la zero a fost o experiență plină de provocări, dar și foarte satisfăcătoare. De la improvizația cu conectorul ESP și modificările aduse carcasei, până la optimizarea RAID-ului, fiecare pas a adus lecții valoroase. Acum serverul este complet funcțional și gata să susțină proiectele pentru care a fost construit!

Dacă ai întrebări sau vrei să împărtășești propria ta experiență de asamblare a unui server, lasă un comentariu!

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *