Oktatóanyag alkalmazások létrehozásáról az Amazon Web Services (AWS) rendszeren

Oktatóanyag alkalmazások létrehozásához az Amazon Web Services (AWS) rendszeren

Az Amazon Web Services (AWS) a világ egyik legnépszerűbb felhőalapú számítástechnikai platformja. Az AWS segítségével alkalmazásokat hozhat létre és futtathat fizikai szerverek vásárlása, szerverterület beállítása vagy saját infrastruktúra fenntartása nélkül. Ez a cikk végigvezeti Önt egy egyszerű alkalmazás létrehozásán az AWS-en egy elterjedt megközelítéssel: webes alkalmazás telepítése számítási szolgáltatások (EC2), opcióként felügyelt adatbázis (RDS), valamint szükség esetén tárhely és domain használatával. Bár a következő példa általános, sokféle alkalmazásra alkalmazható.

-

1. Előkészületek: Számítások és alapfogalmak

Mielőtt elkezdenéd, győződj meg róla, hogy van AWS fiókod. Számos AWS szolgáltatás kínál ingyenes csomagot (bizonyos korlátok között ingyenes), amely tökéletes a gyakorláshoz.

Néhány fontos fogalom, amit meg kell értened:

– Régió: Az AWS adatközpont helye (például: Singapore/ap-southeast-1). Az alacsony késleltetés érdekében válassza a legközelebbi régiót.
– IAM (Identity and Access Management): hozzáférés-kezelő rendszer. Ajánlott gyakorlat: ne használj root fiókot a napi munkához.
– VPC (Virtual Private Cloud): egy virtuális hálózat, ahol a szolgáltatásai futnak.
– Biztonsági csoport: „tűzfal” a szerverről bejövő/kimenő hozzáférések szabályozására.

Ha megérted ezt a négy dolgot, sokkal könnyebb lesz eligazodni az AWS alapjaiban.

-

2. IAM-felhasználók létrehozása és fiókok biztosítása

A biztonság mindig az elsődleges prioritásunk. Jelentkezzen be az AWS konzolba root felhasználóként, majd:

1. Nyissa meg az IAM szolgáltatást.
2. Hozzon létre egy új felhasználót (pl. `admin-dev`), és jelölje be a Felhasználói hozzáférés biztosítása az AWS Management Console-hoz lehetőséget.
3. Engedély megadása: gyakorlásképpen használhatod az AdministratorAccess hozzáférést (bár a valós projektekben ennek korlátozottabbnak kell lennie).
4. Engedélyezze az MFA-t (többtényezős hitelesítést) a biztonság növelése érdekében.

Ha kész, jelentkezz ki rootként, és jelentkezz be az újonnan létrehozott IAM felhasználóval.

-

3. Az alkalmazásarchitektúra meghatározása

Ebben az oktatóanyagban egy egyszerű architektúrát fogunk felépíteni:

– EC2: webes alkalmazások futtatása (pl. Node.js/Express, Python Flask vagy PHP).
– Opcionális RDS: felügyelt MySQL/PostgreSQL adatbázis, így az adatok rendezetten tárolódnak.
– S3 (opcionális): statikus fájlokat, például képeket, dokumentumokat vagy biztonsági mentéseket tárol.
– 53-as útvonal (opcionális): domainek kezelése.
– CloudWatch: alapvető monitorozás.

OLVAS  A virtualizáció és a konténerizáció közötti különbség

Ha most kezded, először az EC2-re koncentrálj az alkalmazásaid futtatásához.

-

4. Hozz létre egy EC2 szervert

a) Példány létrehozása
1. Jelentkezzen be az EC2 szolgáltatásba.
2. Kattintson a Példány indítása gombra.
3. Válasszon operációs rendszert, például Ubuntu Server 22.04 LTS.
4. Válassza ki a példány típusát: az ingyenes szinthez használja a `t2.micro` vagy a `t3.micro` fájlt (elérhetőségtől függően).
5. Hozz létre vagy válassz ki egy kulcspárt (pl. `aws-key.pem`). A `.pem` fájlt őrizd meg biztonságos helyen, mivel azt fogod használni SSH-hoz.

b) Hálózati és tűzfalkonfiguráció
– Győződjön meg róla, hogy a példány az alapértelmezett VPC-ben van (csak gyakorlásképpen).
– Biztonsági csoport beállítása:
– Csak a saját IP-címedről (pl. `Saját IP`) 22-es porton (SSH)
– 80-as port (HTTP) `0.0.0.0/0` (nyilvános)
– 443-as port (HTTPS) a `0.0.0.0/0`-ról, ha később SSL-t használunk

Megjegyzés: Az SSH nyilvános megnyitása kockázatos. Mindig korlátozza az IP-címeket.

Kattintson az Indítás gombra, és várja meg, amíg a példány fut.

-

5. Jelentkezzen be a szerverre SSH-n keresztül

Windows rendszeren használhatod a WSL-t vagy a PuTTY-t. macOS/Linux rendszeren ezt közvetlenül a terminálból teheted meg.

1. Engedélykulcs módosítása:
„Bash
chmod 400 aws-key.pem
""
2. SSH-n keresztül a szerverhez (használd az EC2 nyilvános IPv4-jét):
„Bash
ssh -i aws-key.pem ubuntu@NYILVÁNOS_IP
""

Ha sikeres, akkor az AWS Ubuntu szerveren vagy.

-

6. Telepítse a webkiszolgálót és az alkalmazás futtatókörnyezetét

Íme egy példa egy Node.js alkalmazásra, ahogyan azt széles körben használják a modern weben.

a) Függőségek frissítése és telepítése
„Bash
sudo apt update && sudo apt upgrade -y
sudo apt install -y curl git
""

b) Telepítse a Node.js-t (LTS verzió)
„Bash
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash –
sudo apt install -y nodejs
csomópont -v
npm -v
""

-

7. Hozz létre egy egyszerű alkalmazást

OLVAS  Oktatóanyag virtuális gép létrehozásához VirtualBoxban és VMware-ben

Hozz létre egy projektmappát:

„Bash
mkdir alkalmazásom && cd alkalmazásom
npm init -y
npm install express
""

Hozz létre egy `index.js` fájlt:

„js”
constant express = require(„express”);
const app = express();

app.get(“/”, (kérés, válasz) => {
res.send(“Helló! Az alkalmazásod AWS EC2-n fut.”);
});

app.listen(3000, () => console.log(“A 3000-es porton futó szerver”));
""

Futtassa az alkalmazást:

„Bash
csomópont index.js
""

Próbáld meg böngészőből elérni:
– `http://PUBLIC_IP:3000`

A 3000-es port azonban jelenleg nincs nyitva a biztonsági csoportban. A következőket teheti:
1) nyissa meg a 3000-es portot a biztonsági csoportban, vagy
2) használjon fordított proxyt (ez ajánlottabb), hogy az alkalmazás a belső porton maradjon, de a 80/443-as porton keresztül elérhető legyen.

-

8. Nginx használata fordított proxyként (hozzáférés a 80-as porton keresztül)

Az Nginx telepítése:
„Bash
sudo apt install -y nginx
sudo systemctl enable nginx
sudo systemctl start nginx
""

Nginx konfiguráció beállítása:
„Bash
sudo nano /etc/nginx/sites-available/myapp
""

Konfigurációs tartalom:
„nginx”
szerver {
hallgatni 80;
szerver név _;

Hely / {
proxy_pass http://127.0.0.1:3000;
proxy_http_verzió 1.1;
proxy_set_header Frissítés $http_upgrade;
proxy_set_header Kapcsolat 'frissítés';
proxy_set_header Host $ host;
proxy_cache_bypass $http_upgrade;
}
}
""

Konfiguráció engedélyezése:
„Bash
sudo ln -s /etc/nginx/sites-available/myapp /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl újratöltés nginx
""

Most hozzáférés:
– `http://NYILVÁNOS_IP/`

Az alkalmazás a 3000-es porton fut, de a nyilvánosság a 80-as porton keresztül férhet hozzá.

-

9. Alkalmazások folyamatos futtatása PM2-vel

Az alkalmazás SSH-kapcsolat leválasztásakor történő összeomlásának megakadályozásához használja a PM2 parancsot:

„Bash
sudo npm install -g pm2
pm2 start index.js –név az alkalmazásom
pm2 mentés
pm2 indítás
""

A `pm2 startup` parancs további utasításokat biztosít. Futtassa a megjelenített parancsot, hogy az alkalmazás automatikusan elinduljon a szerver újraindításakor.

-

10. (Opcionális) Adatbázis hozzáadása RDS-sel

Ha az alkalmazásod adatbázist igényel, az RDS megkönnyíti a dolgodat, mivel az AWS kezeli a biztonsági mentéseket, a javításokat és a skálázást.

Rövid lépések:
1. Nyissa meg az RDS szolgáltatást → Adatbázis létrehozása.
2. Válassza a MySQL vagy a PostgreSQL lehetőséget (bizonyos konfigurációk esetén ingyenes szintű szabályok érhetők el).
3. Felhasználónév/jelszó beállítása.
4. Győződjön meg arról, hogy az RDS példány ugyanabban a VPC-ben van, mint az EC2.
5. Állítsa be az RDS biztonsági csoportot úgy, hogy csak az EC2 biztonsági csoporttól fogadjon kapcsolatokat (a nyilvánosaktól ne).

OLVAS  Hogyan válasszuk ki a legjobb tárhelyet egy személyes weboldalhoz

Miután az adatbázis éles, csatlakozzon az RDS-végponthoz az alkalmazásból az adatbázis-illesztőprogram használatával.

-

11. (Opcionális) HTTPS engedélyezése SSL tanúsítvánnyal

Éles környezetben a HTTPS kötelező. Tipikus módszer:
– Használjon domaint (pl. az 53-as úttól vagy egy másik regisztrátortól).
– Telepítsd az SSL-t a Let's Encrypt (Certbot) segítségével az EC2-n.

Röviden:
„Bash
sudo apt install -y certbot python3-certbot-nginx
sudo certbot –nginx
""

Kövesse a varázsló utasításait egy domain kiválasztásához és a HTTPS átirányítás engedélyezéséhez.

-

12. Monitoring és költségek

Az AWS a CloudWatch segítségével olyan mérőszámokat tekinthet meg, mint a CPU, a hálózat és az egyes naplók. A költségeket is érdemes figyelemmel kísérni, hogy elkerülje a lemaradást.

Fontos tippek:
– Számlázási riasztás engedélyezése a CloudWatch-ban (pl. riasztás, ha a díjak meghaladják az 5 dollárt).
– Kapcsolja ki a példányt, ha nem használja.
– Távolítsa el a nem használt erőforrásokat (terheléselosztók, EBS, rugalmas IP-címek, pillanatképek), mivel azok továbbra is költségeket okozhatnak.

-

Záró

Gratulálunk! Megtanultad az AWS-en EC2 használatával történő alkalmazásfejlesztés, webes alkalmazás futtatásának, Nginx fordított proxy beállításának és PM2 segítségével történő always-on bekapcsolásának alapjait. Áttekintést kaptál a további szolgáltatásokról is, mint például az RDS az adatbázisokhoz, az S3 a tároláshoz és a HTTPS tanúsítványok a biztonság érdekében.

Ha szintet szeretnél lépni, a következő lépések általában a következők:
– Automatizált telepítés CI/CD segítségével (GitHub Actions + SSH, vagy AWS CodeDeploy),
– Konténerek használata Dockerrel és olyan vezénylésekkel, mint az ECS vagy az EKS,
– Kiszolgáló nélküli architektúra használata Lambda + API Gateway segítségével.

Ha szeretnéd, kérlek, add meg az általad fejlesztett alkalmazás típusát (Node.js, Laravel, Django, React stb.) és a tervezett célját (demó, éles, nagyméretű). A bemutatót személyre szabhatom konkrétabb lépésekkel.

Hozzászólás írása