హబ్ర్ సంఘానికి శుభాకాంక్షలు! నేను ఇటీవల మా మొదటి వెర్షన్ క్లస్టర్ బోర్డు గురించి వ్రాసాను [
స్థానిక అభివృద్ధి మరియు స్థానిక హోస్టింగ్ రెండింటికీ ఉపయోగించగల మినీ సర్వర్లను మేము ఇష్టపడతాము. డెస్క్టాప్ కంప్యూటర్లు లేదా ల్యాప్టాప్ల మాదిరిగా కాకుండా, మా సర్వర్లు 24/7 పని చేసేలా రూపొందించబడ్డాయి, అవి త్వరగా ఫెడరేట్ చేయబడతాయి, ఉదాహరణకు, ఒక క్లస్టర్లో 4 ప్రాసెసర్లు ఉన్నాయి మరియు 5 నిమిషాల తర్వాత 16 ప్రాసెసర్లు ఉన్నాయి (అదనపు నెట్వర్క్ పరికరాలు లేవు) మరియు ఇవన్నీ ఒక కాంపాక్ట్ ఫారమ్ ఫ్యాక్టర్లో నిశ్శబ్దంగా మరియు శక్తి సమర్థవంతంగా.
మా సర్వర్ల నిర్మాణం నిర్మాణం యొక్క క్లస్టర్ సూత్రంపై ఆధారపడి ఉంటుంది, అనగా. మేము బోర్డులోని ఈథర్నెట్ నెట్వర్క్ను ఉపయోగించి, అనేక కంప్యూటింగ్ మాడ్యూల్స్ (ప్రాసెసర్లు) కనెక్ట్ చేసే క్లస్టర్ బోర్డులను తయారు చేస్తాము. సరళీకృతం చేయడానికి, మేము ఇంకా మా స్వంత కంప్యూటింగ్ మాడ్యూల్లను తయారు చేయలేదు, కానీ రాస్ప్బెర్రీ పై కంప్యూట్ మాడ్యూల్లను ఉపయోగిస్తాము మరియు మేము నిజంగా కొత్త CM4 మాడ్యూల్ కోసం ఆశిస్తున్నాము. కానీ, ప్రతిదీ వారి కొత్త ఫారమ్ ఫ్యాక్టర్తో ప్రణాళికలకు విరుద్ధంగా జరిగింది మరియు చాలా మంది నిరాశకు గురయ్యారని నేను భావిస్తున్నాను.
కట్ కింద, మేము V1 నుండి V2కి ఎలా వెళ్ళాము మరియు కొత్త Raspberry Pi CM4 ఫారమ్ ఫ్యాక్టర్తో ఎలా బయటపడాలి.
కాబట్టి, 7 నోడ్ల కోసం క్లస్టర్ను సృష్టించిన తర్వాత, ప్రశ్నలు - తదుపరి ఏమిటి? ఉత్పత్తి విలువను ఎలా పెంచాలి? 8, 10 లేదా 16 నోడ్లు? ఏ మాడ్యూల్ తయారీదారులు? మొత్తంగా ఉత్పత్తి గురించి ఆలోచిస్తే, ఇక్కడ ప్రధాన విషయం నోడ్ల సంఖ్య లేదా తయారీదారు ఎవరు కాదు, కానీ బిల్డింగ్ బ్లాక్గా క్లస్టర్ల సారాంశం అని మేము గ్రహించాము. మనం కనీస బిల్డింగ్ బ్లాక్ కోసం వెతకాలి
మొదటిది, ఒక క్లస్టర్ అవుతుంది మరియు అదే సమయంలో డిస్క్లు మరియు విస్తరణ బోర్డులను కనెక్ట్ చేయగలదు. క్లస్టర్ బ్లాక్ స్వయం సమృద్ధమైన బేస్ నోడ్ మరియు విస్తృత శ్రేణి విస్తరణ ఎంపికలతో ఉండాలి.
రెండవది, తద్వారా కనిష్ట క్లస్టర్ బ్లాక్లు ఒకదానికొకటి కనెక్ట్ చేయబడి, పెద్ద పరిమాణంలో ఉన్న క్లస్టర్లను నిర్మించడం ద్వారా మరియు బడ్జెట్ మరియు స్కేలింగ్ వేగం పరంగా ఇది ప్రభావవంతంగా ఉంటుంది. స్కేలింగ్ వేగం తప్పనిసరిగా సాధారణ కంప్యూటర్లను నెట్వర్క్కి కనెక్ట్ చేయడం కంటే వేగంగా ఉండాలి మరియు సర్వర్ హార్డ్వేర్ కంటే చాలా చౌకగా ఉండాలి.
మూడో, కనీస క్లస్టర్ యూనిట్లు తగినంత కాంపాక్ట్, మొబైల్, శక్తి సామర్థ్యం, ఖర్చుతో కూడుకున్నవి మరియు ఆపరేటింగ్ పరిస్థితులపై డిమాండ్ చేయకూడదు. సర్వర్ రాక్లు మరియు వాటితో కనెక్ట్ చేయబడిన అన్నింటికీ ఇది కీలకమైన తేడాలలో ఒకటి.
మేము నోడ్ల సంఖ్యను నిర్ణయించడం ద్వారా ప్రారంభించాము.
నోడ్ల సంఖ్య
సాధారణ తార్కిక తీర్పులతో, కనీస క్లస్టర్ బ్లాక్ కోసం 4 నోడ్లు ఉత్తమ ఎంపిక అని మేము గ్రహించాము. 1 నోడ్ ఒక క్లస్టర్ కాదు, 2 నోడ్లు సరిపోవు (1 మాస్టర్ 1 వర్కర్, ఒక బ్లాక్లో స్కేలింగ్ చేసే అవకాశం లేదు, ప్రత్యేకించి భిన్నమైన ఎంపికల కోసం), 3 నోడ్లు ఓకేగా కనిపిస్తున్నాయి, కానీ 2 పవర్స్ మల్టిపుల్ కాదు మరియు లోపల స్కేలింగ్ కాదు ఒక బ్లాక్ పరిమితం చేయబడింది, 6 నోడ్లు దాదాపు 7 నోడ్ల ధరతో వస్తాయి (మా అనుభవం నుండి ఇది ఇప్పటికే పెద్ద ధర ధర), 8 చాలా ఎక్కువ, మినీ ITX ఫారమ్ ఫ్యాక్టర్లో సరిపోదు మరియు మరింత ఖరీదైన PoC సొల్యూషన్.
ప్రతి బ్లాక్కు నాలుగు నోడ్లు గోల్డెన్ మీన్గా పరిగణించబడతాయి:
- ఒక క్లస్టర్ బోర్డ్కు తక్కువ పదార్థాలు, అందువల్ల తయారీకి చౌకైనది
- 4 యొక్క బహుళ, మొత్తం 4 బ్లాక్లు 16 భౌతిక ప్రాసెసర్లను అందిస్తాయి
- స్థిరమైన సర్క్యూట్ 1 మాస్టర్ మరియు 3 కార్మికులు
- మరింత భిన్నమైన వైవిధ్యాలు, సాధారణ-కంప్యూట్ + యాక్సిలరేటెడ్-కంప్యూట్ మాడ్యూల్స్
- SSD డ్రైవ్లు మరియు విస్తరణ కార్డ్లతో కూడిన మినీ ITX ఫారమ్ ఫ్యాక్టర్
కంప్యూట్ మాడ్యూల్స్
రెండవ సంస్కరణ CM4 ఆధారంగా రూపొందించబడింది, ఇది SODIMM ఫారమ్ ఫ్యాక్టర్లో విడుదల చేయబడుతుందని మేము భావించాము. కానీ…
మేము ఒక SODIMM డాటర్బోర్డ్ను తయారు చేసి, CM4ని నేరుగా మాడ్యూల్స్లో సమీకరించాలని నిర్ణయం తీసుకున్నాము, తద్వారా వినియోగదారులు CM4 గురించి ఆలోచించాల్సిన అవసరం లేదు.
ట్యూరింగ్ పై కంప్యూట్ మాడ్యూల్ రాస్ప్బెర్రీ పై CM4కి మద్దతు ఇస్తుంది
సాధారణంగా, మాడ్యూళ్ల శోధనలో, 128 MB RAM నుండి 8 GB RAM వరకు చిన్న మాడ్యూల్స్ నుండి కంప్యూటింగ్ మాడ్యూల్స్ యొక్క మొత్తం మార్కెట్ తెరవబడింది. 16 GB RAM మరియు మరిన్ని ఉన్న మాడ్యూల్స్ ముందు ఉన్నాయి. క్లౌడ్ స్థానిక సాంకేతికతలపై ఆధారపడిన ఎడ్జ్ అప్లికేషన్ హోస్టింగ్ కోసం, 1 GB RAM ఇప్పటికే సరిపోదు మరియు ఇటీవలి కాలంలో 2, 4 మరియు 8 GB RAM కోసం మాడ్యూల్స్ కనిపించడం వృద్ధికి మంచి స్థలాన్ని అందిస్తుంది. వారు మెషిన్ లెర్నింగ్ అప్లికేషన్ల కోసం FPGA మాడ్యూల్స్తో ఎంపికలను కూడా పరిగణించారు, అయితే సాఫ్ట్వేర్ ఎకోసిస్టమ్ అభివృద్ధి చేయనందున వారి మద్దతు ఆలస్యం అయింది. మాడ్యూల్ మార్కెట్ను అధ్యయనం చేస్తున్నప్పుడు, మాడ్యూల్స్ కోసం యూనివర్సల్ ఇంటర్ఫేస్ను రూపొందించాలనే ఆలోచనతో మేము ముందుకు వచ్చాము మరియు V2 లో మేము కంప్యూటింగ్ మాడ్యూల్స్ యొక్క ఇంటర్ఫేస్ను ఏకీకృతం చేయడం ప్రారంభిస్తాము. ఇది ఇతర తయారీదారుల నుండి మాడ్యూల్లను కనెక్ట్ చేయడానికి మరియు నిర్దిష్ట పనుల కోసం వాటిని కలపడానికి V2 వెర్షన్ యొక్క యజమానులను అనుమతిస్తుంది.
V2 లైట్ వెర్షన్లు మరియు 4 GB RAM మాడ్యూల్లతో సహా మొత్తం రాస్ప్బెర్రీ పై 4 కంప్యూట్ మాడ్యూల్ (CM8) లైన్కు మద్దతు ఇస్తుంది
పెరిఫెరీ
మాడ్యూల్స్ యొక్క విక్రేత మరియు నోడ్ల సంఖ్యను నిర్ణయించిన తర్వాత, మేము పెరిఫెరల్స్ ఉన్న PCI బస్సును సంప్రదించాము. PCI బస్ అనేది పెరిఫెరల్స్కు ప్రమాణం మరియు దాదాపు అన్ని కంప్యూటింగ్ మాడ్యూల్స్లో కనుగొనబడింది. మాకు అనేక నోడ్లు ఉన్నాయి మరియు ఆదర్శంగా, ప్రతి నోడ్ PCI పరికరాలను ఏకకాల అభ్యర్థన మోడ్లో భాగస్వామ్యం చేయగలదు. ఉదాహరణకు, ఇది బస్సుకు కనెక్ట్ చేయబడిన డిస్క్ అయితే, అది అన్ని నోడ్లకు అందుబాటులో ఉంటుంది. మేము బహుళ-హోస్ట్ మద్దతుతో PCI స్విచ్ల కోసం వెతకడం ప్రారంభించాము మరియు వాటిలో ఏవీ మా అవసరాలకు సరిపోవని కనుగొన్నాము. ఈ పరిష్కారాలన్నీ ఎక్కువగా 1 హోస్ట్ లేదా బహుళ హోస్ట్లకు పరిమితం చేయబడ్డాయి, కానీ ముగింపు పాయింట్లకు ఏకకాల అభ్యర్థనల మోడ్ లేకుండా. రెండవ సమస్య ఏమిటంటే, ఒక్కో చిప్కు $50 లేదా అంతకంటే ఎక్కువ ధర. V2లో, మేము PCI స్విచ్లతో ప్రయోగాలను వాయిదా వేయాలని నిర్ణయించుకున్నాము (మేము అభివృద్ధి చేసిన తర్వాత మేము వాటికి తిరిగి వస్తాము) మరియు ప్రతి నోడ్కు ఒక పాత్రను కేటాయించే మార్గంలో వెళ్ళాము: మొదటి రెండు నోడ్లు ప్రతి నోడ్కు మినీ PCI ఎక్స్ప్రెస్ పోర్ట్ను బహిర్గతం చేశాయి, మూడవ నోడ్ బహిర్గతమైన 2-పోర్ట్లు 6 Gbps SATA కంట్రోలర్. ఇతర నోడ్ల నుండి డిస్క్లను యాక్సెస్ చేయడానికి, మీరు క్లస్టర్లోని నెట్వర్క్ ఫైల్ సిస్టమ్ను ఉపయోగించవచ్చు. ఎందుకు కాదు?
స్నీక్పీక్
చర్చ మరియు ప్రతిబింబం ద్వారా కాలక్రమేణా కనీస క్లస్టర్ బ్లాక్ ఎలా అభివృద్ధి చెందిందనే దాని గురించి కొన్ని స్కెచ్లను పంచుకోవాలని మేము నిర్ణయించుకున్నాము.
ఫలితంగా, మేము 4 260-పిన్ నోడ్లు, 2 మినీ PCIe (Gen 2) పోర్ట్లు, 2 SATA (Gen 3) పోర్ట్లతో క్లస్టర్ యూనిట్కి వచ్చాము. బోర్డు VLAN మద్దతుతో లేయర్-2 మేనేజ్డ్ స్విచ్ని కలిగి ఉంది. మొదటి నోడ్ నుండి ఒక మినీ PCIe పోర్ట్ తీసివేయబడింది, దీనిలో మీరు నెట్వర్క్ కార్డ్ని ఇన్స్టాల్ చేయవచ్చు మరియు మరొక ఈథర్నెట్ పోర్ట్ లేదా 5G మోడెమ్ని పొందవచ్చు మరియు మొదటి నోడ్ నుండి క్లస్టర్ మరియు ఈథర్నెట్ పోర్ట్లలో నెట్వర్క్ కోసం రూటర్ను తయారు చేయవచ్చు.
క్లస్టర్ బస్సులో మరిన్ని ఫీచర్లు ఉన్నాయి, వీటిలో అన్ని స్లాట్ల ద్వారా నేరుగా మాడ్యూల్లను ఫ్లాష్ చేయగల సామర్థ్యం మరియు ప్రతి నోడ్లో స్పీడ్ కంట్రోల్తో FAN కనెక్టర్లు ఉంటాయి.
అప్లికేషన్
స్వీయ-హోస్ట్ అప్లికేషన్లు & సేవల కోసం ఎడ్జ్ ఇన్ఫ్రాస్ట్రక్చర్
వినియోగదారు/వాణిజ్య-గ్రేడ్ ఎడ్జ్ ఇన్ఫ్రాస్ట్రక్చర్ కోసం మేము V2ని కనీస బిల్డింగ్ బ్లాక్గా రూపొందించాము. V2తో, మీరు పెరిగేకొద్దీ ప్రూఫ్-ఆఫ్-కాన్సెప్ట్ మరియు స్కేల్ను ప్రారంభించడం చౌకగా ఉంటుంది, క్రమంగా ఎక్కువ ఖర్చుతో కూడుకున్న మరియు ఎడ్జ్లో హోస్ట్ చేయడానికి ఆచరణాత్మకమైన అప్లికేషన్లను పోర్ట్ చేస్తుంది. పెద్ద క్లస్టర్లను నిర్మించడానికి క్లస్టర్ బ్లాక్లను ఒకదానితో ఒకటి అనుసంధానించవచ్చు. ఇది ఏర్పాటుకు ఎక్కువ ప్రమాదం లేకుండా క్రమంగా చేయవచ్చు
ప్రక్రియలు. ఇప్పటికే ఈ రోజు వ్యాపారం కోసం భారీ సంఖ్యలో అప్లికేషన్లు ఉన్నాయి,
ARM వర్క్స్టేషన్
ప్రతి క్లస్టర్కు గరిష్టంగా 32 GB RAMతో, మొదటి నోడ్ను OS యొక్క డెస్క్టాప్ వెర్షన్ కోసం ఉపయోగించవచ్చు (ఉదాహరణకు, ఉబుంటు డెస్క్టాప్ 20.04 LTS) మరియు మిగిలిన 3 నోడ్లు ARM కోసం క్లౌడ్ స్థానిక పరిష్కారాలను అభివృద్ధి చేయడం కోసం కంపైలేషన్, టెస్టింగ్ మరియు డీబగ్గింగ్ టాస్క్ల కోసం ఉపయోగించవచ్చు. సమూహాలు. ఉత్పత్తిలో ARM ఎడ్జ్ ఇన్ఫ్రాస్ట్రక్చర్పై CI / CD కోసం నోడ్గా.
CM2 మాడ్యూల్స్తో కూడిన ట్యూరింగ్ V4 క్లస్టర్, AWS గ్రావిటన్ ఉదంతాల ఆధారంగా క్లస్టర్కు వాస్తుపరంగా (ARMv8 యొక్క చిన్న వెర్షన్లలో తేడా) దాదాపు ఒకేలా ఉంటుంది. CM4 మాడ్యూల్ ప్రాసెసర్ ARMv8 ఆర్కిటెక్చర్ని ఉపయోగిస్తుంది కాబట్టి మీరు AWS గ్రావిటన్ 1 మరియు 2 ఇన్స్టాన్స్ల కోసం ఇమేజ్లు మరియు అప్లికేషన్లను రూపొందించవచ్చు, ఇవి x86 ఇన్స్టాన్స్ల కంటే చాలా చౌకగా ఉంటాయి.
మూలం: www.habr.com