Isifundo sokudala izinhlelo zokusebenza ku-Amazon Web Services (AWS)

Isifundo Sokudala Izinhlelo Zokusebenza Kumasevisi Ewebhu e-Amazon (AWS)

I-Amazon Web Services (AWS) ingenye yamapulatifomu e-cloud computing athandwa kakhulu emhlabeni. Nge-AWS, ungakha futhi usebenzise izinhlelo zokusebenza ngaphandle kokuthenga amaseva angokoqobo, ukusetha isikhala seseva, noma ukugcina ingqalasizinda yakho. Lesi sihloko sizokuqondisa ekudaleni uhlelo lokusebenza olulula ku-AWS usebenzisa indlela evamile: ukusebenzisa uhlelo lokusebenza lwewebhu usebenzisa izinsizakalo zokubala (EC2), isizindalwazi esiphethwe (RDS) njengenketho, kanye nesitoreji kanye nesizinda uma kudingeka. Ngenkathi isibonelo esilandelayo sijwayelekile, ungasisebenzisa ezinhlotsheni eziningi zezinhlelo zokusebenza.

-

1. Ukulungiselela Kokuqala: Ama-akhawunti kanye Nemibono Eyisisekelo

Ngaphambi kokuthi uqale, qiniseka ukuthi une-akhawunti ye-AWS. Izinsizakalo eziningi ze-AWS zinikeza i-Free Tier (mahhala ngaphakathi kwemingcele ethile) efaneleke kakhulu ekusebenzeni.

Eminye imiqondo ebalulekile okudingeka uyiqonde:

– Isifunda: Indawo yesikhungo sedatha se-AWS (isibonelo: iSingapore/ap-southeastern-1). Khetha isifunda esiseduze kakhulu sokubambezeleka okuphansi.
– I-IAM (Ubunikazi Nokuphathwa Kokufinyelela): uhlelo lokuphatha ukufinyelela. Umkhuba omuhle kakhulu: ungasebenzisi i-akhawunti eyinhloko emsebenzini wansuku zonke.
– I-VPC (Ifu Eliyimfihlo Eliyi-Virtual): inethiwekhi ebonakalayo lapho izinsizakalo zakho zisebenza khona.
– Iqembu Lokuphepha: “i-firewall” yokulawula ukufinyelela okungenayo/okuphumayo kusuka kuseva.

Ngokuqonda lezi zinto ezine, kuzoba lula kakhulu kuwe ukuzulazula eziyisisekelo ze-AWS.

-

2. Dala Abasebenzisi be-IAM futhi Uvikele Ama-akhawunti

Ukuphepha kuhlale kuyinto eza kuqala kithi. Ngena ngemvume ku-AWS Console njengempande, bese:

1. Vula isevisi ye-IAM.
2. Dala Umsebenzisi omusha (isb. `admin-dev`) bese uhlola ukuthi i-Provide user access to AWS Management Console.
3. Nikeza imvume: ukuze uzijwayeze ungasebenzisa i-AdministratorAccess (yize kumaphrojekthi angempela kufanele kube nomkhawulo kakhulu).
4. Nika amandla i-MFA (Ukuqinisekiswa Kwezici Eziningi) ukuze kwandiswe ukuphepha.

Uma usuqedile, phuma ku-root bese ungena usebenzisa umsebenzisi we-IAM osanda kudalwa.

-

3. Nquma Ukwakheka Kwesicelo

Kulesi sifundo, sizokwakha isakhiwo esilula:

– EC2: ukusebenzisa izinhlelo zokusebenza zewebhu (isb. i-Node.js/Express, i-Python Flask, noma i-PHP).
– I-RDS yokuzikhethela: i-database ye-MySQL/PostgreSQL ephethwe, ukuze idatha igcinwe kahle.
– S3 (ongakukhetha): igcina amafayela angaguquki njengezithombe, amadokhumenti, noma ama-backups.
– Umzila 53 (ongakukhetha): phatha izizinda.
– I-CloudWatch: ukuqapha okuyisisekelo.

FUNDA  Umehluko phakathi kwe-virtualization kanye ne-containerization

Uma usaqala nje, gxila ku-EC2 ukuze usebenzise izinhlelo zakho zokusebenza kuqala.

-

4. Dala iSeva ye-EC2

a) Dala Isibonelo
1. Ngena ngemvume kusevisi ye-EC2.
2. Chofoza i-Launch Instance.
3. Khetha i-OS, isibonelo i-Ubuntu Server 22.04 LTS.
4. Khetha uhlobo lwesibonelo: ukuze uthole i-Free Tier sebenzisa i-`t2.micro` noma i-`t3.micro` (kuye ngokutholakala).
5. Dala noma khetha i-Key Pair (isb., `aws-key.pem`). Gcina ifayela le-`.pem` liphephile njengoba lizosetshenziselwa i-SSH.

b) Ukucushwa Kwenethiwekhi Nomlilo
- Qiniseka ukuthi lesi sibonelo siku-VPC ezenzakalelayo (nje ngokuzijwayeza).
- Iqembu Lokuphepha Elisethiwe:
– I-Port 22 (SSH) kuphela kusuka ku-IP yakho (isb. `I-IP yami`)
– Imbobo 80 (HTTP) ye-`0.0.0.0/0` (yomphakathi)
– I-Port 443 (HTTPS) kusukela ku-`0.0.0.0/0` uma kamuva usebenzisa i-SSL

Qaphela: Ukuvula i-SSH emphakathini kuyingozi. Njalo khawulela amakheli e-IP.

Chofoza u-Launch bese ulinda ukuthi insiza isebenze.

-

5. Ngena ngemvume ku-Server nge-SSH

Ku-Windows, ungasebenzisa i-WSL noma i-PuTTY. Ku-macOS/Linux, ungakwenza ngqo kusuka ku-terminal.

1. Shintsha ukhiye wemvume:
“`bash
i-chmod 400 aws-key.pem
``
2. I-SSH kuseva (sebenzisa i-Public IPv4 evela ku-EC2):
“`bash
ssh -i aws-key.pem ubuntu@PUBLIC_IP
``

Uma uphumelele, useseva ye-AWS Ubuntu.

-

6. Faka i-Web Server kanye ne-Application Runtime

Nasi isibonelo sohlelo lokusebenza lwe-Node.js, njengoba lusetshenziswa kabanzi kwiwebhu yesimanje.

a) Buyekeza futhi ufake ukuncika
“`bash
ukuvuselelwa kwe-sudo apt && sudo apt ukukhuphula -y
ukufaka i-sudo apt -y curl git
``

b) Faka i-Node.js (inguqulo ye-LTS)
“`bash
i-curl -fsSL https://deb.nodesource.com/setup_lts.x | i-sudo -E bash –
sudo apt ukufaka -y nodejs
i-node -v
npm -v
``

-

7. Dala Isicelo Esilula

FUNDA  Isifundo sokudala i-VM ku-VirtualBox kanye ne-VMware

Dala ifolda yephrojekthi:

“`bash
mkdir myapp && cd myapp
npm init -y
ukufaka i-npm express
``

Dala ifayela elithi `index.js`:

“`js
const express = dinga ("express");
const app = express();

app.get(“/”, (isicelo, res) => {
res.send(“Sawubona! Uhlelo lwakho lokusebenza lusebenza ku-AWS EC2.”);
});

app.listen(3000, () => console.log(“Iseva isebenza ku-port 3000”));
``

Sebenzisa uhlelo lokusebenza:

“`bash
i-node index.js
``

Zama ukufinyelela kusuka kusiphequluli:
– `http://PUBLIC_IP:3000`

Noma kunjalo, i-port 3000 okwamanje ayivuliwe ku-Security Group. Ungakwazi:
1) i-port evulekile engu-3000 ku-Security Group, noma
2) sebenzisa i-reverse proxy (kunconywa kakhulu) ukuze uhlelo lokusebenza luhlale ku-port yangaphakathi kodwa lungafinyelelwa nge-port 80/443.

-

8. Ukusebenzisa i-Nginx njenge-Reverse Proxy (Ukufinyelela nge-Port 80)

Faka i-Nginx:
“`bash
ukufaka i-sudo apt -y nginx
I-sudo systemctl inika amandla i-nginx
sudo systemctl uqale nginx
``

Setha ukucushwa kwe-Nginx:
“`bash
sudo nano /etc/nginx/sites-available/myapp
``

Okuqukethwe kokucushwa:
“`nginx
iseva {
lalela i-80;
Igama le-server _;

indawo / {
ummeleli_pass http://127.0.0.1:3000;
ummeleli_http_inguqulo 1.1;
proxy_set_header Thuthukisa $http_upgrade;
i-proxy_set_header Uxhumano 'luthuthukisa';
proxy_set_header Umsingathi we-$host;
i-proxy_cache_bypass $http_upgrade;
}
}
``

Nika amandla ukucushwa:
“`bash
sudo ln -s /etc/nginx/sites-available/myapp /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl ukulayisha kabusha i-nginx
``

Manje finyelela:
– `http://PUBLIC_IP/`

Uhlelo lokusebenza lusebenza ku-port 3000 kodwa umphakathi ulufinyelela nge-port 80.

-

9. Ukusebenzisa Izinhlelo Zokusebenza Ngokuqhubekayo nge-PM2

Ukuze uvimbele uhlelo lokusebenza ukuthi lungaphazamisi uma i-SSH ingaxhunyiwe, sebenzisa i-PM2:

“`bash
ukufaka i-sudo npm -g pm2
i-pm2 start index.js –igama le-myapp
pm2 londoloza
ukuqala kwe-pm2
``

Umyalo we-`pm2 startup` uzonikeza imiyalelo eyengeziwe. Sebenzisa umyalo obonisiwe ukuze uhlelo lokusebenza lusebenze ngokuzenzakalelayo lapho iseva iqala kabusha.

-

10. (Ongakukhetha) Ukwengeza i-Database nge-RDS

Uma uhlelo lwakho lokusebenza ludinga isizindalwazi, i-RDS yenza kube lula ngoba i-AWS iphatha ama-backups, ama-patch, kanye nokukala.

Izinyathelo ezimfushane:
1. Vula isevisi ye-RDS → Dala isizindalwazi.
2. Khetha i-MySQL noma i-PostgreSQL (Imithetho ye-Free Tier iyatholakala ekucushweni okuthile).
3. Setha igama lomsebenzisi/iphasiwedi.
4. Qiniseka ukuthi i-instance ye-RDS iku-VPC efanayo ne-EC2.
5. Setha i-RDS Security Group ukuthi yamukele kuphela ukuxhumana okuvela ku-EC2 Security Group (hhayi okuvela emphakathini).

FUNDA  Ungayikhetha kanjani indawo engcono kakhulu yokubamba iwebhusayithi yomuntu siqu

Uma i-database isivele isebenza, thatha i-RDS endpoint bese uyixhuma kusuka kuhlelo lwakho lokusebenza usebenzisa i-database driver.

-

11. (Ongakukhetha) Nika amandla i-HTTPS ngeSitifiketi se-SSL

Ekukhiqizeni, i-HTTPS iyimpoqo. Indlela ejwayelekile:
– Sebenzisa isizinda (isib. esivela ku-Route 53 noma komunye umbhalisi).
– Faka i-SSL nge-Let's Encrypt (Certbot) ku-EC2.

Ngamafuphi:
“`bash
ukufaka i-sudo apt -y certbot python3-certbot-nginx
i-sudo certbot –nginx
``

Landela i-wizard ukuze ukhethe isizinda bese uvumela ukuqondisa kabusha kwe-HTTPS.

-

12. Ukuqapha kanye Nezindleko

I-AWS inikeza i-CloudWatch ukubuka izibalo ezifana ne-CPU, inethiwekhi, namalogi athile. Uzofuna futhi ukuqapha izindleko zakho ukuze ugweme ukuphuthelwa.

Amathiphu abalulekile:
– Nika amandla i-Alarm Yokukhokhisa ku-CloudWatch (isb. i-alamu uma izindleko zidlula u-$5).
- Cima i-instance uma ingasetshenziswa.
– Susa izinsiza ezingasetshenziswanga (izibhalansi zomthwalo, i-EBS, ama-IP anwebekayo, izifinyezo) ngoba zingase zenze izindleko.

-

I-Penutup

Halala! Usufundile izisekelo zokwakha uhlelo lokusebenza ku-AWS usebenzisa i-EC2, ukusebenzisa uhlelo lokusebenza lwewebhu, ukusetha i-proxy ye-Nginx reverse, nokuyenza ihlale ivuliwe nge-PM2. Uthole futhi umbono jikelele wezinsizakalo ezengeziwe ezifana ne-RDS yama-database, i-S3 yokugcina, kanye nezitifiketi ze-HTTPS zokuphepha.

Uma ufuna ukukhuphuka izinga, izinyathelo ezilandelayo zivame ukuba:
– Ukufakwa okuzenzakalelayo nge-CI/CD (Izenzo ze-GitHub + SSH, noma i-AWS CodeDeploy),
- Ukusebenzisa izitsha ezine-Docker kanye nokuhlelwa okufana ne-ECS noma i-EKS,
- Ukusebenzisa ukwakheka okungenaseva nge-Lambda + API Gateway.

Uma ungathanda, sicela ucacise uhlobo lohlelo lokusebenza oluyakhayo (i-Node.js, i-Laravel, i-Django, i-React, njll.) kanye nenhloso yalo (i-demo, ukukhiqiza, isikali esikhulu). Ngingakwazi ukwenza ngokwezifiso isifundo ngezinyathelo ezithile.

Shiya amazwana