Tutorial sa paghimo og mga aplikasyon sa Amazon Web Services (AWS)

Tutorial sa Paghimo og mga Aplikasyon sa Amazon Web Services (AWS)

Ang Amazon Web Services (AWS) usa sa pinakasikat nga cloud computing platform sa kalibutan. Gamit ang AWS, mahimo kang magtukod ug magpadagan og mga aplikasyon nga dili na kinahanglan mopalit og pisikal nga mga server, mag-set up og server space, o magmentinar sa imong kaugalingong imprastraktura. Kini nga artikulo mogiya kanimo sa paghimo og yano nga aplikasyon sa AWS gamit ang usa ka komon nga pamaagi: pag-deploy og web application gamit ang compute services (EC2), usa ka managed database (RDS) isip usa ka opsyon, ug storage ug domain kon gikinahanglan. Samtang ang mosunod nga ehemplo kay kinatibuk-an, mahimo nimo kini gamiton sa daghang klase sa mga aplikasyon.

-

1. Inisyal nga Pagpangandam: Mga Asoy ug Batakang mga Konsepto

Sa dili pa ka magsugod, siguroha nga naa kay AWS account. Daghang serbisyo sa AWS ang nagtanyag og Free Tier (libre sulod sa pipila ka limitasyon) nga perpekto para sa praktis.

Pipila ka importanteng konsepto nga kinahanglan nimong masabtan:

– Rehiyon: Lokasyon sa AWS data center (pananglitan: Singapore/ap-habagatan-sidlakan-1). Pilia ang pinakaduol nga rehiyon para sa ubos nga latency.
– IAM (Identity and Access Management): usa ka sistema sa pagdumala sa access. Labing maayong praktis: ayaw gamita ang root account para sa adlaw-adlaw nga trabaho.
– VPC (Virtual Private Cloud): usa ka virtual network diin nagpadagan ang imong mga serbisyo.
– Security Group: “firewall” aron makontrol ang mosulod/mogawas nga access gikan sa server.

Pinaagi sa pagsabot niining upat ka butang, mas sayon ​​​​​​alang kanimo ang pag-navigate sa mga sukaranan sa AWS.

-

2. Paghimo og mga IAM User ug Secure Accounts

Ang seguridad kanunay ang among prayoridad. Mag-log in sa AWS Console isip root, dayon:

1. Ablihi ang serbisyo sa IAM.
2. Paghimo og bag-ong Gumagamit (pananglitan `admin-dev`) ug susiha ang Provide user access to the AWS Management Console.
3. Paghatag og permiso: para sa praktis, mahimo nimong gamiton ang AdministratorAccess (bisan kung sa tinuod nga mga proyekto kinahanglan nga mas limitado kini).
4. I-enable ang MFA (Multi-Factor Authentication) aron madugangan ang seguridad.

Kung nahuman na, mag-log out gikan sa root ug mag-log in gamit ang bag-ong gihimo nga IAM user.

-

3. Tinoa ang Arkitektura sa Aplikasyon

Para niini nga tutorial, maghimo kita og simpleng arkitektura:

– EC2 : pagpadagan sa mga web application (pananglitan Node.js/Express, Python Flask, o PHP).
– Opsyonal nga RDS: gidumala nga MySQL/PostgreSQL database, aron ang datos matipigan nga hapsay.
– S3 (opsyonal): nagtipig og mga static nga file sama sa mga imahe, dokumento, o mga backup.
– Ruta 53 (opsyonal): pagdumala sa mga domain.
– CloudWatch : batakang pagmonitor.

BASAHA  Mga benepisyo sa paggamit sa cloud computing para sa negosyo

Kon bag-o ka pa lang nagsugod, focus sa EC2 aron modagan una ang imong mga aplikasyon.

-

4. Paghimo og EC2 Server

a) Paghimo og Instance
1. Mag-log in sa serbisyo sa EC2.
2. I-klik ang Ilunsad ang Instance.
3. Pilia ang OS, pananglitan Ubuntu Server 22.04 LTS.
4. Pilia ang klase sa instance: para sa Free Tier gamita ang `t2.micro` o `t3.micro` (depende sa availability).
5. Paghimo o pagpili og Key Pair (pananglitan, `aws-key.pem`). Ipadayon nga luwas ang `.pem` file kay kini gamiton para sa SSH.

b) Pag-configure sa Network ug Firewall
– Siguruha nga ang instance naa sa default nga VPC (para lang sa praktis).
– Ibutang ang Grupo sa Seguridad:
– Port 22 (SSH) gikan lang sa imong IP (pananglitan `My IP`)
– Port 80 (HTTP) sa `0.0.0.0/0` (publiko)
– Port 443 (HTTPS) gikan sa `0.0.0.0/0` kon sa ulahi mogamit og SSL

Mubo nga sulat: Delikado ang pag-abli sa SSH sa publiko. Kanunay nga limitahan ang mga IP address.

I-klik ang Launch ug hulata nga modagan ang instance.

-

5. Pag-login sa Server pinaagi sa SSH

Sa Windows, mahimo nimong gamiton ang WSL o PuTTY. Sa macOS/Linux, mahimo nimo kini direkta gikan sa terminal.

1. Usba ang yawe sa pagtugot:
"`bash
chmod 400 aws-key.pem
".
2. SSH ngadto sa server (gamita ang Public IPv4 gikan sa EC2):
"`bash
ssh -i aws-key.pem ubuntu@PUBLIC_IP
".

Kon malampuson, naa ka sa AWS Ubuntu server.

-

6. I-install ang Web Server ug Application Runtime

Ania ang usa ka ehemplo para sa usa ka aplikasyon sa Node.js, kay kini kaylap nga gigamit para sa modernong web.

a) I-update ug i-install ang mga dependency
"`bash
sudo apt update && sudo apt upgrade -y
sudo apt install -y curl git
".

b) I-install ang Node.js (bersyon sa LTS)
"`bash
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash –
sudo apt install -y nodejs
node -v
npm -v
".

-

7. Paghimo og Yano nga Aplikasyon

BASAHA  Unsaon pag-optimize sa SEO para sa mga website sa e-commerce

Paghimo og folder sa proyekto:

"`bash
mkdir myapp && cd myapp
npm init -y
npm install express
".

Paghimo og `index.js` nga file:

"`js"
const express = require(“express”);
const app = express();

app.get(“/”, (req, res) => {
res.send(“Kumusta! Ang imong aplikasyon nagdagan sa AWS EC2.”);
});

app.listen(3000, () => console.log(“Ang server nagdagan sa port 3000”);
".

Padagana ang aplikasyon:

"`bash
node index.js
".

Sulayi pag-access gikan sa browser:
– `http://PUBLIC_IP:3000`

Apan, ang port 3000 dili pa bukas sa Security Group. Mahimo nimo:
1) ablihi ang port 3000 sa Security Group, o
2) gamita ang reverse proxy (mas girekomenda) aron ang aplikasyon magpabilin sa internal port apan ma-access pinaagi sa port 80/443.

-

8. Paggamit sa Nginx isip Reverse Proxy (Pag-access pinaagi sa Port 80)

I-install ang Nginx:
"`bash
sudo apt install -y nginx
sudo systemctl pag-enable sa nginx
sudo systemctl magsugod sa nginx
".

I-set up ang Nginx configuration:
"`bash
sudo nano /etc/nginx/sites-available/myapp
".

Konfigurasyon sa sulod:
"`nginx"
server {
paminaw sa 80;
server_name _;

lugar / {
proxy_pass http://127.0.0.1:3000;
proxy_http_bersyon 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Koneksyon nga 'pag-upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
".

I-enable ang pag-configure:
"`bash
sudo ln -s /etc/nginx/sites-available/myapp /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
".

Karon i-access:
– `http://PUBLIC_IP/`

Ang aplikasyon nagdagan sa port 3000 apan ang publiko maka-access niini pinaagi sa port 80.

-

9. Padayon nga Pagpadagan sa mga Aplikasyon gamit ang PM2

Aron malikayan ang pag-crash sa aplikasyon kung ang SSH ma-disconnect, gamita ang PM2:

"`bash
sudo npm install -g pm2
pm2 pagsugod index.js –ngalan myapp
pm2 save
pagsugod sa pm2
".

Ang sugo nga `pm2 startup` mohatag og dugang nga mga instruksyon. Padagana ang gipakita nga sugo aron awtomatikong modagan ang aplikasyon kung mag-restart ang server.

-

10. (Opsyonal) Pagdugang og Database gamit ang RDS

Kon ang imong aplikasyon nagkinahanglan og database, ang RDS mohimo niini nga sayon ​​tungod kay ang AWS nagdumala sa mga backup, patching, ug scaling.

Mubo nga mga lakang:
1. Ablihi ang serbisyo sa RDS → Paghimo og database.
2. Pilia ang MySQL o PostgreSQL (Adunay mga lagda sa Free Tier nga magamit sa pipila ka mga configuration).
3. Ibutang ang ngalan sa tiggamit/password.
4. Siguruha nga ang RDS instance naa sa parehas nga VPC sama sa EC2.
5. Ibutang ang RDS Security Group nga modawat lang og mga koneksyon gikan sa EC2 Security Group (dili gikan sa publiko).

BASAHA  Unsaon pagdumala sa mga proyekto sa software gamit ang Agile

Kung naa na ang database, kuhaa ang RDS endpoint ug ikonektar kini gikan sa imong aplikasyon gamit ang database driver.

-

11. (Opsyonal) I-enable ang HTTPS gamit ang SSL Certificate

Para sa produksiyon, mandatory ang HTTPS. Kasagaran nga pamaagi:
– Gamita ang domain (pananglitan gikan sa Route 53 o laing registrar).
– I-install ang SSL pinaagi sa Let's Encrypt (Certbot) sa EC2.

Sa laktod nga pagkasulti:
"`bash
sudo apt install -y certbot python3-certbot-nginx
sudo certbot –nginx
".

Sunda ang wizard aron makapili og domain ug i-enable ang HTTPS redirect.

-

12. Pagmonitor ug mga Gasto

Ang AWS naghatag sa CloudWatch aron makita ang mga sukdanan sama sa CPU, network, ug piho nga mga log. Kinahanglan usab nimo nga monitoron ang imong mga gasto aron malikayan ang pagkawala niini.

Mga importanteng tip:
– I-enable ang Billing Alarm sa CloudWatch (pananglitan, alarma kon ang mga bayranan molapas sa $5).
– Patya ang instance kon dili gamiton.
– Kuhaa ang wala magamit nga mga kahinguhaan (load balancers, EBS, elastic IPs, snapshots) kay posible gihapon nga mogasto kini.

-

Pagsira

Congratulations! Nakakat-on ka na sa mga sukaranan sa paghimo og aplikasyon sa AWS gamit ang EC2, pagpadagan og web application, pag-set up og Nginx reverse proxy, ug paghimo niini nga kanunayng naka-on gamit ang PM2. Nakakuha ka usab og kinatibuk-ang panglantaw sa dugang nga mga serbisyo sama sa RDS para sa mga database, S3 para sa storage, ug HTTPS certificates para sa seguridad.

Kon gusto ka mo-level up, ang mosunod nga mga lakang kasagaran mao ang:
– Awtomatikong pag-deploy gamit ang CI/CD (GitHub Actions + SSH, o AWS CodeDeploy),
– Paggamit og mga container nga adunay Docker ug mga orchestration sama sa ECS o EKS,
– Paggamit sa serverless nga arkitektura uban sa Lambda + API Gateway.

Kon gusto nimo, palihog ipiho ang klase sa aplikasyon nga imong gihimo (Node.js, Laravel, Django, React, ug uban pa) ug ang gituyo nga katuyoan niini (demo, produksiyon, dako nga sukod). Mahimo nakong ipasibo ang tutorial gamit ang mas espesipikong mga lakang.

Pagbilin og komento