Sette sammen datamaskiner i klynger. Desktop-klynge. Konfigurere nettverksinnstillinger

I dag er forretningsprosessene til mange selskaper fullstendig knyttet til informasjon
teknologier. Med den økende avhengigheten av organisasjoner av arbeidet med databehandling
nettverk spiller tilgjengeligheten av tjenester til enhver tid og under enhver belastning en stor rolle
rolle. Én datamaskin kan bare levere Første nivå pålitelighet og
skalerbarhet, kan det maksimale nivået oppnås ved å kombinere
et enkelt system med to eller flere datamaskiner - en klynge.

Hvorfor trenger du en klynge?

Klynger brukes i organisasjoner som trenger døgnåpen og
uavbrutt tilgjengelighet av tjenester og hvor eventuelle avbrudd i arbeidet er uønsket og
uakseptabelt. Eller i tilfeller hvor det er en mulig belastningsstigning, som evt
hovedserveren kan ikke takle det, så vil flere hjelpe til å kompensere
verter som vanligvis utfører andre oppgaver. Til e-postserver, behandling
titusenvis og hundretusenvis av brev per dag, eller en webserver som serverer
nettbutikker, er bruk av klynger svært ønskelig. For brukeren
et slikt system forblir helt gjennomsiktig - hele gruppen av datamaskiner vil
ser ut som en server. Ved å bruke flere, enda billigere,
datamaskiner lar deg få svært betydelige fordeler fremfor en enkelt
og en rask server. Dette er en enhetlig fordeling av innkommende forespørsler,
økt feiltoleranse, siden når ett element svikter, belastningen
plukket opp av andre systemer, skalerbarhet, praktisk vedlikehold og utskifting
klynge noder og mye mer. Svikt i én node automatisk
oppdages og lasten omfordeles, gjenstår alt dette for klienten
ubemerket.

Win2k3 funksjoner

Generelt sett er noen klynger designet for å forbedre datatilgjengeligheten,
andre - for å sikre maksimal ytelse. I sammenheng med artikkelen vi
vil være av interesse MPP (Massive Parallell Processing)- klynger, i
der lignende applikasjoner kjører på flere datamaskiner, gir
skalerbarhet av tjenester. Det er flere teknologier som tillater det
fordele belastningen mellom flere servere: trafikkomdirigering,
adresseoversettelse, DNS Round Robin, bruk av spesielle
programmer
, som jobber på applikasjonsnivå, som nettakseleratorer. I
Win2k3, i motsetning til Win2k, er støtte for clustering inkludert i utgangspunktet og
to typer klynger støttes, forskjellige i applikasjoner og spesifikasjoner
data:

1. NLB (Network Load Balancing)-klynger- gi
skalerbarhet og høy tilgjengelighet av tjenester og applikasjoner basert på TCP-protokoller
og UDP, som kombinerer opptil 32 servere med samme sett med data i én klynge, på
kjører de samme applikasjonene. Hver forespørsel utføres som
separat transaksjon. Vant til å jobbe med sett som sjelden skifter
data, som WWW, ISA, Terminal Services og andre lignende tjenester.

2. Serverklynger– kan forene opptil åtte noder, deres viktigste
Oppgaven er å sikre applikasjonens tilgjengelighet i tilfelle feil. Består av aktive og
passive noder. Den passive noden sitter inaktiv mesteparten av tiden, og spiller en rolle
hovednodereserve. For individuelle applikasjoner er det mulig å konfigurere
flere aktive servere som fordeler belastningen mellom dem. Begge noder
koblet til ett enkelt datavarehus. En serverklynge brukes til å operere
med store mengder data i hyppig endring (post, fil og
SQL-servere). Dessuten kan en slik klynge ikke bestå av noder som kjører under
administrasjon av ulike Win2k3-varianter: Enterprise eller Datacenter (Web og
Standard serverklynger støttes ikke).

I Microsoft Application Center 2000(og bare) det var en type til
klynge - CLB (Component Load Balancing), gir muligheten
distribuere COM+-applikasjoner på tvers av flere servere.

NLB-klynger

Ved bruk av lastbalansering, a
et virtuelt nettverkskort med sin egen IP- og MAC-adresse uavhengig av den virkelige.
Dette virtuelle grensesnittet representerer klyngen som en enkelt node, klienter
de får tilgang til den nøyaktig ved hjelp av dens virtuelle adresse. Alle forespørsler mottas av alle
cluster node, men behandles av bare én. Kjører på alle noder
Nettverksbelastningsbalanseringstjeneste
,
som ved hjelp av en spesiell algoritme som ikke krever datautveksling mellom
noder, bestemmer om en bestemt node må behandle en forespørsel eller
Nei. Noder utveksles hjerteslag meldinger viser dem
tilgjengelighet. Hvis verten slutter å gi hjerteslag eller en ny node vises,
de resterende nodene starter konvergensprosess, en gang til
omfordele lasten. Balansering kan gjennomføres på en av to måter
moduser:

1) unicast– unicast når i stedet for en fysisk MAC
MAC-en til den virtuelle klyngeadapteren brukes. I dette tilfellet er det ikke klyngenodene
kan utveksle data med hverandre ved å bruke MAC-adresser kun via IP
(eller en andre adapter som ikke er knyttet til klyngen);

Bare én av disse modusene skal brukes innenfor en enkelt klynge.

Kan tilpasses flere NLB-klynger på ett nettverkskort,
spesifisere spesifikke regler for havner. Slike klynger kalles virtuelle. Deres
applikasjon gjør det mulig å stille inn for hver applikasjon, node eller IP-adresse
spesifikke datamaskiner i den primære klyngen, eller blokkere trafikk for
noen applikasjoner uten å påvirke trafikken for andre programmer som kjører
på denne noden. Eller omvendt, en NLB-komponent kan være bundet til flere
nettverkskort, som lar deg konfigurere et antall uavhengige klynger på hver
node. Du bør også være klar over at det å sette opp serverklynger og NLB på samme node
er ikke mulig fordi de fungerer annerledes med nettverksenheter.

Administratoren kan lage en slags hybridkonfigurasjon som har
fordelene med begge metodene, for eksempel ved å opprette en NLB-klynge og sette opp replikering
data mellom noder. Men replikering utføres ikke konstant, men fra tid til annen,
derfor vil informasjonen om forskjellige noder variere i noen tid.

La oss avslutte med teorien her, selv om vi kan snakke om å bygge klynger
i lang tid, listing av muligheter og måter å bygge opp, gir div
anbefalinger og alternativer for spesifikk implementering. La oss forlate alle disse finessene og nyansene
Til selvstudium og la oss gå videre til den praktiske delen.

Sette opp en NLB-klynge

Til organisering av NLB-klynger ingen ekstra programvare kreves, det er alt
produsert ved hjelp av de tilgjengelige Win2k3-verktøyene. Å lage, vedlikeholde og overvåke
NLB-klynger bruker komponenten "Nettverksbelastningsbalansering"
(Network Load Balancing Manager)
, som er i fanen
"Administrasjon" "Kontrollpanel" (NLBMgr-kommando). Siden komponenten
"Nettverksbelastningsbalansering" er installert som en standard Windows-nettverksdriver,
NLB-installasjon kan også utføres ved å bruke "Nettverkstilkoblinger"-komponenten, i
hvor den tilsvarende varen er tilgjengelig. Men det er bedre å bruke bare den første
alternativ, samtidig bruk av NLB-manageren og "Nettverkstilkoblinger"
kan føre til uforutsigbare resultater.

NLB Manager lar deg konfigurere og administrere arbeid fra ett sted samtidig
flere klynger og noder.

Det er også mulig å installere en NLB-klynge på en datamaskin med ett nettverk
adapter knyttet til nettverksbelastningsbalansering, men dette
tilfelle i unicast-modus, kan ikke NLB-behandleren på denne datamaskinen være det
brukes til å kontrollere andre noder, og nodene selv kan ikke utveksle
informasjon med hverandre.

Nå ringer vi NLB-ekspeditøren. Vi har ikke klynger ennå, så det har dukket opp
vinduet inneholder ingen informasjon. Velg "Ny" fra "Klynge"-menyen og
Vi begynner å fylle ut feltene i vinduet "Klyngeparametere". I feltet "Innstillinger".
Cluster IP-parametere" angi verdien av den virtuelle IP-adressen til klyngen, maske
subnett og fullt navn. Verdien til den virtuelle MAC-adressen er satt
automatisk. Rett under velger vi klyngedriftsmodus: unicast eller
multicast. Vær oppmerksom på avmerkingsboksen "Tillat fjernkontroll" - inn
I alle Microsoft-dokumenter anbefales det sterkt å ikke bruke det i
unngå sikkerhetsproblemer. I stedet bør du bruke
ekspeditør eller andre midler fjernkontroll, for eksempel verktøysett
Windows Management (WMI). Hvis beslutningen om å bruke den er tatt, bør du
ta alle nødvendige tiltak for å beskytte nettverket, dekker i tillegg
brannmur UDP-porter 1717 og 2504.

Etter å ha fylt ut alle feltene, klikk "Neste". I "Cluster IP Addresses"-vinduet, når
om nødvendig, legg til flere virtuelle IP-adresser som vil
brukt av denne klyngen. I det neste "Port Rules"-vinduet kan du
angi lastbalansering for én eller for en gruppe porter av alle eller
valgt IP via UDP- eller TCP-protokoller, samt blokkere tilgang til klyngen
spesifikke porter (som brannmuren ikke erstatter). Standard klynge
behandler forespørsler for alle porter (0–65365); Det er bedre å begrense denne listen,
legger bare til det som virkelig er nødvendig. Selv om du ikke vil rote rundt,
du kan la alt være som det er. Forresten, i Win2k som standard all trafikk
rettet til klyngen, behandlet kun noden som hadde høyest prioritet,
de resterende nodene ble koblet til bare når den viktigste sviktet.

For eksempel, for IIS trenger du bare å aktivere portene 80 (http) og 443 (https).
Dessuten kan du gjøre det slik at for eksempel beskyttede forbindelser behandles
Bare enkelte servere som sertifikatet er installert på. For å legge til
ny regel, klikk "Legg til", i dialogboksen som vises, skriv inn
Verts IP-adresse, eller hvis regelen gjelder for alle, la avmerkingsboksen stå
"Alle". I "Fra" og "Til"-feltene i portområdet setter vi samme verdi -
80. Nøkkelfeltet er "Filtreringsmodus" - her
spesifiserer hvem som skal behandle denne forespørselen. Det er tre tilgjengelige felt som definerer modusen
filtrering: "Flere noder", "Enkelt node" og "Deaktiver dette portområdet".
Å velge "Single Node" betyr at trafikk dirigeres til valgt IP (datamaskin
eller klynge) med det angitte portnummeret vil bli behandlet av den aktive noden,
har den laveste prioritetsindikatoren (mer om det nedenfor). Velger "Deaktiver ..."
betyr at slik trafikk vil bli forkastet av alle klyngemedlemmer.

I filtreringsmodusen "Flere noder" kan du i tillegg spesifisere alternativet
bestemme klienttilhørighet til å dirigere trafikk fra en gitt klient til
samme klynge node. Det er tre alternativer: "Ingen", "En" eller "Klasse"
C". Å velge den første betyr at enhver forespørsel vil bli besvart av en vilkårlig
node Men du bør ikke bruke den hvis UDP-protokollen er valgt i regelen eller
"Både". Når du velger de resterende poengene, vil likheten mellom klienter bli bestemt av
spesifikt IP- eller klasse C-nettverksområde.

Så, for vår regel med port 80, la oss velge alternativet
"Flere noder - klasse C." Vi fyller ut regelen for 443 på samme måte, men bruker
"One node" slik at klienten alltid blir besvart av hovednoden med den laveste
prioritet. Hvis avsenderen oppdager en inkompatibel regel, vises den
advarselsmelding vil bli lagt til i Windows-hendelsesloggen
tilsvarende oppføring.

Koble deretter til noden til den fremtidige klyngen ved å skrive inn navnet eller den virkelige IP-adressen, og
Vi bestemmer grensesnittet som skal kobles til klyngenettverket. I Alternativer-vinduet
node" velg prioritet fra listen, spesifiser nettverksinnstillinger, angi initialen
nodetilstand (kjører, stoppet, stoppet). Prioritet samtidig
er en unik nodeidentifikator; jo lavere tall, jo høyere prioritet.
Noden med prioritet 1 er hovedserveren, primært mottaker
pakker og fungerer som en rutingsansvarlig.

Avmerkingsboksen "Lagre tilstand etter omstart av datamaskinen" lar deg
feil eller omstart av denne noden vil automatisk sette den i drift. Etter å ha klikket
På "Klar", vil en oppføring om den nye klyngen vises i Manager-vinduet, der for nå
det er én node.
Å legge til neste node er like enkelt. Velg "Legg til node" fra menyen eller
"Koble til eksisterende", avhengig av hvilken datamaskin
tilkobling blir opprettet (det er allerede en del av klyngen eller ikke). Så i vinduet
angi navnet eller adressen til datamaskinen, hvis rettighetene til å koble til er tilstrekkelige, ny
noden vil være koblet til klyngen. Først vil ikonet ved siden av navnet hans være
annerledes, men når konvergensprosessen er fullført, vil den være den samme som
første datamaskin.

Siden avsenderen viser egenskapene til noder på tidspunktet for tilkoblingen, for
For å avklare gjeldende tilstand bør du velge en klynge og kontekstmenyen avsnitt
"Oppdater". Lederen vil koble til klyngen og vise de oppdaterte dataene.

Etter installasjon NLB-klynge ikke glem å endre DNS-posten til
navneoppløsning viste nå klyngens IP.

Endring av serverbelastning

I denne konfigurasjonen vil alle servere lastes jevnt (unntatt
"Én node"-alternativ). I noen tilfeller er det nødvendig å omfordele lasten,
å plassere mesteparten av arbeidet på en av nodene (for eksempel den kraftigste).
For en klynge kan regler endres etter at de er opprettet ved å velge
i kontekstmenyen som vises når du klikker på navnet, velg elementet "Klyngeegenskaper".
Alle innstillingene som vi snakket om ovenfor er tilgjengelige her. Menyelement
"Node Properties" gir litt flere alternativer. I "Nodealternativer"
du kan endre prioritetsverdien for en bestemt node. I "Regler
for porter" kan du ikke legge til eller slette en regel; dette er kun tilgjengelig på nivået
klynge. Men ved å velge å redigere en bestemt regel får vi muligheten
justere noen innstillinger. Så, med filtreringsmodus satt
"Flere noder" blir elementet "Load Estimation" tilgjengelig, noe som tillater
omfordele lasten til en bestemt node. Standard er krysset av
"Lik", men i "Belastningsestimering" kan du spesifisere en annen belastningsverdi for
spesifikk node, som en prosentandel av den totale klyngebelastningen. Hvis modusen er aktivert
filtrering "Enkel node", i dette vinduet vises ny parameter"En prioritet
behandling." Ved å bruke den kan du lage trafikk til en bestemt port
vil bli behandlet først av en node i klyngen, og til en annen av andre
knute.

Hendelseslogging

Som nevnt tidligere, registrerer Network Load Balancing alle
klyngehandlinger og endringer i Windows-hendelsesloggen. Å se dem
velg "Event Viewer – System", NLB inkluderer WLBS-meldinger (fra
Windows Load Balancing Service, som denne tjenesten ble kalt i NT). Dessuten, i
koordinatorvinduet viser de siste meldingene som inneholder informasjon om feil
og om alle konfigurasjonsendringer. Som standard er ikke denne informasjonen
er lagret. For at den skal skrives til en fil, velg "Alternativer ->
Loggingsalternativer, velg avmerkingsboksen "Aktiver logging" og spesifiser et navn
fil. Ny fil vil bli opprettet i en underkatalog av kontoen din i Dokumenter
og Innstillinger.

Sette opp IIS med replikering

En klynge er en klynge, men uten en tjeneste gir det ingen mening. La oss derfor legge til IIS (Internett
informasjonstjenester)
. IIS-serveren er inkludert i Win2k3, men å koke det ned til
minimerer muligheten for angrep på serveren; den er ikke installert som standard.

Det er to måter å installere IIS på: gjennom kontrollpanelet eller
rollestyringsveiviser av denne serveren. La oss se på den første. La oss gå til
"Kontrollpanel - Legg til eller fjern programmer"
Fjern programmer), velg "Installer Windows-komponenter" (Legg til/fjern Windows
Komponenter). Gå nå til "Application Server" -elementet og sjekk inn "Tjenester"
IIS" er alt som trengs. Som standard er serverens arbeidskatalog \Inetpub\wwwroot.
Når det er installert, kan IIS skrive ut statiske dokumenter.

Introduksjon

En serverklynge er en gruppe uavhengige servere administrert av Cluster-tjenesten som fungerer sammen som et enkelt system. Serverklynger opprettes ved å kombinere flere Windows® 2000 Advanced Server- og Windows 2000-servere Datasenterserver Til samarbeid, og gir dermed høye nivåer av tilgjengelighet, skalerbarhet og administrerbarhet for ressurser og applikasjoner.

Formålet med en serverklynge er å sikre kontinuerlig brukertilgang til applikasjoner og ressurser i tilfeller av maskinvare- eller programvarefeil eller planlagte utstyrsstanser. Hvis en av klyngeserverne er utilgjengelig på grunn av feil eller stans for utførelse Vedlikehold, informasjonsressurser og applikasjoner omfordeles blant de gjenværende tilgjengelige klyngenodene.

For klyngesystemer, bruken av begrepet " høy tilgjengelighet" er å foretrekke fremfor å bruke begrepet " feiltoleranse", siden feiltoleranseteknologier krever et høyere nivå av utstyrsmotstand mot ytre påvirkninger og gjenopprettingsmekanismer. Som regel bruker feiltolerante servere en høy grad av maskinvareredundans, pluss i tillegg spesialisert programvare som tillater nesten umiddelbar gjenoppretting i tilfelle en enkelt programvare- eller programvarefeil. maskinvare. Disse løsningene er betydelig dyrere sammenlignet med bruk av klyngeteknologier, siden organisasjoner er tvunget til å betale for mye for ekstra maskinvare, som er inaktiv mesteparten av tiden og bare brukes i tilfelle feil. Feiltolerante servere brukes til applikasjoner som håndterer store volumer av transaksjoner med høy verdi i områder som betalingssentraler, minibanker eller børser.

Selv om Cluster-tjenesten ikke garanterer oppetid, gir den et høyt tilgjengelighetsnivå som er tilstrekkelig til å kjøre de fleste virksomhetskritiske applikasjoner. Cluster-tjenesten kan overvåke ytelsen til applikasjoner og ressurser, automatisk gjenkjenne feiltilstander og gjenopprette systemet når de er løst. Dette gir mer fleksibel arbeidsbelastningshåndtering i klyngen og øker tilgjengeligheten til systemet som helhet.

De viktigste fordelene oppnådd ved å bruke Cluster-tjenesten er:

  • Høy tilgjengelighet. Hvis noen node svikter, overfører Cluster-tjenesten kontroll over ressurser som f.eks. harddisker og nettverksadresser til den aktive klyngenoden. Når det oppstår en programvare- eller maskinvarefeil, starter klyngeprogramvaren på nytt den mislykkede applikasjonen på den fungerende noden, eller flytter hele belastningen av den mislykkede noden til de gjenværende fungerende nodene. Imidlertid kan brukere bare merke en kort forsinkelse i tjenesten.
  • Tilbakebetaling etter avslag. Cluster-tjenesten distribuerer automatisk arbeidsbelastningen i klyngen når en mislykket node blir tilgjengelig igjen.
  • Kontrollerbarhet. Cluster Administrator er en snap-in som du kan bruke til å administrere klyngen din som enhetlig system, samt for applikasjonsadministrasjon. Cluster Administrator gir en gjennomsiktig oversikt over hvordan applikasjoner kjører som om de kjørte på samme server. Du kan flytte applikasjoner til forskjellige servere i en klynge ved å dra og slippe klyngeobjekter med musen. Du kan flytte data på samme måte. Denne metoden kan brukes til å manuelt distribuere arbeidsbelastningen til servere, samt å avlaste serveren og deretter stoppe den for planlagt vedlikehold. I tillegg lar klyngeadministratoren deg eksternt overvåke statusen til klyngen, alle dens noder og ressurser.
  • Skalerbarhet. For å sikre at klyngeytelsen alltid kan holde tritt med økende krav, har Cluster-tjenesten skaleringsmuligheter. Hvis den generelle klyngeytelsen blir utilstrekkelig til å håndtere belastningen som genereres av klyngeapplikasjoner, kan flere noder legges til klyngen.

Dette dokumentet inneholder instruksjoner for installasjon av Cluster-tjenesten på servere som kjører Windows-kontroll 2000 Advanced Server og Windows 2000 Datacenter Server, og beskriver prosessen med å installere Cluster-tjenesten på cluster node-servere. Denne veiledningen beskriver ikke installasjon og konfigurering av grupperte applikasjoner, men veileder deg bare gjennom hele prosessen med å installere en enkel to-node-klynge.

Systemkrav for å lage en serverklynge

Følgende sjekklister hjelper deg med å forberede installasjonen. Trinnvise instruksjoner Installasjonsinstruksjoner vil bli presentert under disse listene.

Programvarekrav

  • Operasjonssal Microsoft system Windows 2000 Advanced Server eller Windows 2000 Datacenter Server installert på alle servere i klyngen.
  • En installert navneløsningstjeneste som f.eks Domenenavngivning System (DNS), Windows Internet Naming System (WINS), HOSTS, etc.
  • Terminalserver for ekstern klyngeadministrasjon. Dette kravet er ikke obligatorisk, men anbefales kun for å sikre enkel klyngeadministrasjon.

Maskinvarekrav

  • Maskinvarekravene til klyngennoden er de samme som for installasjon av operativsystemene Windows 2000 Advanced Server eller Windows 2000 Datacenter Server. Disse kravene finner du på søkesiden Microsoft-katalog.
  • Klyngemaskinvaren må være sertifisert og oppført på Microsoft Hardware Compatibility List (HCL) for Cluster-tjenesten. Siste versjon denne listen finner du på søkesiden Maskinvarekompatibilitetsliste for Windows 2000 Microsoft-katalogen ved å velge søkekategorien "Klynge".

To HCL-kompatible datamaskiner, hver med:

  • HDD med en oppstartbar systempartisjon og operativsystemet Windows 2000 Advanced Server eller Windows 2000 Datacenter Server installert. Denne stasjonen skal ikke kobles til den delte lagringsbussen, omtalt nedenfor.
  • Separat PCI Fibre Channel- eller SCSI-enhetskontroller for tilkobling av en ekstern delt lagringsenhet. Denne kontrolleren må være til stede i tillegg til kontrolleren oppstartsdisk.
  • To nettverks-PCI-adaptere installert på hver datamaskin i klyngen.
  • En HCL-listet ekstern disklagringsenhet som er koblet til alle noder i klyngen. Den vil fungere som en klyngedisk. Konfigurasjon ved hjelp av hardware RAID-arrays anbefales.
  • Kabler for å koble en felles lagringsenhet til alle datamaskiner. Se produsentens dokumentasjon for instruksjoner om konfigurering av lagringsenheter. Hvis tilkoblingen gjøres til SCSI-bussen, kan du se vedlegg A for tilleggsinformasjon.
  • Alt utstyr på klyngedatamaskinene skal være helt identisk. Dette vil forenkle konfigurasjonsprosessen og eliminere potensielle kompatibilitetsproblemer.

Krav for å sette opp nettverkskonfigurasjon

  • Et unikt NetBIOS-navn for klyngen.
  • Fem unike statiske IP-adresser: to adresser for private nettverkskort, to for offentlige nettverkskort og én adresse for klyngen.
  • Domene Regnskap for Cluster-tjenesten (alle klyngenoder må være medlemmer av samme domene)
  • Hver node må ha to nettverksadaptere - en for tilkobling til det offentlige nettverket, en for intra-cluster kommunikasjon av noder. Konfigurasjon ved hjelp av en enkelt nettverksadapter for å koble til både et offentlig og privat nettverk samtidig støttes ikke. Å ha en egen nettverksadapter for det private nettverket er nødvendig for å overholde HCL-kravene.

Krav til delt lagringsdisk

  • Alle delte lagringsdisker, inkludert quorum-disken, må være fysisk koblet til den delte bussen.
  • Alle disker koblet til den delte bussen må være tilgjengelig for hver node. Dette kan kontrolleres under installasjonen og konfigureringen av vertsadapteren. Til detaljerte instruksjoner Se adapterprodusentens dokumentasjon.
  • SCSI-enheter må tildeles unike SCSI-ID-numre, og terminatorer må installeres riktig på SCSI-bussen, i henhold til produsentens instruksjoner. 1
  • Alle delte lagringsdisker må konfigureres som grunnleggende disker (ikke dynamiske)
  • Alle diskpartisjoner med delt lagringsenhet må formateres som filformat. NTFS-system.

Det anbefales sterkt å kombinere alle delte lagringsstasjoner til maskinvare-RAID-arrayer. Selv om det ikke er nødvendig, er det å lage feiltolerante RAID-konfigurasjoner nøkkelen til å beskytte mot diskfeil.

Klyngeinstallasjon

Generell installasjonsoversikt

Under installasjonsprosessen vil noen noder bli stengt og noen startes på nytt. Dette er nødvendig for å sikre integriteten til dataene på disker koblet til fellesbussen til den eksterne lagringsenheten. Datakorrupsjon kan oppstå når flere noder samtidig forsøker å skrive til samme disk som ikke er beskyttet av klyngeprogramvaren.

Tabell 1 hjelper deg med å bestemme hvilke noder og lagringsenheter som skal aktiveres på hvert trinn av installasjonen.

Denne veiledningen beskriver hvordan du oppretter en to-node-klynge. Men hvis du setter opp en klynge med mer enn to noder, kan du bruke kolonneverdien "Node 2" for å bestemme tilstanden til de gjenværende nodene.

Tabell 1. Sekvens for å slå på enheter ved installasjon av en klynge

Steg Node 1 Node 2 Oppbevarings enhet En kommentar
Angi nettverksinnstillinger Av Sørg for at alle lagringsenheter koblet til fellesbussen er slått av. Slå på alle noder.
Konfigurerer delte disker Av Slå av alle noder. Slå på den delte lagringsenheten, og slå deretter på den første noden.
Kontrollerer konfigurasjonen av delte disker Av Slå av den første noden, slå på den andre noden. Gjenta for node 3 og 4 om nødvendig.
Konfigurering av den første noden Av Slå av alle noder; slå på den første noden.
Konfigurerer den andre noden Etter vellykket konfigurering av den første noden, slå på den andre noden. Gjenta for node 3 og 4 om nødvendig.
Fullfører installasjonen På dette tidspunktet skal alle noder være slått på.

Før installasjon programvare klynger du trenger for å utføre følgende trinn:

  • Installer et operativsystem på hver datamaskin i klyngen Windows-system 2000 Advanced Server eller Windows 2000 Datacenter Server.
  • Konfigurer nettverksinnstillinger.
  • Konfigurer delte lagringsstasjoner.

Fullfør disse trinnene på hver node i klyngen før du installerer Cluster-tjenesten på den første noden.

For å konfigurere Cluster-tjenesten på en Windows 2000-server, må kontoen din ha administratorrettigheter på hver node. Alle klyngenoder må enten være medlemsservere eller kontrollere for samme domene. Blandet bruk av medlemsservere og domenekontrollere i en klynge er uakseptabelt.

Installere Windows 2000-operativsystemet

Til Windows installasjoner 2000 på hver klyngennode, se dokumentasjonen du mottok med operativsystemet.

Dette dokumentet bruker navnestrukturen fra håndboken "Trinn-for-trinn-veiledning til en felles infrastruktur for Windows 2000 Server-distribusjon". Du kan imidlertid bruke hvilket som helst navn.

Før du begynner å installere Cluster-tjenesten, må du logge på som administrator.

Konfigurere nettverksinnstillinger

Merk: På dette tidspunktet i installasjonen slår du av alle delte lagringsenheter, og slår deretter på alle noder. Du må forhindre at flere noder får tilgang til en delt lagringsenhet samtidig inntil Cluster-tjenesten er installert på minst én node og den noden er slått på.

Hver node må ha minst to nettverkskort installert - en for å koble til det offentlige nettverket, og en for å koble til det private nettverket som består av klyngenoder.

Det private nettverkskortet gir kommunikasjon mellom noder, rapportering av gjeldende tilstand til klyngen og administrasjon av klyngen. Hver nodes offentlige nettverksadapter kobler klyngen til det offentlige nettverket som består av klientdatamaskiner.

Sørg for at alle nettverkskort er fysisk tilkoblet riktig: private nettverkskort er kun koblet til andre private nettverkskort, og offentlige nettverkskort er koblet til offentlige nettverkssvitsjer. Koblingsskjemaet er vist i figur 1. Utfør denne testen på hver klyngennode før du fortsetter med å konfigurere de delte lagringsdiskene.

Figur 1: Eksempel på en to-node klynge

Konfigurere en privat nettverksadapter

Fullfør disse trinnene på den første noden i klyngen din.

  1. Mitt nettverksmiljø og velg et lag Egenskaper.
  2. Høyreklikk på ikonet.

Merk: Hvilket nettverkskort som skal betjene et privat nettverk og hvilket offentlig nettverk avhenger av den fysiske tilkoblingen til nettverkskablene. I dette dokumentet Vi vil anta at den første adapteren (Local Connection) er koblet til det offentlige nettverket og den andre adapteren (Local Connection 2) er koblet til det private nettverket til klyngen. I ditt tilfelle er dette kanskje ikke tilfelle.

  1. Stat. Vindu Status LAN-tilkobling 2 viser tilkoblingsstatus og hastighet. Hvis tilkoblingen er i frakoblet tilstand, kontroller kablene og tilkoblingene. Løs problemet før du fortsetter. Klikk på knappen Lukk.
  2. Høyreklikk på ikonet igjen LAN-tilkobling 2, velg en kommando Egenskaper og trykk på knappen Melodi.
  3. Velg en fane I tillegg. Vinduet vist i figur 2 vises.
  4. For private nettverkskort må hastigheten angis manuelt i stedet for standardverdien. Spesifiser nettverkshastigheten din i rullegardinlisten. Ikke bruk verdier "Auto Sense" eller "Auto valg" for å velge hastighet, siden noen nettverkskort kan slippe pakker mens de bestemmer tilkoblingshastigheten. For å stille inn nettverksadapterhastigheten, spesifiser den faktiske verdien for parameteren Tilkoblingstype eller Hastighet.

Figur 2: Ytterligere nettverkskortinnstillinger

Alle klyngenettverksadaptere koblet til samme nettverk må konfigureres identisk og bruke de samme parameterverdiene Dupleksmodus, Flytkontroll, Tilkoblingstype, etc. Selv om forskjellig nettverksutstyr brukes på forskjellige noder, må verdiene til disse parameterne være de samme.

  1. Plukke ut Internett-protokoll (TCP/IP) i listen over komponenter som brukes av tilkoblingen.
  2. Klikk på knappen Egenskaper.
  3. Sett bryteren i posisjon Bruk følgende IP-adresse og skriv inn adressen 10.1.1.1 . (For den andre noden, bruk adressen 10.1.1.2 ).
  4. Sett subnettmasken: 255.0.0.0 .
  5. Klikk på knappen I tillegg og velg en fane VINNER. Sett bryterverdien til posisjon Deaktiver NetBIOS over TCP/IP. Klikk OK for å gå tilbake til forrige meny. Utfør dette trinnet kun for det private nettverkskortet.

Dialogboksen din skal se ut som figur 3.

Figur 3: IP-adresse for privat nettverkstilkobling

Konfigurere et offentlig nettverkskort

Merk: Hvis en DHCP-server kjører på et offentlig nettverk, kan IP-adressen til nettverksadapteren på det offentlige nettverket tildeles automatisk. Denne metoden anbefales imidlertid ikke for cluster node-adaptere. Vi anbefaler på det sterkeste å tildele permanente IP-adresser til alle offentlige og private vertsnettverkskort. Ellers, hvis DHCP-serveren mislykkes, kan tilgang til klyngenodene være umulig. Hvis du blir tvunget til å bruke DHCP for nettverkskort på et offentlig nettverk, bruk lang sikt adresseleie - dette vil sikre at den dynamisk tilordnede adressen forblir gyldig selv om DHCP-serveren er midlertidig utilgjengelig. Tildel alltid permanente IP-adresser til private nettverkskort. Husk at Cluster-tjenesten bare kan gjenkjenne ett nettverksgrensesnitt per subnett. Hvis du trenger hjelp til å tildele nettverksadresser i Windows 2000, se operativsystemets innebygde hjelp.

Gi nytt navn til nettverkstilkoblinger

For klarhetens skyld anbefaler vi at du endrer navnene på nettverkstilkoblingene dine. Du kan for eksempel endre navnet på tilkoblingen LAN-tilkobling 2. Denne metoden vil hjelpe deg lettere å identifisere nettverk og tildele rollene deres på riktig måte.

  1. Høyreklikk på ikonet 2.
  2. Velg kommandoen i kontekstmenyen Gi nytt navn.
  3. Tast inn Koble til klyngens private nettverk i tekstfeltet og trykk på tasten TAST INN.
  4. Gjenta trinn 1-3 og endre tilkoblingsnavnet LAN-tilkoblingKoble til et offentlig nettverk.

Figur 4: Omdøpte nettverkstilkoblinger

  1. De omdøpte nettverkstilkoblingene skal se ut som figur 4. Lukk vinduet Nettverk og fjerntilgang til nettverket. Nye nettverkstilkoblingsnavn replikeres automatisk til andre noder i klyngen når de slås på.

Undersøkelse nettverkstilkoblinger og navneoppløsning

For å teste driften av det konfigurerte nettverksutstyret, utfør følgende trinn for alle nettverkskort på hver node. For å gjøre dette må du kjenne IP-adressene til alle nettverkskortene i klyngen. Du kan få denne informasjonen ved å kjøre kommandoen ipconfig på hver node:

  1. Klikk på knappen Start, velge lag Henrette og skriv inn kommandoen cmd i tekstvinduet. Klikk OK.
  2. Skriv inn kommandoen ipconfig /all og trykk på tasten TAST INN. Du vil se IP-prfor hvert nettverkskort på lokal maskin.
  3. I tilfelle vinduet ditt ennå ikke er åpent kommandolinje, følg trinn 1.
  4. Skriv inn kommandoen ping ipad-adresse Hvor IP adresse er IP-adressen til det tilsvarende nettverkskortet på en annen node. Anta for eksempel at nettverkskortene har følgende IP-adresser:
Nodenummer Nettverkstilkoblingsnavn Nettverksadapterens IP-adresse
1 Koble til et offentlig nettverk 172.16.12.12
1 Koble til klyngens private nettverk 10.1.1.1
2 Koble til et offentlig nettverk 172.16.12.14
2 Koble til klyngens private nettverk 10.1.1.2

I dette eksemplet må du kjøre kommandoene ping 172.16.12.14 Og ping 10.1.1.2 fra node 1, og utfør kommandoene ping 172.16.12.12 Og ping 10.1.1.1 fra node 2.

For å sjekke navneoppløsning, kjør kommandoen ping, bruker datamaskinens navn som argument i stedet for IP-adressen. For å sjekke navneoppløsningen for den første klyngenoden som heter hq-res-dc01, kjør kommandoen ping hq-res-dc01 fra hvilken som helst klientdatamaskin.

Sjekker domenemedlemskap

Alle klyngenoder må være medlemmer av samme domene og ha nettverksmuligheter med en domenekontroller og DNS-server. Noder kan konfigureres som medlemsdomeneservere eller som kontrollere for samme domene. Hvis du bestemmer deg for å gjøre en av nodene til en domenekontroller, må alle andre noder i klyngen også konfigureres som domenekontrollere for samme domene. Denne veiledningen forutsetter at alle verter er domenekontrollere.

Merk: For lenker til tilleggsdokumentasjon om oppsett av domener, DNS-tjenester og DHCP i Windows 2000, se avsnitt Relaterte ressurser på slutten av dette dokumentet.

  1. Høyreklikk Datamaskinen min og velg et lag Egenskaper.
  2. Velg en fane Nettverksidentifikasjon. I dialogboksen Egenskaper til systemet Du vil se hele datamaskinen og domenenavnet. I vårt eksempel kalles domenet reskit.com.
  3. Hvis du har konfigurert noden som en medlemsserver, kan du på dette stadiet koble den til domenet. Klikk på knappen Egenskaper og følg instruksjonene for å koble datamaskinen til domenet.
  4. Lukk vinduene Egenskaper til systemet Og Datamaskinen min.

Opprett en Cluster-tjenestekonto

For Cluster-tjenesten må du opprette en egen domenekonto som den vil bli lansert under. Installasjonsprogrammet krever at du oppgir legitimasjon for Cluster-tjenesten, så en konto må opprettes før du installerer tjenesten. Kontoen må ikke eies av noen domenebruker, og må kun brukes til å kjøre Cluster-tjenesten.

  1. Klikk på knappen Start, velg en kommando Programmer / Administrasjon, kjør snapin-modulen.
  2. Utvid kategori reskit.com, hvis den ennå ikke er distribuert
  3. Velg fra listen Brukere.
  4. Høyreklikk på Brukere, velg fra hurtigmenyen Skape, plukke ut Bruker.
  5. Skriv inn et navn for klyngetjenestekontoen som vist i figur 5 og klikk Lengre.

Figur 5: Legge til en klyngebruker

  1. Kryss av i boksene Hindre brukeren fra å endre passord Og Passordet har ingen utløpsdato. Klikk på knappen Lengre og en knapp Klarå opprette en bruker.

Merk: Hvis den administrative sikkerhetspolicyen ikke tillater passord som aldri utløper, må du oppdatere passordet og konfigurere Cluster-tjenesten på hver node før den utløper.

  1. Høyreklikk på brukeren Klynge i høyre verktøylinje Active Directory– brukere og datamaskiner.
  2. Velg kommandoen i kontekstmenyen Legg til medlemmer i en gruppe.
  3. Velg gruppe Administratorer og trykk OK. Den nye kontoen har nå administratorrettigheter på lokal datamaskin.
  4. Lukk låsen Active Directory – brukere og datamaskiner.

Konfigurering av delte lagringsstasjoner

Advarsel: Sørg for at minst én av klyngenodene kjører operativsystemet Windows 2000 Advanced Server eller Windows 2000 Datacenter Server, og at klyngetjenesten er konfigurert og kjører. Først etter dette kan du laste ned operativsystem Windows 2000 på andre noder. Hvis disse betingelsene ikke er oppfylt, kan klyngediskene bli skadet.

For å begynne å konfigurere delte lagringsstasjoner, slå av alle noder. Deretter slår du på den delte lagringsenheten og deretter på node 1.

Quorum disk

Quorumdisken brukes til å lagre sjekkpunkter og gjenopprettingsloggfiler for klyngedatabasen, og gir klyngeadministrasjon. Vi gir følgende anbefalinger for å lage en quorumsdisk:

  • Lag en liten partisjon (minst 50 MB i størrelse) for å bruke som en quorumsdisk. Vi anbefaler generelt å lage en quorumsdisk på 500 MB.
  • Dediker en egen disk for quorumsressursen. Fordi hvis en quorum-disk svikter, vil hele klyngen svikte, anbefaler vi på det sterkeste å bruke en maskinvaredisk RAID-array.

Under installasjonsprosessen for Cluster-tjenesten vil du bli bedt om å tildele en bokstav til quorumsstasjonen. I vårt eksempel vil vi bruke bokstaven Q.

Konfigurering av delte lagringsstasjoner

  1. Høyreklikk Datamaskinen min, velg en kommando Kontroll. Utvid kategorien i vinduet som åpnes Lagringsenheter.
  2. Velg et lag Diskbehandling.
  3. Sørg for at alle delte lagringsstasjoner er formatert som NTFS og har statusen Grunnleggende. Hvis du kobler til en ny stasjon, starter den automatisk Veiviser for disksignering og oppdatering. Klikk på knappen når veiviseren starter Oppdater, for å fortsette driften, etter dette vil disken bli identifisert som Dynamisk. For å konvertere disken til grunnleggende, høyreklikk på Disk #(Hvor # – nummeret på disken du jobber med) og velg kommandoen Gå tilbake til grunnleggende disk.

Høyreklikkområde Ikke distribuert ved siden av den tilsvarende disken.

  1. Velg et lag Lag en seksjon
  2. Vil starte Veiviser for oppretting av partisjoner. Trykk to ganger på knappen Lengre.
  3. Skriv inn ønsket partisjonsstørrelse i megabyte og klikk på knappen Lengre.
  4. Klikk på knappen Lengre, godtar standard stasjonsbokstaven som er foreslått
  5. Klikk på knappen Lengre for å formatere og lage en partisjon.

Tilordning av stasjonsbokstaver

Etter at databussen, diskene og delte lagringspartisjonene er konfigurert, må du tilordne stasjonsbokstaver til alle partisjonene på alle diskene i klyngen.

Merk: Tilkoblingspunkter er funksjonalitet filsystem som lar deg installere filsystem bruke eksisterende kataloger, uten å tildele en stasjonsbokstav. Monteringspunkter støttes ikke av klynger. Noen ekstern stasjon brukt som en klyngressurs må partisjoneres inn i NTFS-partisjoner, og disse partisjonene må tildeles stasjonsbokstaver.

  1. Høyreklikk på ønsket partisjon og velg Endre stasjonsbokstav og stasjonsbane.
  2. Velg en ny stasjonsbokstav.
  3. Gjenta trinn 1 og 2 for alle delte lagringsstasjoner.

Figur 6: Diskpartisjoner med tildelte bokstaver

  1. På slutten av prosedyren, snap-vinduet Databehandling skal se ut som figur 6. Lukk snap-in Databehandling.
  1. Klikk på knappen Start, plukke ut Programmer / Standard, og kjør programmet " Notisbok".
  2. Skriv inn noen få ord og lagre filen under navnet test.txt ved å velge kommandoen Lagre som fra menyen Fil. Lukk Notisbok.
  3. Dobbeltklikk på ikonet Mine dokumenter.
  4. Høyreklikk på filen test.txt og velg kommandoen i kontekstmenyen Kopiere.
  5. Lukke vinduet.
  6. Åpen Datamaskinen min.
  7. Dobbeltklikk på partisjonen for delt lagringsstasjon.
  8. Høyreklikk og velg kommando Sett inn.
  9. En kopi av filen skal vises på den delte lagringsstasjonen test.txt.
  10. Dobbeltklikk på filen test.txt for å åpne den fra en delt lagringsstasjon. Lukk filen.
  11. Velg filen og trykk på tasten Del for å slette en fil fra klyngedisken.

Gjenta prosedyren for alle diskene i klyngen for å sikre at de er tilgjengelige fra den første noden.

Slå nå av den første noden, slå på den andre noden og gjenta trinnene i avsnittet Kontroll av drift og offentlig tilgang til disker. Følg de samme trinnene på alle ekstra noder. Når du er sikker på at alle noder kan lese og skrive informasjon til de delte lagringsstasjonene, slår du av alle noder unntatt den første og fortsetter til neste seksjon.

Jeg bygde min første "klynge" av enkeltbordsdatamaskiner nesten umiddelbart etter at Orange Pi PC-mikrodatamaskinen begynte å bli populær. Det kan kalles en "klynge" med stor strekk, for fra et formelt synspunkt var det rettferdig det lokale nettverket av fire brett som "så" hverandre og kunne få tilgang til Internett.

Enheten deltok i SETI@home-prosjektet og klarte til og med å telle noe. Men dessverre kom ingen for å hente meg fra denne planeten.
Men i løpet av all denne tiden jeg fiklet med ledninger, kontakter og microSD-kort, lærte jeg mye. Så, for eksempel, fant jeg ut at du ikke skulle stole på den deklarerte kraften til strømforsyningen, at det ville være fint å fordele belastningen når det gjelder forbruk, og tverrsnittet av ledningen betyr noe.

Og ja, vi måtte "kollektivt dyrke" strømstyringssystemet, fordi samtidig start av fem enkeltkortsenheter kan kreve en startstrøm i størrelsesorden 8-10A (5*2)! Dette er mye, spesielt for strømforsyninger laget i kjellerne i landet, hvor vi elsker å bestille alle slags... interessante dingser.

Jeg begynner nok med henne. Oppgaven kom ned til relativt enkle handlinger - etter en gitt tidsperiode, slå sekvensielt på 4 kanaler som 5 volt tilføres gjennom. Den enkleste måten å implementere planen din på er Arduino (som hver geek med respekt for seg selv har en overflod av) og dette mirakelbrettet fra Ali med 4 reléer.

Og du vet, det fungerte til og med.

Klikkene i "kjøleskapsstil" ved oppstart forårsaket imidlertid noe ubehag. For det første, når det var et klikk, løp interferens gjennom strømforsyningen og det var nødvendig å installere kondensatorer, og for det andre var hele strukturen ganske stor.

Så en dag byttet jeg rett og slett ut reléblokken med transistorbrytere basert på IRL520.

Dette løste problemet med forstyrrelser, men siden mosfet kontrollerer "null", måtte jeg forlate messingbena i stativet for ikke å koble til bakken til brettene ved et uhell.

Og nå blir løsningen replikert perfekt og to klynger fungerer allerede stabilt uten noen overraskelser. Akkurat som planlagt.

Men la oss gå tilbake til replikering. Hvorfor kjøpe strømforsyninger for en betydelig sum penger når det er mange rimelige ATX-er bokstavelig talt under føttene dine?
Dessuten har de alle spenningene (5,12,3.3), begynnelsen av selvdiagnose og muligheten for programkontroll.

Vel, jeg vil ikke gå inn for mye detaljer her - en artikkel om å kontrollere ATX via Arduino.

Vel, er alle pillene spist, og frimerkene sitter også fast? Det er på tide å sette alt sammen.

Det vil være en hodenode som kobles til omverdenen via WiFi og sender "Internett" til klyngen. Den vil bli drevet av ATX standby-spenning.

Faktisk er TBNG ansvarlig for distribusjon av Internett.
Så, hvis ønskelig, kan klynge noder skjules bak TOR.

Dessuten vil det være et vanskelig brett koblet via i2c til denne hodenoden. Den vil kunne slå på/av hver av de 10 arbeidernodene. I tillegg vil den kunne kontrollere tre 12V-vifter for å avkjøle hele systemet.

Driftsscenarioet er som følger: når ATX er slått på ved 220V, starter hodenoden. Når systemet er klart for drift, slår det sekvensielt på alle 10 noder og vifter.
Når bytteprosessen er fullført, vil hodenoden gå rundt hver fungerende node og spørre hvordan vi har det, hva er temperaturen. Hvis et av stativene blir varmt, øk luftstrømmen.
Vel, med en avslutningskommando vil hver av nodene bli forsiktig slått av og deaktivert.

Jeg har tegnet tavlediagrammet selv, så det ser skummelt ut. En godt trent person tok imidlertid på seg sporingen og produksjonen, noe vi takker ham veldig for.

Her er den i ferd med å monteres

Her er en av de første skissene over plasseringen av klyngekomponentene. Laget på et rutete papir og udødeliggjort via Office Lens på telefonen.

Hele strukturen er plassert på et ark med tekstolitt kjøpt for anledningen.

Dette er omtrent slik plasseringen av nodene inni ser ut. To stativer med fem kort hver.

Her kan du se Arduino-kontrollen. Den er koblet til hodet Orange Pi Pc via i2c via en nivåomformer.

Vel, her er den endelige (nåværende versjon).

Så alt du trenger er å skrive flere verktøy i Python som kan lede all denne musikken - slå den på, slå den på og reguler viftehastigheten.

Jeg skal ikke kjede deg med tekniske detaljer - det ser omtrent slik ut:

1
2
3
4
5
6
7
8
#!/usr/bin/env sh

ekko "Starter ATX-kort..."
/home/zno/i2creobus/i2catx_tool.py --start
ekko "Angi innledende vifteverdier..."
/home/zno/i2creobus/i2creobus_tool.py --fan 0 --sett 60
/home/zno/i2creobus/i2creobus_tool.py --fan 1 --sett 60
/home/zno/i2creobus/i2creobus_tool.py --fan 2 --sett 60

Siden vi allerede har så mange som 10 noder, bruker vi Ansible, som vil hjelpe for eksempel å slå av alle noder riktig. Eller kjør en temperaturmonitor på hver.

1
2
3
4
5
6
7
8
---

- verter: arbeidere
roller:
- webmon_stop
- webmon_remove
- webmon_install
- webmon_start

Jeg blir ofte anklaget i en avvisende tone, og sier at dette bare er et lokalt enkeltplatenettverk (som jeg allerede nevnte helt i begynnelsen). Generelt bryr jeg meg ikke om andres meninger, men kanskje vi legger til litt glamour og organiserer en docker-svermklynge.
Oppgaven er veldig enkel og kan gjennomføres på mindre enn 10 minutter. Så lanserer vi en forekomst av Portainer på hodenoden, og vips!

Nå kan du egentlig skalere oppgaver. Så inn dette øyeblikket Klyngen driver Verium Reserves kryptovalutagruvearbeider. Og ganske vellykket. Jeg håper den nærmeste innfødte vil få tilbake den forbrukte elektrisiteten;) Vel, eller reduser antall involverte noder og min noe annet som Turtle Coin.

Hvis du vil ha en nyttelast, kan du kaste Hadoop inn i klyngen eller ordne balansering av webservere. Det er mange ferdige bilder på Internett, og det er nok opplæringsmateriell. Vel, hvis bildet (docker-bildet) mangler, kan du alltid bygge ditt eget.

Hva lærte dette meg? Generelt er teknologistabelen veldig bred. Døm selv - Docker, Ansible, Python, oppgradering av Arduino (Gud tilgi meg, det vil ikke bli sagt om natten), og skallet, selvfølgelig. Og også KiCad og å jobbe med en entreprenør :).

Hva kan gjøres bedre? Mye. På programvaresiden ville det være fint å omskrive kontrollverktøy i Go. Forresten - gjør det mer steampunkish - KDPV i begynnelsen hever baren perfekt. Så det er noe å jobbe med.

Roller utført av:

  • Head node - Orange Pi PC med usb wifi.
  • Arbeidsnoder - Orange Pi PC2 x 10.
  • Nettverk - 100 Mbit TP-link@16ports.
  • Brain - Arduino-klon basert på Atmega8 + nivåomformer.
  • Hjertet er en ATX-strømkontroller med strømforsyning.
  • Programvare (sjel) - Docker, Ansible, Python 3, et lite skall og litt latskap.
  • Tidsbruken er uvurderlig.

Under eksperimentene ble et par Orange Pi PC2-kort skadet på grunn av en blandet strømforsyning (de brenner veldig vakkert), en annen PC2 mistet Ethernet (dette er en egen historie der jeg ikke forstår fysikken i prosessen) .

Det ser ut til å være hele historien "fra topp til bunn." Hvis noen synes det er interessant, still spørsmål i kommentarfeltet. Og stem på spørsmål der (stemme opp - hver kommentar har en knapp for dette). De mest interessante spørsmålene vil bli dekket i nye notater.
Takk for at du leste til slutten.

TBVPFBFSH OM PDOPK NBYYOE HCE OE NPDP
YMY DEMBEN LMBUFET CH DPNBOYI HUMPCHYSI.

1. hCHEDEOYE

noPZYE Y CHBU YNEAF CH MPLBMSHOPK UEFY OUEULPMSHLP Linux NBIYO, U RTBLFYUEULY CHUEZDB UCHPVPDOSCHN RTPGEUUPTPN. fBLCE NOPZIE UMSHCHYBMY P UYUFENBI, CH LPFPTSCHI NBYOSCH PVAEDEOSAFUS CH PDYO UKHRETLPNRSHAFET. OP TEBMSHOP NBMP LFP RTPVPCHBM RTPCHPDYFSH FBLYE LURETYNEOFSHCH UEWS OM TBVPFE YMY DPNB. dBChBKFE RPRTPVKHEN CHNEUFE UPVTBFSH OEVPMSHYPK LMBUFET. rPUFTPYCH LMBUFET CHSC UNPTSEFE TEBMSHOP HULPTYFSH CHSHRPMOEOYE YUBUFY ЪBDBU. OBRTYNET LPNRYMSGYA YMY PDOPCHTENEOOHA TBVPFKH OULPMSHLYI TEUKHTUPENLYI RTPGEUUPCH. h LFK UFBFSHE S RPUFBTBAUSH TBUULBBFSH CHBN LBL NPTsOP VEY PUPVSHCHI HUIMYK PVAEDEOYFSH NBYOSHCH UCHPEK MPLBMSHOPK UEFFY CH EDYOSCHK LMBUFET OM VBJE MOSIX.

2. lBL, UFP Y HER.

MOSIX - LFP RBFYu DMS SDTB Linux U LPNRMELFPN HFYMYF, LPFPTSHCHK RPJCHPMSEF RTPGEUUBN U CHBYEK NBYOSCH RETEIPDIFSH (NYZTYTPCHBFSH) OM DTHZIE HOMSH MPLBMSHOPK UEFI. chЪSFSH EZP NPTsOP RP BDTEUH HTTP://www.mosix.cs.huji.ac.il B TBURTPUFTBOSEFUS PÅ CH YUIPDOSCHI LPBI RPD MYGEOYEK GPL. rBFYUY UKHEEUFCHHAF DMS CHUEI SDT YJ UFBVYMSHOPK CHEFLY Linux.

3. hUFBOPCHLB RTPZTBNNOPZP PVEUREYUEOOYS.

h OBYUBME KHUFBOPCHLY IPYUH RPTELPNEODPCHBFSH CHBN ЪBVYTBFSH U KHMB MOSIX OE FPMSHLP EZP, OP Y UPRHFUFCHHAEYE KHFYMYFSH - mproc, mexec Y DT.
h BTIYCHE MOSIX EUFSH HUFBOPCHPYuOSCHK ULTYRF mosix_install. OE ЪБВХДШФЭ Х ПВСЪБ FEMSHOPN RPTSDLE TBURBLLPCHBFSH YUIPDOSHE LPDSCH SDTB CH /usr/src/linux-*.*.*, OBRTYNET LBL UDEMBM S - CH/linBR3/sr. installer Y PFCHEYUBEFE OM CHUE EZP CHPRPTUSCH, KHLBIBCH ENKH UCHPK NEOEDTSET ЪБЗТХЪЛй (LILO), RХФШ Л YUIPDOILBN SDTB Y KHTPCHOY ЪBRХУЛБ.
rTY OBUFTPKLE SDTB CHLMAYUYFE PRGYY CONFIG_MOSIX, CONFIG_BINFMT_ELF Y CONFIG_PROC_FS. CHUE LFY PRGYY RPDTPVOP PRYUBOSCH CH THLPCHPDUFCHE RP HUFBOPCHL MOSIX.
HUFBOPCHYMY? OH YFP TSE - RETEZTHTSBKFE CHBY Linux U OPCHSHCHN SDTPN, OBCHBOYE LFPTPZP PUEOSH VHDEF RPIPTSE OM mosix-2.2.13.

4. om BUFTPKLB

yЪOBYUBMSHOP KHUFBOPCHMEOOSHCHK MOSIX UPCHETYEOOOP OE OBEF, LBLYE X CHBU NBYOSCH CH UEFI Y U LENE ENKH UPEDEOSFUS. OH B OBUFTBYCHBEFUS LFP PYUEOSH RTPUFP. eUMY CHCH FPMSHLP RPUFBCHYMY mosix Y EUMY CHBY DIUFTYVHFYCH - SuSE YMY RedHat - UPCHNEUFYNSCHK, FP ЪBIPDYFE CH LBFBMPZ /etc/rc.d/init.d Y DBCHBKFE start LPNBODH mosix. rTY RETCHPN ЪBRHULE LFPF ULTYRF RTPUIF CHBU OBUFTPIFS MOSIX Y ЪBRKHULBEF FELUFPCHSHCHK TEDBLFPT DMS UPЪDBOYS ZhBKMB /etc/mosix.map, Ch LPFPTPN OBIPDFYFUS URYUPL HLMFETBBY. fKhDB RTPRYUSCHBEN: CH UMKHYUBE, EUMY KH CHBU CHUEZP DCHE-FTY NBYOSCH Y YI IP-BDTEUB UMEDHAF
DTHZ ЪB DTHZPN RP OPNETBGYY RYYEN FBL:



1 10.152.1.1 5

her RETCHSHCHK RBTBNEFT PVPOBYUBEF OPNET OBYUBMSHOPZP KHMB, CHFPTPK - IP BDTEU RETCHPZP KHMB Y RPUMEDOYK - LPMYUEUFChP KHMPCH U FELHEZP. f.E. UEKYBU KH OBUC H LMBUFETE PMKHYUBEFUS RSFSH KHMPCH, IP BDTEUB LPFPTSHCHK BLBOYUYCHBAFUS OB 1, 2, 3, 4 Y 5.
YMY DTHZPK RTYNET:

oPNET KHMB IP LPMYUEUFChP KHMPCH U FELHEZP
______________________________________
1 10.152.1.1 1
2 10.150.1.55 2
4 10.150.1.223 1

h LFK LPOZHYZHTBGYY NSCH RPMKHYUN UMEDHAEIK TBULMBD:
IP 1-ПЗП ХЪМБ 10.150.1.1
IP 2-ПЗП ХЪМБ 10.150.1.55
IP 3-ПЗП ХЪМБ 10.150.1.56
IP 4-ПЗП ХЪМБ 10.150.1.223
FERETSH OHTSOP OM CHUEI NBYOBI VKHDHEEZP LMBUFETB KHUFBOPCHYFSH MOSIX Y UPJDBFSH CHEDE PDOBLPCCHCHK LPOZHYZHTBGYPOOSCHK ZHBKM /etc/mosix.map .

FERTSH RPUME RETEBRKHULB mosix CHBYB NNYYOB KhCE VKhDEF TBVPFBFSH CH LMBUFETE, YuFP NPTsOP KHCHYDEFSH ЪBRKHUFYCH NPOYFPT LPNBODPK man. h UMHYUBE, EUMY CHSHCHHCHYDYFE H NPOYFPTE FPMSHLP UCHPA NBYOKH YMY CHPPVEE OE KHCHYDYFE OYLPZP, FP, LBL ZPCHPTYFUS - OBDP TSCHFSH. ULPTEE CHUEZP X CHBU PYYVLB YNEOOP CH /etc/mosix.map.
OH CHPF, HCHYDYMY, OP OE RPVEDYMY. YuFP DBMSHYE? b DBMSHYE PYUEOSH RTPUFP:-) - OHTsOP UPVTBFSH KhFYMYFSH DMS TBVPFSH U YЪNEOOOSCHN /proc YЪ RBLEFB mproc. h YUBUFOPUFY h LFPN RBLEFE YDEF OERMPIBS NPDYZHYLBGYS topp - mtop, h LPFPTSCHK DPVBCHYMY CHPTNPTSOPUFSH PFPVTBTSEOYS KHMB(node), UPTFYTPCHLY RP KHMBN, DRYPPTSCHK DPVBCHYMY CHPTNPTSOPUFSH PFPVTBTSEOYS KHMB(node), UPTFYTPCHLY RP KHMBN, DRETEOPUB BHMBELPGYS YFPC NYOINBMSHOPK ЪBZTHYLY RTPGEUUPTB KHMB, RPUME LPFPTPK RTPGEUUSCH OBUYOBAF NYZTYTPCHBFSH OM DTHZYE MOSIX - KHMSHCH .
ъBRKHULBEN mtop, CHSHCHVYTBEN RPOTBCHYCHYYKUS OE URSEIK RTPGEUU (TELPNEODHA ЪBRKHUFYFSH bzip) Y UNEMP DBCHYN LMBCHYYKH "g" OM CHBYEK LMBCHYBFKHUTTE, RPUM CHPUZB BUZZP PUZZYP PUZZYP EUFCHES TSETFCHSH RTPGEUUB Y ЪBFEN - OPNET KHMB, LHDB NSCH IFYN EZP PFRTBCHYFSH. b HCE RPUME bFPZP CHOINBFEMSHOP RPUNPFTYFE OM TEKHMSHFBFSCH, PFPVTBTSBENSHCHE LPNBODPK mon - FB NBYOB DPMTSOB OBYUBFSH VTBFSH OM UEVS OBZTHLKH CHSHVTBOOPZP RTPGEUUB.
b UPVUFCHOOOP mtop - CH RPME #N PFPVTBTSBFSH OPNET KHMB, HER PÅ CHSHRMOSEFUS.
oP LFP EEE OE CHUE - CHEDSH CHBN RTBCHDB OE IPUEFUS PFRTBCHMSFSH OM DTHZIE KHMSHCH RTPGEUUSCH CHTHYOOHA? noe oe BIFFEMPUSH. x MOSIX EUFSH OERMPIBS CHUFTPEOOBS VBMBOUITPCHLB CHOKHFTY LMBUFETB, LPFPTBS RPJCHPMSEF VPMEE-NEOEE TBCHOPNETOP TBURTEDEMSFSH OBZTKHLH OM CHUE KHMSHCH. oKH B CHPF ЪDEUSH OBN RTYDEFUS RPFTHDYFUS. DMS OBYUBMB S TBUULBTsKH, LBL UDEMBFSH FPOLHA OBUFTPKLH (melodi) DMS DCHHI KHMPC LMBUFETB? CH RTPGEUUE LPFPTPK MOSIX RPMHYUBEF YOZHPTNBGYA P ULPTPUFSI RTPGEUUPTPCH Y UEFI:
ъBRPNOYFE TB Y OCHUEZDB - still inn NPTsOP CHSHCHRPMOSFSH FPMSHLP CH enkeltmodus. YOBYUE CHSC MYVP RPMKHUYFE OE UPCHUEN LPTTELFOSCHK TEKHMSHFBF, MYVP CHBYB NBYOB NPTSEF RTPUFP ЪBCHYUOKHFSH.
yFBL, CHSHRPMOSEN melodi. rPUME RETECHPDB PRTBGYPOOPK UYUFENSCH CH single - mode OBRTYNET LPNBODPK init 1 YMY init S ЪBRKHULBEN ULTYRF prep_tune, LPFPTSCHK RPDOINEF cEFECHSCHE
YOFETZHEKUSHY ЪBRHUFYF MOSIX. RPUME LFPPZP OM PDOPK YNBYO ЪBRKHULBEN tune, ChCHPDYN ENKH OPNET DTHZPZP KHMB DMS OBUFTPKLY Y TsDEN TEKHMSHFBFB - KhFYMYFB DPMTSOB CHSHCHDBFSH ЪBRTEUFY OM CHRPHUPDY YUMHOS LPNBODSCH melodi -a<ХЪЕМ>OM DTHZPN HYME. uPVUFCHOOOP PRETBGYA RTYDEFUS RPCHFPTYFSH OM DTHZPN KHME LPNBODPK melodi -a<ХЪЕМ>, B TEЪHMSHFBF YЪ YEUFY YUYUEM CHCHEUFY OM RETCHSHCK HYEM. rPUME RPDPVOPZP FAIOZB CH CHBYEK UYUFEN DPMTSEO RPSCHYFUS ZhBKM /etc/overheads, UPDETSBEIK YOZHPTNBGYA DMS MOSIX CHYDE OELYI YUYUMPCHSCHI DBOOSCHI. h UMHYUBE, EUMY RP LBLYN-FP RTYYUYOBN tune OE UNPZ UDEMBFSH EZP, RTPUFP ULPRYTHKFE YJ FELHEEZP LBFBMPZB ZhBKM mosix.cost H /etc/overheads. bFP RPNPTSEF;-).
rTY FAOYOSE LMBUFETB YY VPMEE YUEN DCHHI NBYO OHTSOP YURPMSHЪPCHBFSH KhFYMYFKH, LPFPTBS FBLCE RPUFBCHMSEFUS U MOSIX - tune_kernel. dBOOBS HFYMYFB RPЪCHPMSEF
CHBN CH VPMEE RTPUFPN Y RTYCHSHYUOPN CHYDE OBUFTPYFSH LMBUFET, PFCHEFYCH OM OEULPMSHLP CHPRTPUPCH Y RTPCHEDS FAOIOZ U DCHHNS NBYOBNY LMBUFETB.
LUFBFY, RP UPVUFCHEOOPNH PRSHCHFKH NPZH ULBUBFSH, YuFP RTY OBUFTPKLE LMBUFETB S TELPNEODHA CHBN OE ЪБЗТХЦБФШ UEFSH, B OBPVPTPPF - RTYPUFBOPPHUE PRETFFYBCHY FI.

5. hRTBCHMEOYE LMBUFETPN

dMS KHRTBCHMEOYS KHMPN LMBUFETB UKHEEUFCHHEF OEVPMSHYPK OBVPT LPNBOD, UTEDY LPFPTSCHI:

mosctl - LPOFTPMSH OBD KHMPN. rPCHPMSEF YЪNEOSFSH RBTBNEFTSCH KHMB - FBLYE, LBL blokk, stay, lstay, delay Y F.D
dBChBKFE TBUUNPFTYN OEULPMSHLP RBTBNEFTPCH LFPC KHFYMYFSCH:
oppholde seg - RPЪCHPMSEF PUFBOBCHMYCHBFSH NYZTBGYA RTPGEUUPCH OM DTHZIE KHMSHCH U FELHEEK NBYOSCH. pFNEOSEPHUS RBTBNEFTPN nostay YMY -stay
bli - ЪBRTEEBEF FPMSHLP MPLBMSHOSCHN RTPGEUUBN NYZTBGYA, B RTPGEUUSCH U DTHZYI NBYO NPZHF RTDDPMTsBFSH LFP DEMBFSH. pFNEOSEPHUS RBTBNEFTPN nolstay YMY -lstay.
blokkere - ЪBRTEEBEF KHDBMEOOSCHN/ZPUFECHSHCHN RTPGEUUBN CHSHPRPMOSPHUS OM LFPN KHM. pFNEOSEPHUS RBTBNEFTPN noblock YMY -block.
bringe - CHPCHTBEBEF PVTBFOP CHUE RTPGEUUSCH U FELHEEZP KHMB CHSHPRPMOSENSHCHE OM DTHZYI NBYOBI LMBUFETB. ьФПФ RBTБNEFT NPTSEF OE UTBVBFSCHBFSH, RPLB NYZTYTPCHBCHYK RTPGEUU OE RPMKHYUIF RTETSCHCHBOIE PF UYUFENSCH.
sett forsinkelse KHUFBOBCHMYCHBEF CHTENS, RPUME LPFPTPZP RTPGEUU OBUYOBEF NYZTYTPCHBFSH.
CHEDSH UPZMBUYFEUSH - CH UMKHYUBE, EUMY CHTENS CHSHRPMOEOYS RTPGEUUB NEOSHYE UELKHODSCH UNSHUM RETEOPUYFSH EZP OM DTHZIE NBYOSCH UEFI YUYUEBEF. yNEOOOP LFP-LESING CHCHUFBCHMSEFUS HFYMYFPK mosctl U RBTBNEFTPN setdecay. rTYNET:
mosctl setdecay 1 500 200
KHUFBOBCHMYCHBEF CHTENS RETEIPDB OM DTHZIE KHMSH 500 NYMMYUELKHOD CH UMHYUBE, EUMY RTPGEUU ЪBRHEEO LBL sakte Y 200 NYMYUELKHOD VMS rask RTPGEUUPCH. pVTBFYFE CHOYNBOYE, UFP RBTBNEFT sakte CHUEZDB DPMTSEO VshchFSH VPMSHYE YMY TBCHEO RBTBNEFTH rask.

mosrun - ЪBRKHULBEF RTYMPTSEOYE CH LMBUFETE. OBRTYNET mosrun -e -j5 lage ЪBRKHUFYF lage OM 5-PN HЪME LMBUFETB, RTY LFPN CHUE EZP DPYUETOYE RTPGEUUSCH VHDHF FBLCE CHSHHRPMOSPHUS OM 5-PN HЪME. rTBCHDB ЪDEUSH EUFSH PDYO OABOU, RTY YUEN DPChPMSHOP UKHEEUFCHEOOSCHK:
CH UMHYUBE, EUMY DPYUETOYE RTPGEUUSCHCHSHRMOSAFUS VSHCHUFTEE YUEN KHUFBOPCHMEOOBS HFYMYFPK mosctl ЪBDETTSLB (forsinkelse) FP RTPGEUU OE VHDEF NYZTYTPCHBFSH OM KFEHMSHKHZIE. Х mosrun EEE DPChPMSHOP NOPZP TBMYUOSCHI YOFETEUOSCHI RBTBNEFTPCH, OP RPDTPVOP KHOBFSH
P OYI CHSHCH UNPTSEFE YЪ THLPCHPDUFCHB RP LFPC KHFYMYFE. (mann mosrun)

man - LBL NSCH HTSE OBEN, LFP NPOYFPT LMBUFETB, LPFPTSCHK CH RUECHDPZTBZHYUEULPN CHYDE PFPVTBTSBEF ЪBZTHYLH LBTSDPZP TBVPYUEZP KHMB ChBYEZP LMBUFEPDTB, KPMYUEUOPBOSFK YMPЪPVPSFCHY SHCHDBEF NOPZP DTHZPK, OE NEOEE YOFETEUOPK YOZHTNBGYY.

mtop - NPDYZHYYTPCHBOOBS DMS YURPMSHЪPCHBOYS OM KHMBI LMBUFETB CHETUIS LPNBODSCH topp. pFPVTBTSBEF OM LTBOE DYOBNYUUEULHA YOZHTTNBGYA P RTPGEUUBI, ЪBRHEEOOSCHI OM DBOOPN KHOME, Y KHMBI, LHDB NYZTYTPCHBMY CHBY RTPGEUUSCH.

mps - FPTSE NPDYZHYYTPCHBOOBS CHETUIS LPNBODSCH ps. dPVBCHMEOP EEE PDOP RPME - OPNET KHMB, OM LPFPTSCHK NYZTYTPCHBM RTPGEUU.

CHPF OM NPK CHZMSD Y CHUE PUOPCHOSHE KHFYMYFSHCH. OM UBNPN DEME LPOEYOP NPTsOP PVPKFYUSH DBTSE VEЪ OI. OBRTYNET YURPMSHJHS DMS LPOFTPMS OBD LMBUFETPN /proc/mosix.
FBN LTPNE FPZP, YuFP NPTsOP OBKFY PUOPCHOHA YOZHPTNBGYA P OBUFTPKLBI KHMB, RTPGEUUBI ЪBRHEOOOSCHI U DTHZYI KHMPCH Y F.D., B FBLCE RPNEOSFSH YUBUFSH.RBTBNEFT

6. LURETENEAVDA.

l UPTSBMEOYA, NOE OE KHDBMPUSH ЪBUFBCHYFSH CHSHRPMOSFUS LBLPK-FP PDYO RTPGEUU PDOPCHTENEOOOP OM OEULPMSHLYI KHMBI. nBLUINKHN, YuEZP S DPUFYZ CH RTPGEUUE LURETYNEOFPCH U LMBUFETPN-YURPMSHJPCHBOIE DMS CHSHPRMOEOYS TEUKHTUPENLYI RTPGEUUPCH OM DTHZPN KHME.
dBChBKFE TBUUNPFTYN PDYO YJ RTYNETPCH:
dPRKHUFYN, YUFP KH OBU CH LMBUFETE TBVPFBAF DCHE NBYOSCH (DCHB KHMB), PDYO YI LPFPTSCHI U OPNETPN 1 (366 Celeron), DTHZPK - U OPNETPN 5 (PIII450). ьLURETYNEOFYTPCHBFSH NSCH VKhDEN OM 5-MÅN. HYME. 1-K HYEM CH LFP CHTENS RTPUFBYCHBM. ;-)
yFBL, ЪBRKHULBEN OM 5-N HYME KHFYMYFKH crark DMS RPDVPTB RBTPMS L rar BTIYCHH.eUMY LFP YЪ CHBU RTPVPCHBM TBVPFBFSH U RPDPVOSHNY KHFYMYFBNY, FP ON DRPVPPMTFEUPHG YBEF" DP 99 RTPGEOFPCH RTPGEUUPTB. OH YFP TSE - RPUME ЪBRKHULB NSCH OBVMADBEN, YuFP RTPGEUU PUFBEFUS OM LFPN, 5-PN KHJME. tBKHNOP - CHEDSH YNEOOP KH LFPPZP KHMB RTPYCHPDYFEMSHOPUFSH RTECHSHCHYBEF 1-K KHYEM RPYUFY CH DCHB TBBB.
dBMEE NSCH RTPUFP ЪBRKHUFYMY UVPTLH kde 2.0. uNPFTYN FBVMYGH RTPGEUUPCH Y CHYDYN, UFP crark HUREYOP NYZTYTPCHBM OM 1-K HYEM, PUCHPVPDYCH RTPGEUUPT Y RBNSFSH (DB, DB - RBNSFSH FPYuOP FBLCE PUCHPVPTsDBEFUS) DMS lage . b LBL FPMSHLP fabrikat ЪBLPOYUM UCHPA TBVPFKH - crark CHETOHMUS PVTBFOP, OM TPDOPK ENKH 5-K KHYEM.
YoFETEUOSCHK YZHZHELF RPMKHYUBEFUS, EUMY crark ЪBRKHULBFSH OM VPMEE NEDMEOOPN 1-N KHJME.
fBN NSCH OBVMADBEN RTBLFYUEULY RTPFYCHPRPMPTSOSHCHK TEKHMSHFBF - RTPGEUU UTBH-CE NYZTYTHEF OM 5-K, VPMEE VSHCHUFTSHCHK HYEM. rTY LFPN PÅ CHPTBEBEFUS PVTBFOP, LPZDB IPЪSIO RSFPZP LPNRSHAFETB OBUYOBEF LBLYE-FP DEKUFCHYS U UYUFENPK.

7. yURPMSHЪPCHBOIE

dBChBKFE CH LPOGE TBVETENUS, ЪBUEN Y LBL NSCH NPTsEN YURPMSHЪPCHBFSH LMBUFET CH UCHPEK RPCHUEDOECHOPK TSYYOY.
dMS OBYUBMB OHTSOP TBY OBCHUEZDB ЪBRPNOYFSH - LMBUFET CHSHCHZPDEO FPMSHLP CH FPN UMHYUBE, LPZDB CH CHBYEK UEFY EUFSH LOOPE LPMYUEUFCHP NBYO, LPFPTSCHE YUBUFEOSHLP YUBUFEOSHLP RTPUCHBYSH Y CHFPHPHSHY UKHTUSH OBRTYNET DMS UVPTLY KDE YMY DMS MAVSHHI UETSHESHI RTPGEUUPCH. CHEDSH VMBZPDBTS LMBUFETH YЪ 10 NBYO NPTsOP PDOPCHTEENOOOP
LPNRYMYTCHBFS DP 10 FSTSEMSCHI RTPZTBNN OM FPN-CE C++. yMY RPDVYTBFSH LBLPK-FP RBTPMSH,
OE RTELTBEBS OH OM UELKHODH LFPZP RTPGEUUB OEBCHYUYNP PF OBZTHYLY OM CHBY LPNRSHAFET.
dB Y CHPPVEE - LFP RTPUFP YOFETEUOP;-).

8. ъBLMAYUEOOYE

h ЪBLMAYUEOYE IPYUKH ULBUBFSH, YuFP h LFPK UFBFSHE OE TBUUNPFTEOSCH CHUE CHNPTSOPUFY MOSIX, F.L. S RTPUFP DP OYI EEE OE DPVTBMUS. eUMY DPVETHUSH - TsDYFE RTDPDPMTSEOYS. :-)


Topp