programming - LeetCode: Top 2% rating - https://leetcode.com/u/k-zakisan - my new challenges in this year - speak at a tech events - LT - Conference - improve my English skill - ELSA speak(App) - join English events
- containerize PHP/Laravel web application - running on EC2 server for four years - migrate the server to ECS - my first SRE-like work - through the project, I became SRE
Could you upgrade PHP/Laravel? EOL is coming… (Upgrading PHP means changing middleware) (If something happen wrong it would be hard to revert middleware on EC2) (I don't want to do it...) No, I …(Wait!)
can containerize, it will make changing the middleware easier.) Before upgrading PHP, Why don't we containerize to ECS? It would be hard to revert middleware on EC2. That’s true. Hmm, go ahead. (start the containerized project)
on ECS in a testing environment I understand ECS and AWS through this part - build infra to use Terraform - make dockerfile and push dockerimage to ECR check functions to use web brower
on local environment on EC2 fixing function list - login session - local file → ElastiCache(Redis) - export temporary file storage location - local file → S3 - GCP credential source - local file → ssm parameter - mail service - postfix → sendgrid api
- build ECS for stg/prod enviroment - make CD to use GitHub Actions - use OIDC to get credential - update ECR and restart ECS task - Changed the target group on ALB from EC2 to ECS when it released - migrate batch to use CloudWatch Events - used cron jobs on EC2 - override the CMD command in Dockerfile with 'php artisan' - chose CW Events because the similar way to cron jobs on EC2
not difficult to understand the basics knowledge of infra(AWS) But no functional requestment is a little difficult, because I have no knowledge for them😥 - logs - how to manage and stock some types of logs (to use Fluent Bit) ? - alert conditions is Good? - security - response header include dangerous info? - when we use ECS Exec, how to manage logs of who executed which commands?