|
|
6 months ago | |
|---|---|---|
| .. | ||
| README.md | 6 months ago | |
| assignment.md | 6 months ago | |
| single-board-computer-connect-hub.md | 6 months ago | |
| wio-terminal-connect-hub.md | 6 months ago | |
README.md
మీ మొక్కను క్లౌడ్కి మార్పిడి చేయండి
స్కెచ్నోట్ నిత్య నరసింహన్ చేత. పెద్ద వెర్షన్ కోసం చిత్రం పై క్లిక్ చేయండి.
ఈ పాఠం Microsoft Reactor నుండి IoT for Beginners Project 2 - Digital Agriculture series భాగంగా బోధించబడింది.
ముందస్తు పాఠ పరీక్ష
పరిచయం
గత పాఠంలో, మీరు మీ మొక్కను MQTT బ్రోకర్కు ఎలా కనెక్ట్ చేయాలి మరియు లోకల్గా నడుస్తున్న సర్వర్ కోడ్ నుండి రిలేను ఎలా నియంత్రించాలో నేర్చుకున్నారు. ఇది ఇంటర్నెట్-కనెక్టెడ్ ఆటోమేటెడ్ నీరు పెట్టే వ్యవస్థ యొక్క అలుగ్గు, ఇది ఇంట్లో ఉన్న వ్యక్తిగత మొక్కల నుండి వాణిజ్య వ్యవసాయాల వరకు ఉపయోగించబడుతుంది.
IoT డివైస్ ప్రిన్సిపల్స్ను ప్రదర్శించడానికి పబ్లిక్ MQTT బ్రోకర్తో కమ్యూనికేట్ చేసింది, కానీ ఇది అత్యంత విశ్వసనీయమైన లేదా సురక్షితమైన మార్గం కాదు. ఈ పాఠంలో మీరు క్లౌడ్ గురించి, మరియు పబ్లిక్ క్లౌడ్ సేవలచే అందించే IoT సామర్థ్యాల గురించి నేర్చుకుంటారు. అలాగే మీరు మీ మొక్కను పబ్లిక్ MQTT బ్రోకర్ నుండి ఈ క్లౌడ్ సేవలలో ఒకదానికి ఎలా మార్పిడి చేయాలో కూడా తెలుసుకుంటారు.
ఈ పాఠంలో మనం కవర్ చేసేది:
- క్లౌడ్ అంటే ఏమిటి?
- క్లౌడ్ సబ్స్క్రిప్షన్ సృష్టించండి
- క్లౌడ్ IoT సేవలు
- క్లౌడ్లో IoT సేవను సృష్టించండి
- IoT హబ్ తో కమ్యూనికేట్ చేయండి
- మీ డివైస్ను IoT సేవకు కనెక్ట్ చేయండి
క్లౌడ్ అంటే ఏమిటి?
క్లౌడ్ ముందు, కంపెనీ తమ ఉద్యోగులకు సేవలు (డేటాబేసులు లేదా ఫైలు నిల్వ వంటి) లేదా ప్రజలకు (వెబ్సైట్లు వంటి) అందించాలని కోరినప్పుడు, వారు ఒక డేటా సెంటర్ నిర్మించి నడిపేవారు. ఇది కొద్ది కంప్యూటర్ల గల గది నుండి అనేక కంప్యూటర్లతో ఒక భవనంగా ఉండవచ్చు. కంపెనీ అన్ని వాటిని నిర్వహించేది, ఇందులో:
- కంప్యూటర్లు కొనడం
- హార్డ్వేర్ నిర్వహణ
- విద్యుత్ మరియు శీతలీకరణ
- నెట్వర్కింగ్
- భద్రత, భవనం భద్రతతో పాటు కంప్యూటర్లపై సాఫ్ట్వేర్ భద్రత
- సాఫ్ట్వేర్ ఇన్స్టాలేషన్ మరియు నవీకరణలు
ఇది చాలా ఖరీదైనది, విస్తృత నైపుణ్యాల ఉద్యోగులను అవసరం చేసేది, అవసరమైనప్పుడు మార్చడం చాలా నిఖ్యము. ఉదాహరణకు, ఒక ఆన్లైన్ స్టోర్ బిజీ హాలిడే సీజన్ కోసం ప్రణాళిక చేయాలనుకుంటే, వారు hardware కొనుగోలు, కాన్ఫిగర్ చేయడం, software ఇన్స్టాల్ చేయడం వంటి పనులకు నెలల ముందే ప్రణాళిక చేయాలి. హాలిడే తరువాత విక్రయాలు తగ్గితే, వారు కొనుగోలు చేసిన కంప్యూటర్లు అనవసరంగా మిగిలిపోతాయి.
✅ మీరు భావిస్తారా, ఇది కంపెనీలకు వేగంగా మార్పులు చేయడానికి అనుకూలమా? ఒక ప్రముఖ వ్యక్తి వారి దుస్తులు ధరించినందున ఒక ఆన్లైన్ వస్త్ర వ్యాపారి ఆకస్మికంగా ప్రాచుర్యం పొందితే, వారు ఆర్డర్ల సంఖ్య పెరిగిన సందర్భంలో తక్షణం కోంప్యూటింగ్ శక్తిని పెంపొందించగలరా?
ఎవరో మరొకరి కంప్యూటర్
క్లౌడ్ వెల్లడి కాలక్షేపంగా ‘ఎవరో మరొకరి కంప్యూటర్’ అని పిలవబడుతుంది. ప్రాధమిక భావన సింపుల్ - కంప్యూటర్లు కొనడం బదులు, మీరు ఎవరో మరొకరి కంప్యూటర్ను అద్దెకు తీసుకోవడం. క్లౌడ్ కంప్యూటింగ్ ప్రొవైడర్ పెద్ద డేటా సెంటర్లను నిర్వహిస్తాడు. వారు హార్డ్వేర్ కొనుగోలు, ఇన్స్టాలేషన్, విద్యుత్ మరియు శీతలీకరణ నిర్వహణ, నెట్వర్కింగ్, భవనం భద్రత మరియు సాఫ్ట్వేర్ నవీకరణలు చేస్తారు. కస్టమర్గా, మీరు అవసరమైన కంప్యూటర్లను అద్దెకు తీసుకోవచ్చు, అవసరమైతే వారి సంఖ్య పెంచండి, అవసరం తగ్గితే తగ్గించుకోండి. ఈ క్లౌడ్ డేటా సెంటర్లు ప్రపంచవ్యాప్తంగా ఉంటాయి.
ఈ డేటా సెంటర్లు అనేక చौरసము కి. మీటర్లం పరిమాణంలో ఉండవచ్చు. పై చిత్రాలు కొన్ని సంవత్సరాల క్రితం Microsoft క్లౌడ్ డేటా సెంటర్ వద్ద తీసుకోబడ్డవి, ప్రాథమిక పరిమాణం మరియు geplante విస్తరణను చూపిస్తున్నాయి. విస్తరణ కోసం క్లియర్ చేసిన ప్రాంతం 5 చ.కి.మీ లకు పైగా ఉంది.
💁 ఈ డేటా సెంటర్లు చాలా పెద్ద విద్యుత్ అవసరాన్ని కలిగి ఉంటాయి కనుక కొన్నింటి స్వంత విద్యుత్ స్టేషన్లు కూడా ఉంటాయి. వారి పరిమాణం మరియు క్లౌడ్ ప్రొవైడర్ల పెట్టుబడుల స్థాయి కారణంగా, వీటిని సాధారణంగా వాతావరణ అనుకూలంగా చెప్పవచ్చు. ఇవి చిన్న డేటా సెంటర్ల పెద్ద సంఖ్య కంటే మించి సామర్థ్యవంతంగా ఉంటాయి, తరచుగా పునరుద్భవించగల శక్తి ఆధారంగా పనిచేస్తాయి, మరియు క్లౌడ్ ప్రొవైడర్లు వ్యర్థాలను తగ్గించడానికి, నీటి వినియోగాన్ని తగ్గించడానికి, మరియు కత్తిరించిన అడవులను పునరుత్పత్తి చేయడానికి కృషి చేస్తారు. మరింత చదవడానికి Azure sustainability site ను చూడండి.
✅ కొంత పరిశోధన చేయండి: Microsoft నుండి Azure లేదా Google నుండి GCP వంటి ప్రధాన క్లౌడ్ల గురించి చదవండి. వారికు ఎన్ని డేటా సెంటర్లు ఉన్నాయి, అవి ప్రపంచంలో ఎక్కడ ఉన్నాయి?
క్లౌడ్ ఉపయోగించడం కంపెనీల ఖర్చులను తగ్గిస్తుంది, మరియు వారు తమ ప్రావీణ్యాన్ని మెరుగ్గా చేయడంపై దృష్టి పెట్టేటట్లు చేస్తుంది, క్లౌడ్ కంప్యూటింగ్ నైపుణ్యాలను ప్రొవైడర్ చేతిలో వదిలేస్తుంది. కంపెనీలు ఇకపై డేటా సెంటర్ స్థలాన్ని అద్దెకు తీసుకోవడం లేదా కొనుగోలు చేయడం, కనెక్టివిటీ మరియు విద్యుత్ కోసం వేర్వేరు ప్రొవైడర్లకు చెల్లించడం లేదా నిపుణులను నియమించడం అవసరం లేదు. బదులు, వారు ప్రతిబంధ కట్టుబాటు ఒక నెలవారీ చెల్లింపు క్లౌడ్ ప్రొవైడర్ కు ఇస్తారు.
క్లౌడ్ ప్రొవైడర్ పెద్ద పరిమాణాలు కోసం ఆర్థిక ప్రయోజనాలను ఉపయోగించి ఖర్చులను తగ్గించగలడు, bulk గా computers కొనుగోలు చేసి తక్కువ ధరలకు పొందటం, నిర్వహణ పని తగ్గించడానికి టూలింగ్లో పెట్టుబడులు ఇవ్వడం, స్వంత హార్డ్వేర్ డిజైన్ చేసి క్లౌడ్ సేవను మెరుగుపరచడం.
Microsoft Azure
Azure మైక్రోసాఫ్ట్ నుండి ఒక డెవలపర్ క్లౌడ్, మీరు ఈ పాఠాలకు ఈ క్లౌడ్ ను ఉపయోగిస్తారు. క్రింద వీడియో Azure యొక్క చిన్న అవలోకనాన్ని ఇస్తుంది:
క్లౌడ్ సబ్స్క్రిప్షన్ సృష్టించండి
క్లౌడ్లో సేవలను ఉపయోగించాలంటే, మీరు ఒక క్లౌడ్ ప్రొవైడర్ దగ్గర సబ్స్క్రిప్షన్ కోసం సైన్ అప్ చేయాలి. ఈ పాఠం కోసం, మీరు Microsoft Azure సబ్స్క్రిప్షన్ కోసం సైన్ అప్ చేస్తారు. మీరు ఇప్పటికే Azure సబ్స్క్రిప్షన్ ఉన్నట్లయితే ఈ పని దాటవేయవచ్చు. ఇక్కడ వివరిస్తున్న సబ్స్క్రిప్షన్ వివరాలు వ్రాయబడిన సమయంలో సరైనవి, కానీ మారవచ్చు.
💁 మీరు ఈ పాఠాలను మీ పాఠశాల ద్వారా యాక్సెస్ చేస్తున్నట్లయితే, మీకు ఇప్పటికే Azure సబ్స్క్రిప్షన్ అందుబాటులో ఉండవచ్చు. మీ ఉపాధ్యాయుడితో సంప్రదించండి.
రెండు రకాలు ఉచిత Azure సబ్స్క్రిప్షన్లు ఉన్నాయి:
-
Azure for Students - ఇది 18 సంవత్సరాలు పైబడిన విద్యార్థుల కోసం రూపొందించిన సబ్స్క్రిప్షన్. సైన్ అప్ చేసుకోవడానికి క్రెడిట్ కార్డు అవసరం లేదు, మరియు మీరు మీ పాఠశాల ఇమెయిల్ చిరునామా ఉపయోగించి విద్యార్థిగా ధృవీకరించాలి. సైన్ అప్ అయినప్పుడు మీరు US$100 కు సమానమైన క్లౌడ్ వనరుల కోసం క్రెడిట్ పొందుతారు, మరియు ఉచిత సర్వీసులు, ఒక IoT సేవ ఉచిత వెర్షన్ కూడా అందజేస్తుంది. ఇది 12 నెలలు పనిచేస్తుంది, మీరు ప్రతి సంవత్సరం విద్యార్థిగా ఉంటే దీన్ని పునరుద్ధరించవచ్చు.
-
Azure free subscription - ఇది విద్యార్థి కాని వారికైన సబ్స్క్రిప్షన్. సైన్ అప్ చేసుకోవడానికి క్రెడిట్ కార్డు అవసరం, కానీ కార్డు బిల్లు కాని విధంగా వుంటుంది, ఇది మీరు ఒక నిజమైన వ్యక్తి అని ధృవీకరించడానికి మాత్రమే ఉపయోగిస్తారు. మొదటి 30 రోజుల్లో $200 క్రెడిట్ అందపడుతుంది, మరియు Azure సేవల ఉచిత ముంతలతో పాటు. మీ క్రెడిట్ పూర్తయ్యాక మీ కార్డుకు ఛార్జి కట్టరు, మీరు pay as you go సబ్స్క్రిప్షన్ కు మార్చకపోతే.
💁 Microsoft 18 సంవత్సరాల కంటే తక్కువ వయస్సు గల విద్యార్థుల కోసం Azure for Students Starter సబ్స్క్రిప్షన్ ను అందిస్తుంది, కానీ ఈ సమయంలో దీని ద్వారా ఏ IoT సేవలు అందుబాటులో లేవు.
పని - ఉచిత క్లౌడ్ సబ్స్క్రిప్షన్ కోసం సైన్ అప్ చేయండి
మీరు 18+ ప్రాయపు విద్యార్థి అయితే, Azure for Students సబ్స్క్రిప్షన్ కోసం సైన్ అప్ చేయవచ్చు. మీరు పాఠశాల ఇమెయిల్ చిరునామాతో ధృవీకరించాల్సి ఉంటుంది. మీరు ఈ రెండు మార్గాల్లో ఒకటిని ఉపయోగించవచ్చు:
-
education.github.com/pack వద్ద GitHub స్టూడెంట్ డెవలపర్ ప్యాక్ కోసం సైన్ అప్ చేయండి. ఇది GitHub మరియు Microsoft Azure సహా పలు సాధనలు మరియు ఆఫర్లకు ప్రాప్యత ఇస్తుంది. డెవలపర్ ప్యాక్ సైన్ అప్ చేసిన తర్వాత, మీరు Azure for Students ఆఫర్ ను యాక్టివేట్ చేయవచ్చు.
-
నేరుగా Azure for Students ఖాతా కోసం సైన్ అప్ చేయండి: azure.microsoft.com/free/students.
⚠️ మీ పాఠశాల ఇమెయిల్ గుర్తుపెట్టుకోకపోతే, ఈ repo లో ఒక issue పెడుతుంది, మనం Azure for Students అనుమతించు జాబితాలో చేర్చగలమో చూడాలి.
మీరు విద్యార్థి కాకపోతే, లేదా సరైన పాఠశాల ఇమెయిల్ చిరునామా లేనట్లయితే, మీరు Azure ఉచిత సబ్స్క్రిప్షన్ కోసం సైన్ అప్ కావచ్చు.
- Azure ఉచిత సబ్స్క్రిప్షన్ కోసం సైన్ అప్ చేయండి: azure.microsoft.com/free
క్లౌడ్ IoT సేవలు
మీరు ఉపయోగిస్తున్న పబ్లిక్ టెస్ట్ MQTT బ్రోకర్ నేర్చుకునే సమయంలో ఒక గొప్ప సాధనం, కానీ వాణిజ్య ప్రపంచంలో ఉపయోగించే సాధనంగా ఇది కొన్ని లోపాలను కలిగి ఉంది:
- నమ్మకదర్కం - ఇది ఉచిత సేవ, ఎటువంటి హామీ లేదు, మరియు ఎప్పుడైనా ఆపివేయవచ్చు
- భద్రత - ఇది పబ్లిక్, అందువల్ల ఎవరైనా మీ టెలిమెట్రీని వింటే లేదా మీ హార్డ్వేర్ నియంత్రణ కోసం ఆదేశాలు పంపితే తప్పదు
- పనితీరు - ఇది కొద్ది పరీక్ష సందేశాలకు మాత్రమే రూపొందించబడింది, కాబట్టి పెద్ద మొత్తంలో సందేశాలను నిర్వహించలేని పరిస్థితి ఉంది
- గుర్తింపు - ఏ డివైస్లు కనెక్ట్ అయి ఉన్నాయో తెలియజేసే విధానం లేదు
క్లౌడ్లోని IoT సేవలు ఈ సమస్యలను పరిష్కరిస్తాయి. ఇవి పెద్ద క్లౌడ్ ప్రొవైడర్స్ నిర్వహిస్తారు, వారు విశ్వసనీయతకు భారీగా పెట్టుబడులు పెడతారు మరియు ఎవరైనా సమస్య వచ్చినప్పుడు సత్వర పరిష్కారం ఇస్తారు. వీటిలో హ్యాకర్స్ మీ డేటాను చదవకుండా లేదా ద romp కమాండ్లను పంపకుండా భద్రత పాటిస్తున్నారు. వీటిలో రోజుకి లక్షలాది సందేశాలు పంపడంలో సామర్థ్యం ఉంది, మరియు అవసరమైతే క్లౌడ్ ఆధారంగా వేగంగా విస్తరించగల సామర్థ్యం కలిగి ఉంటాయి.
💁 మీరు ఈ ప్రయోజనాల కోసం ప్రతి నెల ఫీజు చెల్లిస్తేను, చాలా క్లౌడ్ ప్రొవైడర్లు తమ IoT సేవకు ఉచిత వెర్షన్ అందిస్తారు, రోజుకు పరిమిత సంఖ్యలో సందేశాలు లేదా కనెక్ట్ అయ్యే డివైసులు కలిగివుంటాయి. ఇది సాధారణంగా ఒక డెవలపర్ కు సేవను నేర్చుకోవడానికి సరిపోతుంది. ఈ పాఠంలో మీరు ఉచిత వెర్షన్ ను ఉపయోగిస్తారు.
IoT డివైసులు డివైస్ SDK (సేవ ఫీచర్లతో పనిచేయడానికి కోడ్ అందించే లైబ్రరీ) ఉపయోగించి లేదా MQTT లేదా HTTP వంటి కమ్యూనికేషన్ ప్రోటోకాల్ ద్వారా నేరుగా క్లౌడ్ సేవకు కనెక్ట్ అవుతాయి. సాధారణంగా డివైస్ SDK ఉపయోగించడం సులభం, ఎందుకంటే ఇది ఏ టాపిక్స్ ను ప్రచురించాలో లేదా సబ్స్క్రయిబ్ చేయాలో, భద్రత ఎలా ఉంటుందో అన్నిటినీ నిర్వహిస్తుంది.
మీ డివైస్ ఆ తర్వాత ఈ సేవ ద్వారా అప్లికేషన్ ఇతర భాగాలతో కమ్యూనికేట్ చేస్తుంది - మీరు MQTT ద్వారా టెలిమెట్రీ పంపడం మరియు కమాండ్లను అందుకోవడం ఎలా చేశారోలా. ఇది సాధారణంగా సేవ SDK లేదా సమానమైన లైబ్రరీ ఉపయోగించి ఉంటుంది. సందేశాలు మీ డివైస్ నుండి సేవకు వస్తాయి, అక్కడ అప్లికేషన్ ఇతర భాగాలు వాటిని చదవవచ్చు, మరియు సందేశాలు తిరిగి మీ డివైస్ కి పంపబడతాయి.
ఈ సేవలు అన్ని కనెక్ట్ కావడానికీ అర్హులేని లేదా డేటా పంపే డివైసులను తెలుసుకుని భద్రత అమలు చేస్తాయి, లేదా సేవకు ముందుగానే రిజిస్టర్ చేయబడిన లేదా మొదటి సారి కనెక్ట్ అయ్యేటప్పుడు రిజిస్టర్ చేసుకునే సీక్రెట్ కీలు/సర్టిఫికెట్లు కలిగిన డివైసులు మాత్రమే అనుమతిస్తాయి. తెలియని డివైసులు కనెక్ట్ కావలేకపోతాయి; ప్రయత్నిస్తే సేవ కనెక్షన్ తిరస్కరించి వాటి సందేశాలను నిర్లక్ష్యం చేస్తుంది.
✅ కొంత పరిశోధన చేయండి: ఏదైనా డివైస్ లేదా కోడ్ కనెక్ట్ కావచ్చునని తెరవబడిన IoT సేవ యొక్క లోపం ఏమిటి? హ్యాకర్లు దీన్ని ఎలా ద్రోహించి ఉపయోగించుకున్నారో ప్రత్యేక ఉదాహరణలు కనుగొనగలరా?
మీ అప్లికేషన్ ఇతర భాగాలు IoT సేవకు కనెక్ట్ అయి, అన్ని కనెక్ట్ అయిన లేదా రిజిస్టర్ అయిన డివైసుల గురించి తెలుసుకొని, వారితో ప్యాక్ గానీ లేదా వ్యక్తిగతంగా కనెక్ట్ అయి కమ్యూనికేట్ చేయొచ్చు.
💁 IoT సేవలు అదనపు సామర్థ్యాలు కూడా కలిగి ఉంటాయి, మరియు క్లౌడ్ ప్రొవైడర్లకు సేవకు కనెక్ట్ అయ్యే అదనపు సేవలు మరియు అప్లికేషన్లు ఉంటాయి. ఉదాహరణకు, మీరు అన్ని డివైసుల పంపిన అన్ని టెలిమెట్రీ సందేశాలను డేటాబేస్లో నిల్వ చేయాలనుకుంటే, క్లౌడ్ ప్రొవైడర్ యొక్క కాన్ఫిగరేషన్ టూల్లో కొన్ని క్లిక్లతో సేవను డేటాబేస్ కు కనెక్ట్ చేసి డేటా స్ట్రీమ్ చేయడం సాధ్యమే.
క్లౌడ్లో ఒక IoT సేవను సృష్టించండి
మీకు ఇప్పుడు Azure సబ్స్క్రిప్షన్ ఉన్నది, మీరు IoT సేవ కోసం సైన్ అప్ చేసుకోవచ్చు. Microsoft నుండి IoT సేవ Azure IoT Hub అని పిలవబడుతుంది.
క్రింద వీడియో ఒక చిన్న Azure IoT Hub అవలోకనాన్ని ఇస్తుంది:
🎥 పై చిత్రం పై క్లిక్ చేసి వీడియోను చూడండి
✅ కొంచెం సమయం తీసుకొని పరిశోధన చెయ్యండి మరియు Microsoft IoT Hub డాక్యుమెంటేషన్లో IoT హబ్ యొక్క అవలోకనాన్ని చదవండి. Azure లో అందుబాటులో ఉన్న క్లౌడ్ సేవలను వెబ్-ఆధారిత పోర్టల్ లేదా కమాండ్-లైన్ ఇంటర్ఫేస్ (CLI) ద్వారా కాన్ఫిగర్ చేయవచ్చు. ఈ పనికి, మీరు CLI ఉపయోగిస్తారు.
పని - Azure CLI ఇన్స్టాల్ చేయండి
Azure CLI ఉపయోగించడానికి, ముందుగా అది మీ PC లేదా Mac లో ఇన్స్టాల్ చేయాలి.
-
CLI ఇన్స్టాలేషన్ కోసం Azure CLI డాక్యుమెంట్ లో ఉన్న సూచనలను అనుసరించండి.
-
Azure CLI అనేక పెరుగుదలలను (Extensions) మద్దతు ఇస్తుంది, ఇవి విస్తృత Azure సేవలను నిర్వహించడానికి సామర్థ్యాలను కలుపుతాయి. మీ కమాండ్ లైన్ లేదా టర్మినల్ నుండి క్రింది కమాండ్ నడుపుతూ IoT ఎక్స్టెన్షన్ను ఇన్స్టాల్ చేయండి:
az extension add --name azure-iot -
మీ కమాండ్ లైన్ లేదా టర్మినల్ నుండి క్రింది కమాండ్ నడుపుతూ Azure CLI ద్వారా మీ Azure సబ్స్క్రిప్షన్లో లాగిన్ అవ్వండి.
az loginమీ డిఫాల్ట్ బ్రౌజర్లో ఒక వెబ్ పేజీ ప్రారంభమవుతుంది. మీరు Azure సబ్స్క్రిప్షన్ కోసం సైన్ అప్ చేసిన ఖాతా ఉపయోగించి లాగిన్ అవ్వండి. లాగిన్ అయిన తర్వాత, బ్రౌజర్ టాబ్ను మూసేయండి.
-
మీకు ఒకటి కంటే ఎక్కువ Azure సబ్స్క్రిప్షన్లు ఉంటే, ఉదాహరణకు, స్కూల్ ద్వారా ఇచ్చినది మరియు మీ స్వంత Azure for Students సబ్స్క్రిప్షన్ ఉంటే, మీరు ఉపయోగించాలనుకున్నది ఎంచుకోవాలి. మీరు యాక్సెస్ ఉన్న అన్ని సబ్స్క్రిప్షన్లను చూపించడానికి క్రింది కమాండ్ నడపండి:
az account list --output tableఅవుట్పుట్లో, ప్రతి సబ్స్క్రిప్షన్ పేరు మరియు దాని
SubscriptionIdకనబడును.➜ ~ az account list --output table Name CloudName SubscriptionId State IsDefault ---------------------- ----------- ------------------------------------ ------- ----------- School-subscription AzureCloud cb30cde9-814a-42f0-a111-754cb788e4e1 Enabled True Azure for Students AzureCloud fa51c31b-162c-4599-add6-781def2e1fbf Enabled Falseమీరు ఉపయోగించాలనుకున్న సబ్స్క్రిప్షన్ని ఎంచుకొనేందుకు, క్రింది కమాండ్ ఉపయోగించండి:
az account set --subscription <SubscriptionId><SubscriptionId>ను మీరు ఉపయోగించాలనుకున్న సబ్స్క్రిప్షన్ యొక్క Id తో మార్చండి. ఈ కమాండ్ నడిపిన తర్వాత, మీ ఖాతాలు జాబితాను మళ్ళీ నడపండి. మీరు అప్పుడుIsDefaultకాలమ్ మీరు సృష్టించిన సబ్స్క్రిప్షన్ కోసంTrueగా ఉన్నదని చూసి కనుగొంటారు.
పని - రిసోర్స్ గ్రూప్ సృష్టించండి
Azure సేవలు, ఉదాహరణకు IoT Hub ఉదాహరణలు, వర్చువల్ మషీన్లు, డేటాబేసులు, లేదా AI సేవలు, రిసోర్సులు గా పరిగణించబడతాయి. ప్రతి రిసోర్స్ ఒక రిసోర్స్ గ్రూప్ లో ఉండాలి, ఇది ఒకటి లేదా ఎక్కువ రిసోర్సుల తార్కిక గుంపు.
💁 రిసోర్స్ గ్రూపులు ఉపయోగించడం ద్వారా, మీరు ఒకేసారి బహుచిత్ర సేవలను నిర్వహించవచ్చు. ఉదాహరణకు, మీరు ఈ ప్రాజెక్టు కోసం అన్ని పాఠాలు పూర్తిచేసిన తర్వాత, రిసోర్స్ గ్రూప్ను తొలగించవచ్చు, అప్పుడు ఆ గ్రూప్ లో ఉన్న అన్ని రిసోర్సులు స్వయంచాలకంగా తొలగించబడతాయి.
-
ప్రపంచవ్యాప్తంగా అనేక Azure డేటా సెంటర్లు ఉన్నాయి, ఇవి ప్రాంతాలుగా విభజించబడ్డాయి. మీరు Azure రిసోర్స్ లేదా రిసోర్స్ గ్రూప్ సృష్టిస్తే, ఎక్కడ సృష్టించాలి అనేదాన్ని నిర్ణయించాలి. ప్రాంతాల జాబితా పొందడానికి క్రింది కమాండ్ నడపండి:
az account list-locations --output tableమీరు ప్రాంతాల జాబితాను చూడగలుగుతారు. ఈ జాబితా పొడవుగా ఉంటుంది.
💁 రచన సమయం ప్రకారం, మీరు despley చేయగల 65 ప్రాంతాలు ఉన్నాయి.
➜ ~ az account list-locations --output table DisplayName Name RegionalDisplayName ------------------------ ------------------- ------------------------------------- East US eastus (US) East US East US 2 eastus2 (US) East US 2 South Central US southcentralus (US) South Central US ...మీకు దగ్గరవున్న ప్రాంతానికి సంబంధించిన
Nameకాలమ్ నుండి విలువ గమనించండి. మీరు ప్రాంతాలను Azure భౌగోళికాల పేజీ న మ్యాప్లో చూడవచ్చు. -
soil-moisture-sensorఅనే పేరు గల రిసోర్స్ గ్రూప్ సృష్టించడానికి క్రింది కమాండ్ నడపండి. రిసోర్స్ గ్రూప్ పేర్లు మీ సబ్స్క్రిప్షన్లో ప్రత్యేకంగా ఉండాలి.az group create --name soil-moisture-sensor \ --location <location><location>ను మీరు ఎంపిక చేసిన ప్రాంతంతో మార్చండి.
పని - IoT Hub సృష్టించండి
ఇప్పుడు మీరు మీ రిసోర్స్ గ్రూప్లో ఒక IoT Hub రిసోర్స్ను సృష్టించవచ్చు.
-
మీ IoT Hub రిసోర్స్ సృష్టించడానికి క్రింది కమాండ్ ఉపయోగించండి:
az iot hub create --resource-group soil-moisture-sensor \ --sku F1 \ --partition-count 2 \ --name <hub_name><hub_name>ను మీరు మీ హబ్కి ఇచ్చిన పేరుతో మార్చండి. ఈ పేరు ప్రపంచవ్యాప్తంగా ప్రత్యేకంగా ఉండాలి - అంటే ఎవరూ కూడ అదే పేరుతో IoT Hub సృష్టించకూడదు. ఈ పేరు హబ్ను సూచించే URL లో వాడబడుతుంది, కాబట్టి ప్రత్యేకంగా ఉండాలి. ఉదాహరణకుsoil-moisture-sensor-అని పెట్టి শেষে ప్రత్యేక గుర్తింపు పదాలు లేదా మీ పేరు జోడించండి.--sku F1ఆప్షన్ ఉచిత స్థాయి (free tier) ఉపయోగిస్తుంది. ఫ్రీ టియర్ రోజుకు 8,000 సందేశాలను మద్దతు ఇస్తుంది మరియు పూర్తి-ధర స్థాయిలలో ఉన్న features చాలా వాటిని కలిగి ఉంటుంది.🎓 Azure సేవల ధర స్థాయిలను tiers అంటారు. ప్రతి tierకి వివిధ ఖర్చులు, విభిన్న features లేదా డేటా పరిమాణాలు ఉంటాయి.
💁 ధరల గురించి మరింత తెలుసుకోవడానికి, మీరు Azure IoT Hub ధరల గైడ్ చూడవచ్చు.
--partition-count 2ఆప్షన్ IoT Hub ఎంతగా డేటా ప్రవాహాల్ని (streams) మద్దతు ఇస్తుందో నిర్వచిస్తుంది, partitions సంఖ్య పెరగడం వల్ల డేటా బ్లాకింగ్ తగ్గుతుంది. పాఠాలకు partitions సంబంధించిన వివరాలు ఇవ్వలేదు, కానీ ఫ్రీ టియర్ IoT Hub సృష్టించడానికి ఇది అవసరం.💁 మీరు ఒక్కో సబ్స్క్రిప్షన్లో ఒకటి మాత్రమే ఉచిత స్థాయి IoT Hub ఉంచవచ్చు.
IoT Hub సృష్టించబడుతుంది. ఇది పూర్తయ్యేందుకు కొంత సమయం పట్టవచ్చు.
IoT Hub తో కమ్యూనికేట్ చేయండి
మునుపటి పాఠంలో, మీరు MQTT ఉపయోగించి చిన్నవి వేర్వేరు టాపిక్స్లో సందేశాలు పంపించి, వాటి వేర్వేరు ఉద్దేశాలు ఉండేవి. వివిధ టాపిక్స్ ద్వారా సందేశాలు పంపించే బదులు, IoT Hub కు లేదా Hub నుండి డివైస్ కు కమ్యూనికేట్ చేయటానికి నిర్వచించిన అనేక మార్గాలు ఉన్నాయి.
💁 IoT Hub మరియు మీ డివైస్ మధ్య ఈ కమ్యూనికేషన్ MQTT, HTTPS లేదా AMQP ఉపయోగించి జరుగుతుంది.
-
డివైస్ నుండి క్లౌడ్ (D2C) సందేశాలు - ఇవి డివైస్ నుండి IoT Hubకు పంపించే సందేశాలు, ఉదాహరణకు టెలిమెట్రీ. తరువాత, మీ అప్లికేషన్ కోడ్ ద్వారా IoT Hub నుండి చదవబడతాయి.
🎓 IoT Hub వెనుక Event Hubs అనే Azure సర్వీసును ఉపయోగిస్తుంది. మీరు హబ్కు పంపబడిన సందేశాలు చదవడానికి కոդ్లు రాయగలిగితే, ఈ సందేశాలను జాగ్రత్తగా events అంటారు.
-
క్లౌడ్ నుండి డివైస్ (C2D) సందేశాలు - ఇవి అప్లికేషన్ కోడ్ నుండి, IoT Hub ద్వారా IoT డివైస్ కు పంపించే సందేశాలు.
-
డైరెక్ట్ మెథడ్ అభ్యర్థనలు - ఇవి అప్లికేషన్ కోడ్ నుండి IoT Hub ద్వారా IoT డివైస్ కు పంపిన సందేశాలు, దీని ద్వారా డివైస్ ఏదైనా చర్య చేయమని కోరుతుంది, ఉదా: actuator నియంత్రణ. ఈ సందేశాలకు ప్రత్యుత్తరం అవసరం, తద్వారా అప్లికేషన్ కోడ్ సఫలమైనదో లేదో తెలుసుకుంటుంది.
-
డివైస్ ట్విన్స్ - ఇవి JSON డాక్యుమెంట్లుగా ఉంటాయి, ఇవి డివైస్ మరియు IoT Hub మధ్య సింక్రనైజ్ అయ్యి ఉంచబడతాయి. ఇవి సెట్టింగ్స్ లేదా ఇతర గుణములను ఆస్టోర్ చేయటానికి ఉపయోగిస్తారు, అవి డివైస్ ద్వారా రిపోర్ట్ చేయబడ్డవి లేదా IoT Hub ద్వారా డివైస్ లో అమలు చేయదలచినవి (desired).
IoT Hub సందేశాలు మరియు డైరెక్ట్ మెథడ్ అభ్యర్థనలను ఒక నిర్దిష్ట కాలం (పూర్తిగా ఒక రోజు) నిల్వ చేయగలదు, కనుక డివైస్ లేదా అప్లికేషన్ కోడ్ కనెక్షన్ కోల్పోగా కూడా ఆన్లైన్ వచ్చాక ఆ సందేశాలను పొందవచ్చు. డివైస్ ట్విన్స్ పొడుగుతో Hubలో నిల్వ ఉంచబడతాయి, కాబట్టి ఎప్పుడైనా డివైస్ తిరిగి కనెక్ట్ అయ్యి తాజా ట్విన్ డేటా పొందవచ్చు.
✅ పరిశోధన చేయండి: ఈ సందేశ రకాలపై మరింత చదవండి డివైస్-టు-క్లౌడ్ కమ్యూనికేషన్ గైడెన్స్ మరియు క్లౌడ్-టు-డివైస్ కమ్యూనికేషన్ గైడెన్స్ IoT Hub డాక్యుమెంటেশన్లో.
మీ డివైస్ను IoT సేవకు కనెక్ట్ చేయండి
హబ్ సృష్టించిన తర్వాత, మీ IoT డివైస్ దానికి కనెక్ట్ అవ్వగలదు. సర్వీస్కు కనెక్ట్ అయ్యేటప్పుడు మాత్రమే నమోదు చేయబడ్డ డివైస్లు అనుమతిస్తారు, కాబట్టి మీ డివైస్ని ముందుగా నమోదు చేయాలి. నమోదు చేసిన తర్వాత, డివైస్ ఉపయోగించగల కనెక్షన్ స్ట్రింగ్ పొందవచ్చు. ఈ కనెక్షన్ స్ట్రింగ్ ప్రత్యేకంగా ఆ డివైస్ కు సంబంధించినది, ఇది IoT Hub, డివైస్, మరియు కనెక్ట్ కావడానికి అనుమతించే రహస్య కీ సమాచారాన్ని కలిగి ఉంటుంది.
🎓 కనెక్షన్ స్ట్రింగ్ అనేది కనెక్ట్ వివరాలనిచ్చే ఒక పాఠ్య భాగం. ఇది IoT Hubలకు, డేటాబేసులకు మరియు ఇతర అనేక సేవలకు కనెక్ట్ అయ్యేటప్పుడు ఉపయోగిస్తారు. సాధారణంగా ఒక URL వంటి సేవ ఐడెంటిఫైయర్ మరియు రహస్యం కీ వంటి భద్రతా సమాచారంతో ఉంటాయి. ఇవి SDKలకు కనెక్ట్ చేయడానికి అందచేస్తారు.
⚠️ కనెక్షన్ స్ట్రింగ్లు భద్రంగా ఉంచాలి! భద్రత గురించి ఒక వేళ ఇతర పాఠంలో విశదీకరించబడుతుంది.
పని - మీ IoT డివైస్ ను నమోదు చేయండి
Azure CLI ను ఉపయోగించి మీ IoT Hubలో మీ IoT డివైస్ను నమోదు చేయవచ్చు.
-
డివైస్ ను నమోదు చేసే క్రింది కమాండ్ నడపండి:
az iot hub device-identity create --device-id soil-moisture-sensor \ --hub-name <hub_name><hub_name>ను మీరు సృష్టించిన హబ్ పేరుతో మార్చండి.ఇది
soil-moisture-sensorఅనే ID కలిగిన డివైస్ని సృష్టిస్తుంది. -
మీరు SDK ఉపయోగించి డివైస్ని మీ IoT Hubకు కనెక్ట్ చేసేటప్పుడు, హబ్ URL మరియు రహస్య కీ సమేత కనెక్షన్ స్ట్రింగ్ అవసరం. కనెక్షన్ స్ట్రింగ్ పొందడానికి క్రింది కమాండ్ నడపండి:
az iot hub device-identity connection-string show --device-id soil-moisture-sensor \ --output table \ --hub-name <hub_name><hub_name>ను మీరు సృష్టించిన హబ్ పేరుతో మార్చండి. -
అవుట్పుట్లో చూపించబడిన కనెక్షన్ స్ట్రింగ్ను భద్రపరచుకోండి, అది తర్వాత అవసరం.
పని - మీ IoT డివైస్ ను క్లౌడ్కు కనెక్ట్ చేయండి
మీ IoT డివైస్ను క్లౌడ్కు కనెక్ట్ చేయడానికి సంబంధిత గైడ్ ద్వారా పని చేయండి:
పని - ఈవెంట్లను మానిటర్ చేయండి
ప్రస్తుతం, మీరు మీ సర్వర్ కోడ్ నవీకరించబోట్లేదు. బదులుగా, Azure CLI ను ఉపయోగించి మీ IoT డివైస్ నుండి ఈవెంట్లను Mనిటర్ చేయవచ్చు.
-
మీ IoT డివైస్ రన్ అవుతూ, మట్టి తేమ టెలిమెట్రీ విలువలను పంపుతూ ఉన్నదని నిర్ధారించుకోండి
-
మీ కమాండ్ ప్రాంప్ట్ లేదా టర్మినల్ లో క్రింది కమాండ్ నడుపుతూ మీ IoT Hubకు పంపబడుతున్న సందేశాలను మానిటర్ చేయండి:
az iot hub monitor-events --hub-name <hub_name><hub_name>ను మీరు సృష్టించిన హబ్ పేరుతో మార్చండి.మీ IoT డివైస్ పంపిన సందేశాలు కన్సోల్ అవుట్పుట్లో కనిపిస్తాయి.
Starting event monitor, use ctrl-c to stop... { "event": { "origin": "soil-moisture-sensor", "module": "", "interface": "", "component": "", "payload": "{\"soil_moisture\": 376}" } }, { "event": { "origin": "soil-moisture-sensor", "module": "", "interface": "", "component": "", "payload": "{\"soil_moisture\": 381}" } }payloadలో ఉన్న విషయాలు మీ IoT డివైస్ పంపిన సందేశంతో సరిపోతాయి.ప్రస్తుతం,
az iotఎక్స్టెన్షన్ Apple Silicon పరికరాలపై పూర్తిగా పనిచేయడం లేదు. మీరు Apple Silicon వాడుతున్నట్లయితే, సందేశాలను వేరే విధంగా మానిటర్ చేయాలి, ఉదాహరణకు Azure IoT Tools for Visual Studio Code ఉపయోగించి. -
ఈ సందేశాలకు తాము పంపిన సమయము వంటి అనేక లక్షణాలు ఆటోమేటిక్ గా జతచేయబడ్డాయి. వీటిని annotations అంటారు. అన్ని సందేశ అనోటేషన్లను చూడడానికి, క్రింది కమాండ్ ఉపయోగించండి:
az iot hub monitor-events --properties anno --hub-name <hub_name><hub_name>ను మీరు సృష్టించిన హబ్ పేరుతో మార్చండి.మీరు IoT డివైస్ పంపిన సందేశాలు కాన్సోల్ ఎదుట కనిపిస్తాయి.
Starting event monitor, use ctrl-c to stop... { "event": { "origin": "soil-moisture-sensor", "module": "", "interface": "", "component": "", "properties": {}, "annotations": { "iothub-connection-device-id": "soil-moisture-sensor", "iothub-connection-auth-method": "{\"scope\":\"device\",\"type\":\"sas\",\"issuer\":\"iothub\",\"acceptingIpFilterRule\":null}", "iothub-connection-auth-generation-id": "637553997165220462", "iothub-enqueuedtime": 1619976150288, "iothub-message-source": "Telemetry", "x-opt-sequence-number": 1379, "x-opt-offset": "550576", "x-opt-enqueued-time": 1619976150277 }, "payload": "{\"soil_moisture\": 381}" } }annotations లో టైమ్ విలువలు UNIX టైమ్ లో ఉంటాయి, అంటే 1970 జనవరి 1 రాత్రి నుంచి గడిచిన సెకన్ల సంఖ్య.
మీరు పూర్తిచేసిన తర్వాత ఈవెంట్ మానిటర్ను ఎగ్జిట్ అవ్వండి.
పని - మీ IoT డివైస్ ని నియంత్రించండి
Azure CLI ఉపయోగించి మీరు డైరెక్ట్ మెథడ్లను మీ IoT డివైస్ మీద కాల్ చేయవచ్చు.
-
మీ కమాండ్ ప్రాంప్ట్ లేదా టర్మినల్ లో క్రింది కమాండ్ నడుపుతూ
relay_onమెథడ్ను IoT డివైస్పై పిలవండి:az iot hub invoke-device-method --device-id soil-moisture-sensor \ --method-name relay_on \ --method-payload '{}' \ --hub-name <hub_name><hub_name>ను మీ హబ్ పేరుతో మార్చండి.ఇది
method-nameద్వారా పేర్కొన్న మెథడ్కు డైరెక్ట్ మెథడ్ అభ్యర్థన పంపుతుంది. డైరెక్ట్ మెథడ్లు డేటా కలిగిన payload తీసుకోవచ్చు, అది JSON రూపంలోmethod-payloadపారామీటర్లో ఇవ్వవచ్చు.మీరు relay ఆన్ అవుతున్నదని, మరియు మీ IoT డివైస్ నుంచి సంబంధించిన అవుట్పుట్ కనిపిస్తుంది:
Direct method received - relay_on -
పై దశలను మళ్లీ చేయండి, కానీ
--method-nameనిrelay_offగా సెట్ చేయండి. మీరు relay ఆఫ్ అవుతుందని, మరియు IoT డివైస్ నుంచి అవుట్పుట్ కనిపిస్తుందని చూడగలుగుతారు.
🚀 సవాలు
IoT Hub ఉచిత స్థాయి రోజుకు 8,000 సందేశాలు అనుమతిస్తుంది. మీరు వ్రాసిన కోడ్ ప్రతి 10 సెకన్లకోసారి టెలిమెట్రీ సందేశాలు పంపుతుంది. ఒక సందేశం ప్రతి 10 సెకన్లకొకటి అంటే రోజుకు ఎంత సందేశాలు వస్తాయి?
మట్టి తేమ కొలతలను తగినంత తరచుగా పంపించేది ఎంతగా ఉండాలి? ఉచిత స్థాయిలో ఉండేందుకు మరియు అవసరమైనంత తరచుగా చెక్ చేయడానికి మీ కోడ్ను ఎలా మార్చుకోవచ్చు? మీరు రెండవ డివైస్ జోడించాలనుకుంటే?
పోస్ట్-లెక్చర్ క్విజ్
సమీక్ష & స్వయంశిక్షణ
IoT Hub SDKలు Arduino మరియు Python రెండు కోసం ఓపెన్ సోర్స్. GitHub లోని కోడ్ రిపాజిటరీజ్లో విభిన్న IoT Hub ఫీచర్లతో పని ఎలా చేయాలో సాంపిల్స్ ఉన్నాయి.
- మీరు Wio Terminal ఉపయోగిస్తున్నట్లయితే, GitHub లోని Arduino సాంపిల్స్ చూడండి.
- మీరు Raspberry Pi లేదా వర్చువల్ పరికరం ఉపయోగిస్తుంటే, GitHubపై ఉన్న Python నమూనాలను చూడండి
అసైన్మెంట్
క్లౌడ్ సేవల గురించి నేర్చుకోండి
ఎంచుకోకుండా చెప్పుకోవడం:
ఈ డాక్యుమెంట్ను AI అనువాద సేవ Co-op Translator ఉపయోగించి అనువదించారు. మేము ఖచ్చితత్వానికి ప్రయత్నించినప్పటికీ, ఆటోమేటెడ్ అనువాదంలో తప్పులు లేదా అసత్యతలు ఉండవచ్చు. మూల పత్రం native భాషలో అధికారిక మూలం గా పరిగణించాలి. కీలక సమాచారం కోసం ప్రొఫెషనల్ మానవ అనువాదం సిఫారసు చేయబడుతుంది. ఈ అనువాదం ఉపయోగించడంవల్ల ఏర్పడే ఏవైనా తప్పుదోషాలు లేదా అవగాహన తప్పుల కోసం మేము బాధ్యత రాదు.







