Cel projektu
Celem projektu było zaplanowanie i przeprowadzenie migracji środowiska serwerowego z infrastruktury lokalnej (on-premise) do Amazon Web Services (AWS).
Projekt miał na celu zwiększenie dostępności, elastyczności i bezpieczeństwa usług IT, przy jednoczesnym obniżeniu kosztów utrzymania i zwiększeniu automatyzacji.
Zakres projektu
1. Analiza i plan migracji
- Audyt istniejącej infrastruktury (serwery aplikacyjne, bazy danych, usługi webowe).
- Identyfikacja zależności i wymagań (zasoby CPU, RAM, storage, sieć).
- Wybór modelu migracji: Lift-and-Shift (re-hosting) z późniejszą optymalizacją.
- Przygotowanie architektury docelowej w AWS (VPC, subnety, routing, IAM).
Schemat migracji:
On-premise VM → Amazon EC2
MySQL → Amazon RDS
File storage → Amazon S3
Backup → AWS Backup / Glacier
Monitoring → CloudWatch + GuardDuty
2. Wdrażanie środowiska w AWS
- Utworzenie i konfiguracja VPC, Security Groups, IAM Roles.
- Wdrożenie serwerów aplikacyjnych na Amazon EC2 z użyciem Elastic Load Balancer (ALB).
- Migracja danych bazy MySQL do Amazon RDS z użyciem AWS Database Migration Service (DMS).
- Przeniesienie plików statycznych do Amazon S3 i konfiguracja wersjonowania.
- Ustawienie automatycznych kopii zapasowych i polityk rotacji.
Przykład kodu (Terraform – automatyzacja infrastruktury)
resource "aws_instance" "web_server" {
ami = "ami-08c40ec9ead489470"
instance_type = "t3.micro"
subnet_id = aws_subnet.main.id
security_groups = [aws_security_group.web_sg.id]
tags = {
Name = "web-server"
}
}
resource "aws_s3_bucket" "static_files" {
bucket = "myapp-static-files"
versioning {
enabled = true
}
tags = {
Environment = "Production"
}
}
Zabezpieczenie i monitoring
- Implementacja AWS Identity and Access Management (IAM) z zasadą „least privilege”.
- Aktywacja AWS CloudTrail, GuardDuty i Security Hub do audytu działań i detekcji incydentów.
- Konfiguracja alertów w CloudWatch oraz notyfikacji przez SNS (Simple Notification Service).
- Użycie AWS WAF (Web Application Firewall) dla ochrony warstwy aplikacyjnej.
Przykład kodu (Python – automatyczny backup do S3)
import boto3
from datetime import datetime
s3 = boto3.client('s3')
backup_file = '/tmp/db_backup.sql'
bucket_name = 'myapp-backups'
s3.upload_file(backup_file, bucket_name, f"backups/{datetime.now().strftime('%Y-%m-%d_%H-%M')}.sql")
print("[+] Backup bazy danych przesłany do S3")
Testy i optymalizacja
- Testy wydajnościowe (Load Testing) przy użyciu Apache JMeter.
- Walidacja bezpieczeństwa (IAM Policy Simulator, AWS Trusted Advisor).
- Optymalizacja kosztów: zastosowanie EC2 Auto Scaling i S3 Lifecycle Policies.
Wykorzystane technologie
- Amazon Web Services (EC2, S3, RDS, IAM, VPC, CloudWatch, CloudTrail, GuardDuty, WAF, Route 53)
- Terraform, Python (boto3), AWS CLI
- Linux (Ubuntu Server), MySQL, Nginx
- JMeter, Grafana Cloud
Rezultaty projektu
✅ Migracja aplikacji i danych bez przerw w działaniu usług.
✅ Zwiększenie dostępności systemu (99,95%) i bezpieczeństwa dzięki AWS IAM i WAF.
✅ Skrócenie czasu tworzenia środowisk z kilku godzin do kilku minut (Terraform).
✅ Redukcja kosztów utrzymania o ok. 25% po 3 miesiącach.
✅ Wdrożony system backupu, logowania i monitoringu w chmurze.
Wnioski i dalszy rozwój
Projekt pokazał praktyczne aspekty Cloud Engineeringu i DevSecOps, łącząc automatyzację, bezpieczeństwo i optymalizację kosztów.
W kolejnych etapach planuję:
- wdrożenie CI/CD (GitHub Actions + AWS CodePipeline),
- konteneryzację aplikacji (ECS / EKS),
- integrację z narzędziami bezpieczeństwa (AWS Security Hub, OpenSCAP).
Eng.
Cloud Infrastructure Migration (AWS)
Lab Project – Cloud Engineering / DevSecOps
The goal of this project was to plan and execute a migration from on-premise servers to Amazon Web Services (AWS).
The process included architecture design, Terraform automation, database migration, and infrastructure security setup.
Key steps:
- Designed AWS VPC, subnets, and security groups
- Migrated databases using AWS DMS
- Automated backups to S3 using Python (boto3)
- Implemented monitoring (CloudWatch, GuardDuty)
- Tested performance and optimized costs
Technologies:
AWS (EC2, S3, RDS, IAM, CloudTrail), Terraform, Python, Nginx, Linux, MySQL
Result:
High-availability cloud infrastructure, automated backups, real-time monitoring, and reduced operational costs.