Billig server lavet af kinesiske reservedele. Del 1, jern
En sløret kat poserer på baggrund af en brugerdefineret server. I baggrunden er en mus på serveren
Hej Habr!
I enhver persons liv er der nogle gange behov for en computeropgradering. Nogle gange er det at købe en ny telefon for at erstatte en ødelagt en eller i jagten på en ny Android eller et nyt kamera. Nogle gange - udskiftning af videokortet, så spillet kan køre med minimumsindstillinger. Nogle gange - at installere en SSD i en bærbar computer, som du installerede Windows 2 på, men den kan ikke rigtig lide at leve på Core2.5Duo og 32 gigabyte adresserbar hukommelse, og den dumper konstant ubrugte sider ind i swap-filen, hvilket ødelægger den i forvejen ikke store udvekslingshastighed med XNUMX gig disk.
Min historie er en opgradering af en server, der blev samlet i løbet af mit første år på instituttet. Mine behov er vokset i løbet af de sidste seks år, og han har selvfølgelig fået en stigning i både RAM og diskplads. Problemet er, at man med ny viden fik nye ambitioner - ønsket om at anvende denne viden i praksis - og han kunne måske ikke længere klare dem.
Først vil der være lidt kedelig indledende tekst, og så vil der være billeder.
Bare for at gøre det klart, hvilken server der er nu:
CPU:
RAM: DDR3 8 GiB
SSD: 250GB
Yderligere vil denne server næppe blive nævnt; disse hovedegenskaber er udelukkende, så der er noget at sammenligne med, og det er klart, hvorfor jeg besluttede at overvinde min dovenskab og bruge tid og penge.
Jeg er endnu ikke sikker på, hvad der præcist vil fungere på den nye server, men nogle abstrakte tanker får mig til at påtage mig følgende opgaver:
- Hoster et par statiske websteder. Nu gør nginx dette, men med ikke de bedste konfigurationer. De skal også rettes, men mere om det i anden del.
- Hosting kun statiske filer. For eksempel billeder fra denne artikel. De går også gennem nginx, men de indlæses via WinSCP, hvilket er ubelejligt. Vi skal grave noget som myOwnCloud op, så vi nemt og naturligt kan uploade billeder til serveren.
- Byg server til kæledyrsprojekter. Nu er det Jenkins.
- Forskellige stande for disse projekter: udvikling, integrationstest mv. Den er ikke kommet til salgsstedet endnu, men der er kun én stand, dog i dokken.
- Nogle spilservere, hvis dine venner vil spille noget, der kræver en server: Starbound, Minecraft, Squad (selvom de har brug for mindst fyrre personer). Ja, i hvert fald CS 1.6.
- Virtuelle maskiner til venner, hvis de pludselig har brug for at hoste noget et sted. Eller for dig selv, at have en slags VDI. Der er noget at indlæse den med, hvis bare der var hardware.
Politisk fjerne planer:
- Torrent downloader: for at understøtte sjældne distributioner på root trackeren. Sandt nok er vi nødt til at finde ud af, hvordan vi automatisk downloader dem, hvor de skal opbevares, om udbyderen vil være imod den konstante baggrundsfordeling og, vigtigst af alt, om fyre i uniform vil være interesseret i terabyte af målrettet distribueret musik med bøger.
- Udgangssted fra nogle TOR: pænt, men nej. Af samme grund.
Det er dog muligt at allokere en del af kapaciteten til en analog af det nu lukkede SETI@Home. Måske en habrowser, der er bekendt med dette, kan fortælle mig, hvor jeg skal placere varmen?
Platform valg
Ja. Vi har ordnet den motiverende del: Jeg vil have hardware, men det er ikke klart hvorfor. Du skal beslutte, hvilken slags hardware du vil have.
Billigt brugt udstyr nævnes jævnligt på Habré: det være sig distributionen af servere af den orange mand eller
Professionelt udstyr er dog dyrt, fordi virksomheder har mange penge, teknisk support og en kvalitetsgaranti, der er højere end forbrugsvarer. Ikke altid, men forventningen er tydeligvis rykket til det bedre.
Så målet er at samle en server af brugte (læs: billige) reservedele og give plads til en mindre opgradering i de næste fem år. Sådanne reservedele er billigere end nye, og de kan stadig have ressourcer nok til almindelig hjemmebrug. (Jeg komponerede dette mål efter jeg havde samlet serveren. Alt er i de bedste traditioner for at skrive et speciale)
Som en konsekvens af målet bør udstyret have et af de bedste "papegøje/rubel"-forhold, hvor papegøjens bitkapacitet afhænger af typen af udstyr: RAM - volumen (ikke hastighed, nej), disk - volumen ( og hastighed), processor - dette er svært. Lad disse være benchmark syntetiske papegøjer.
Det er tilrådeligt, at serveren stræber efter lydløshed. Jeg lover ikke eksotiske ting i form af specialtilpassede varmerør og blæserløse kølere, men serveren er bestemt til at stå i soveværelset alias et fjernkontor alias mit værelse, så jeg vil gerne have den ikke brøler i inaktiv tilstand som et jetfly ved start.
Udgangspunktet er billige kinesiske xeoner, som jeg lærte om i oldtiden, måske også fra Habr.
Så, sammenligningen involverer to parter med omtrent den samme indikator for papegøjer ifølge
AM4
LGA2011
7 2700x
7 2700
e5-2689
2x e5-2689
e5-2690
2x e5-2690
2x e5-2696v2
i3-2100
Rang, papegøjer
17898
16021
10036
17945
10207
18967
23518
1839
Pris, rubler
15200
12500
5000
10000
5500
11000
18000
1000
Termisk effekt, W
105
65
115
230
135
270
260
65
Kerner, stk.
16
16
16
32
16
32
24
4
Frekvens, GHz
3,7
3,2
2,6
2,6
2,9
2,9
2,5
3,1
Papegøjer/rubler
1,18
1,28
2,01
1,79
1,86
1,72
1,31
1,84
Papegøjer/W
170,46
246,48
87,27
78,02
75,61
70,25
90,45
28,29
Det er kedeligt at se på bordet, lad os se på grafen over absolutte papegøjer:
Jeg tænkte på at udelade denne graf, men så skulle jeg se på bordet med mine øjne, og det er ikke alle, der kan lide at gøre det her. Så dette er et undervisningsskema. Til venstre er en skala af hvad end det er, i dette tilfælde abstrakte syntetiske papegøjer. Signaturerne nedenfor er processorer. Til venstre er et par Ryzens, i midten er et par enkelt og dobbelt Xeon. Forvirret, ja, men det er et faktum. Til højre er to andengenerations Xeons og processoren på den nuværende server.
Efter at have gjort dig bekendt med processorernes placering, er det værd at se på grafen over prisen på en papegøje:
Det viser, at det mest rentable er at tage en enkelt Xeon af første generation. Dobbelte xeoner er lidt værre end enkeltstående: Omkostningerne er fordoblet, og effektiviteten er steget med 1.7 gange, det vil sige forholdet er faldet. Men anden generation af Xeon er ikke længere rentabel: Prisen pr. papegøje nærmer sig allerede Ryzen.
Og Ryzens er forbandet energieffektive per papegøje:
Jeg må indrømme, at jeg i det øjeblik følte mig stolt over menneskehedens og AMDs fremskridt. Dette er ikke længere en omfattende udviklingsvej, det er et forsøg på at presse det maksimale ud af et stykke silicium. E5-2690 udkom i 2012, og Ryzen 7 2700 i 2018. En tredobling af energieffektiviteten på seks år er ikke en alder for teknologi. Åh, og Core i3-2100 er et sted helt usynlig i hjørnet. Lad os ikke tale om ham.
Midlertidig tilbagetrækning: Ryzens river op på forholdet mellem ydeevne og energiforbrug. Eller er det en episk anderledes måde at måle TDP på mellem AMD og Intel. Og den første generation af brugte ørexeoner er imponerende med hensyn til forhold mellem ydeevne og pris.
Derfor vil jeg tage xeons. Du har ikke glemt det mål, jeg satte mig i begyndelsen af dette afsnit, vel?
Andet relateret jern
Faktisk er valget mellem AMD vs Intel begrænset ikke kun af den anvendte processor. Zen+-processorer bruger DDR4-hukommelse (
Derudover
*Det er ikke 1866, men 1778. Jeg aner ikke hvorfor det dystre kinesiske geni ikke kunne mestre 1866, men ikke gik ned til standard 1600 MHz...
Begrænsninger på socket og hukommelsestypen påvirker også valget af bundkort: for de samme 7k rubler kan du få
At vælge et bundkort med to sokkel medfører særlige krav til strømforsyningen: det skal have to otte-benede kontakter for at forsyne processoren. Måske fungerer videokortet, men stifterne er lidt forskellige i form, jeg besluttede ikke at tage risici og ikke læse dokumentationen, da strømforsyningerne har de nødvendige krav
Stikkontakterne på dette bundkort er også dårligt arrangeret: afstanden mellem dem er lidt mindre end 10 centimeter, hvilket gør det vanskeligt at installere to kølere parallelt. Til at begynde med ville jeg installere kølerne, så luftindtaget kom fra mellemrummet mellem dem, men mere om det nedenfor.
Til datalagring ville jeg oprindeligt tage den SSD, der allerede var i den gamle server til systemet, men jeg besluttede at tage en 2TB Crucial P1 med et M1-stik. Bundkortet har seks SATA-stik, og jeg planlagde at tilslutte seks WD Red 2TB-harddiske til dem, men mens jeg spekulerede på, om det var værd at bruge yderligere 12 rubler på dem, var de allerede blevet købt. Så opsætning af et ZFS-raid er ikke inkluderet i anden del af artiklen. Men det er senere, historien går tilbage til SSD'en. Du kan læse en meget mere professionel anmeldelse af den
Du kan skrive 75 gigabyte på den ad gangen, og så bliver den værre end en harddisk. Tak fordi du i det mindste ikke begyndte at snurre. Åh, og det kan også kun omskrives 200 gange. Hvad er det overhovedet lavet af?!
Faktisk er dette ikke så skræmmende for den tilstand, jeg planlægger at bruge det i: hovedsageligt at læse data og skrive data, der ikke er kritiske for skrivehastigheden. Nå, det vil jeg gerne håbe.
200x omskrivningsressourcen svarer til cirka 109 gigabyte om dagen i fem år. 109 gigabyte om dagen er ikke det samme som 75 gigabyte ad gangen. Og alt er fint med læsning. Ikke den bedste ydeevne blandt M2-drev, men i overensstemmelse med skriveniveauet, det viser i cachen.
samling
Hvis der før dette overvejende var pseudo-teknisk tekst spækket med grafer, vil der nu være billeder, fortyndet med kunstnerisk fortælling.
Pludselig tirsdag morgen ringede den russiske post-kurer og sagde, at han ville ankomme i dag med en pakke. Jeg plejer selv at hente pakker, men under karantænen besluttede de sig for at stramme op på udbringningsafdelingen, åbenbart.
Pakkens udseende
Den snedige kineser pakkede alt i én pakke, selvom jeg bestilte fire forskellige ordrer på Aliexpress, for ikke at blive pålagt told på to hundrede euro.
Kasseindhold
Bundkortet kommer med et helt instruktionsark! Du skal selv gætte på højttalerens signaler. Hjemmesiden siger, at de orange RAM-slots er de vigtigste og bør installeres i dem. Instruktionerne er lidt mindre end fuldstændig ubrugelige. Jeg tilsluttede tænd/sluk-knappen til den. I øvrigt er den eneste inskription på æsken BUNDBORD. Hun fortjente ikke sit eget billede, men hun fortjente bestemt en omtale.
Vi tager sagen ud og støvsuger den. Faktisk var det ikke værd at få ham, han var ikke andet end pine. Men det ser æstetisk tiltalende ud. Så...
Skrog, udsigt på hovedet
Der er fe-rutschebaner i kroppen. (Og jeg planlægger 3.5" drev. Jeg bliver nødt til at fjerne kortet)
Plads til diske
Der er også hurtig udskiftelige blæsere på frontpanelet. De larmer sikkert.
De styres af noget mere komplekst end blot bundkortet direkte
Fjern topdækslet og se, hvad der er indeni. Hvis du skruer et par skruer af, kan du flytte diskpladsen og gøre plads til manipulation. Og bundkortet er i E-ATX format, det fylder næsten al pladsen på serveren.
Native strømforsyning
Jeg kunne ikke bare trække strømforsyningen ud; jeg var nødt til at skrue alle skruerne på bagsiden af og næsten skille hele kabinettet ad. Det viste sig, at den blev holdt fast af to skruer og et stykke tape. Det var ondsindet, men nu kan jeg selv bruge sådan en taktik.
Her er det til venstre, den skæbnesvangre sorte stribe!
Jeg er allerede træt af at vælge de mest succesrige fotografier, luge dem ud, der ikke er nødvendige for historien, beskære billederne og uploade dem til webstedet. Imens kommer dagen efter, og på mit bord er der kun kinesiske reservedele. Du skal hurtigt afgive din ordre og skynde dig til butikken på den anden side af Moskva.
Ved indgangen til butikken
Salgsområdet er lukket, kun ordreafhentning er åben. Det er godt, at vejret var solrigt, jeg ved ikke, hvordan det ville have været i regnen. Ordrer skal kaldes gennem et videosamtaleanlæg, det er ærgerligt, at dette ikke forklares meget. Det ville være rart at udskrive i det mindste nogle andre instruktioner end "hold en afstand på 2 meter." Ventetiden er ikke længere end ti minutter, fantastisk. Lad os gå tilbage.
To kølere, en strømforsyning og en lille SSD
Da kølere, der passer til kabinettets dimensioner, var dyre og støjende, var vi nødt til at vælge en overdimensioneret mulighed. Dette reddede mig fra smerten ved at vælge en strømforsyning: et stille ATX-format, men du bliver nødt til at fjerne dækslet, eller en enkelt enhed, men støjende og to tusinde rubler dyrere. Vi begynder at prøve køb. Den oprindelige idé med de to kølere var at tage luft fra midten, men glidekapaciteten til diske foretog justeringer, og ventilatorerne skulle skiftes til sekventiel blæsning. Det vil være interessant at observere temperaturen på den ene krystal et par grader højere end på den anden.
Stadig ingen termisk pasta
Tør bunden af køleren og processoren af med alkohol. Drikker. Men det har været teknisk i et par år nu, det er bedre ikke at bruge det mundtligt. Påfør termisk pasta jævnt med noget fladt. Faktisk har jeg lidt forståelse for processen med at påføre termisk pasta, men resultaterne af mit arbejde har altid bragt positive resultater. Det er tilsyneladende svært at skrue op her, selvom Moment-limen kan virke i årevis, at dømme efter fortællingerne. Jeg plejer at bruge et stykke unødvendigt plastikkort, men jeg havde det ikke ved hånden. I stedet var en nymodens fjerde stump uden ben. Bare rolig, efter proceduren tørrede jeg det af med alkohol og lagde det tilbage på hylden.
Noget mærkeligt og foruroligende
Anvendelsen er ikke ideel, og jeg trykkede ikke helt på køleren: du kan se forskydningen af det "skaldede" sted i forhold til midten.
Nulstilling
Vi tilføjer et ekstra lag af termisk grænseflade på steder, hvor det tydeligvis mangler og på lidt forskellige steder.
Ja, tilfredsstillende
Lad os begynde at installere bundkortet. Der var tydeligvis noget af et andet format på serveren, og de... øh... fittings, som skruerne er skruet i for at fastgøre bundkortet, var ikke placeret det rigtige sted til E-ATX-kortet. Desværre manglede det metalstykke, som beslagene er skruet i, tre huller modsat dem på bundkortet. Heldigvis manglede selve beslagene også tre stykker.
På grund af dette synker bundkortet de steder, hvor 24-bens stik og PCI-E stik er fastgjort. På den ene side er det tekstolit. På den anden side er dette en kinesisk tekstolit, man ved aldrig, hvad man kan forvente af den. Men du skal under alle omstændigheder trykke forsigtigt, selvom det er PCB-certificeret efter militære standarder. Nej, i dette tilfælde skal du trykke endnu mere omhyggeligt - det blev også lavet i Kina, men stykke-for-stykke certificering og accept øgede prisen på enheden et par dusin gange.
Masser af huller og alt er der ikke
Husker du strømforsyningen på båndet? Historien er cyklisk, her er en gentagelse:
Og ja, jeg kan ikke lide det
Monteringen er færdig, vi flytter computeren til min brors værelse, tager tastaturet og skærmen fra liveserveren og prøver at tænde den. Første gang kan jeg ikke engang komme ind i BIOS. Da xeons normalt ikke har en indbygget grafik-coprocessor, og BIOS skal vises på skærmen, installerer vi en form for simpelt grafikkort. Gud, hvor larmer hun!
Anden gang kan jeg heller ikke komme ind i BIOS. Ved at sortere gennem synderne kommer vi til en løsning: Ved at bytte RAM-strimlerne og fjerne SSD'en kan du få adgang til BIOS. Vi indsætter SSD'en på plads og tænder computeren igen - BIOS'en indlæses, og disken registreres. Tilsyneladende blev noget nulstillet på grund af det manglende CR2032-batteri.
Kan du i øvrigt se, at harddiskenheden stikker mere frem, end den burde? Den hviler mod køleren. Dette er ikke en ideel sag til computere med den klassiske formfaktor, hvad kan du gøre?
Sted for indledende opsætning
En lille digression vedrørende støj: med videokortet var støjniveauet på niveauet 27-30 decibel, og efter installation af operativsystemet faldt støjniveauet på serveren til et sted omkring 8-14 decibel. Det var svært at måle mere præcist, da baggrundsstøjniveauet også var et sted i dette område: metrobyggeri på gaden, rullende bolde fra naboerne ovenover, trampet af en kat, og så videre. Serveren vil blive placeret i et Ikea-skab uden låger, så dette støjniveau vil være passende.
Bonus
Teknisk set vedrører dette kapitel ikke udvælgelse og montering af hardware, men installation af et operativsystem er ikke et separat kapitel. Mange ressourcer har allerede beskrevet installationen af hvad som helst på forskellige enheder, og det, der vil ske her, er et helt almindeligt fænomen. Jeg ønsker ikke at producere en ekstra tutorial, og måske en forkert.
Ikke desto mindre vil jeg beskrive den rake, som jeg trådte på under OS installationsprocessen.
Jeg installerede ikke Windows Server på grund af manglen på en licens, og jeg er mere vant til at interagere med Linux-servere. Den gamle server kører Ubuntu, men et par lidt brugte VPS kører CentOS og arbejder RHEL. Derfor vil vi se nærmere på CentOS 8.
Lad os gå til
Vi indsætter flashdrevet, finder det og kopierer billedet til det.
frog@server:~$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sdb 8:16 1 14,6G 0 disk
└─sdb4 8:20 1 14,6G 0 part /media/localadmin/ANACONDA
sda 8:0 0 223,6G 0 disk
├─sda2 8:2 0 24G 0 part [SWAP]
├─sda3 8:3 0 128G 0 part /
└─sda1 8:1 0 243M 0 part /boot/efi
frog@server:~$ dd if=/home/frog/CentOS-8.1.1911-x86_64-dvd1.iso of=/dev/sdb
dd: failed to open '/dev/sdb': Permission denied
frog@server:~$ sudo !!
sudo dd if=/home/frog/CentOS-8.1.1911-x86_64-dvd1.iso of=/dev/sdb
Og vi tager afsted for at drikke te. En time senere er vi sikre på, at alt er blevet kopieret for længe siden - men input-prompten er ikke dukket op. Så det bliver stadig kopieret. Okay, ny terminal, spørger vi dd
, hvor meget er der tilbage.
PID TTY TIME CMD
1075 tty5 00:00:00 bash
1105 tty5 00:00:00 sudo
1106 tty5 00:00:00 su
1112 tty5 00:00:00 bash
1825 pts/18 00:00:00 sudo
1826 pts/18 00:01:08 dd
2846 pts/0 1-23:03:42 java
5956 pts/19 00:00:00 bash
6070 pts/19 00:42:15 java
6652 pts/20 00:00:00 ps
7477 tty4 00:00:00 bash
7494 tty4 00:00:00 sudo
7495 tty4 00:00:00 su
7497 tty4 00:00:00 bash
frog@server:~$ kill -USR1 1826
-bash: kill: (1826) - Operation not permitted
frog@server:~$ sudo !!
sudo kill -USR1 1826
Svar i den gamle terminal:
9025993+0 records in
9025993+0 records out
4621308416 bytes (4,6 GB, 4,3 GiB) copied, 13428,4 s, 344 kB/s
Og efter endnu et par ti minutter:
14755840+0 records in
14755840+0 records out
7554990080 bytes (7,6 GB, 7,0 GiB) copied, 14971,5 s, 505 kB/s
Hvad var det? Kopierede den det byte for byte? Dårlig flashdrevressource. Eller kontrolleret rigtigheden af optagelsen. Det var i hvert fald nødvendigt man dd
og bruge store kopiblokke, og noget andet, der var nyttigt engang, når man kopierede en 64 GB HDD ved 5400 rpm. Men selv den kopierede med en hurtigere hastighed end en tredjedel af USB 1.0.
Og så standardvalget af flashdrev som Boot Device, Next, Next, Next, Finish. Ingen manipulationer med diskpartitionering eller Ethernet-indstillinger. Den mest almindelige OS-installation i 2020.
Konklusion
Denne første del af historien handler om at sætte en ny server op. Jeg ville frigive den i sin helhed på én gang, men jeg har yderligere to ufærdige artikler i mine udkast, som, det forekommer mig, er mere interessante end "endnu en serverbygning", og den anden del om opsætning af softwaren truer med at ikke være færdig snart.
De samlede omkostninger var 57973 rubler. Her er en mere detaljeret opdeling, dog viser links til Aliexpress lidt forskellige produkter.
Operativ hukommelse
19078 rubler
processor
10300 rubler
bundkort
9422 rubel
Strømforsyning
4852 rubel
køler
3722 rubel
SSD
10599 rubler
Sag Noname
Free
De omtrentlige ejeromkostninger er 3.89 rubler/kWh * 0.8 kW * 24 timer * 31 dage = 2315 rubler/måned. Men det er hvis han tærsker så hårdt han kan uden ophør i en måned, hvilket jeg er meget i tvivl om på grund af manglen på sådanne opgaver og jernets overlevelsesevne. Til sammenligning,
Jeg synes, det er en ret god server for pengene.
Kilde: www.habr.com