By using AWS re:Post, you agree to the AWS re:Post Terms of Use

Ensuring Optimal Performance and Readiness for My Website

0

Hello you all! I have some questions to ask so I can ensure everything is set up properly. *I have researched on the web about all subjects and am here to ensure.

  1. How can I thoroughly review all servers and services to confirm that the servers and databases can support as many users as needed? I'm using EC2, t3.micro (Just 1, I guess I should get more for autoscaling? I would appreciate understanding how), default VPC, and RDS running MariaDB. I don't currently have any Auto Scaling Groups.

  2. What are the best practices for ensuring automatic scaling to meet demand spikes without compromising performance? The website should be up and running 24/7 to provide the service to the users.

  3. How can I verify that all permissions and SSL certificates are properly configured to ensure full control over everything my website and plugin require?

  4. How can I make sure my website and DB have decent security? I don't store any credit card data but it would be nice if no one would play with my data.

  5. What should I learn to be able to manage it all and flawlessly do it again in the future?

  6. Can I switch the t3.micro to a stronger one in the future? if yes, will the website users feel the switch? will my server be unavailable for some time?

  7. So the RDS is a separate DB from EC2, So can I/Should I change it in the future to a better one? All I ask is to be able to support a large number of users in the future even if I'm small now.

  8. Now I'm on the free tire, Can you simply explain to me what is included? Should I buy any services right now?

  9. Can I see the cost of the service in some live view? if in 40 days for example I want to know how much will I be charged up to that point, where can I do it? Is there a calculator to simulate the services I'll buy in the future how much will I pay?

1 Answer
3

Thank you for your comprehensive set of questions about optimizing your website's performance and security on AWS. I'll address each of your points:

  1. To thoroughly review your servers and services, you should implement load testing and performance monitoring. With your current setup (single t3.micro EC2 instance and RDS MariaDB), you may face limitations in supporting a large number of users. For better scalability, consider setting up an Auto Scaling group with multiple EC2 instances across different Availability Zones.

  2. Best practices for automatic scaling include:

    • Set up Auto Scaling groups for your EC2 instances
    • Use Elastic Load Balancing to distribute traffic
    • Configure scaling policies based on metrics like CPU utilization or request count
    • Implement Amazon CloudWatch for monitoring and alerting
    • Consider using AWS Lambda for serverless scaling of certain functions
  3. To verify permissions and SSL certificates:

    • Use AWS Identity and Access Management (IAM) to manage access
    • Implement least privilege principle for all roles and users
    • Use AWS Certificate Manager for SSL/TLS certificate management
    • Regularly audit and rotate access keys and credentials
  4. To enhance security:

    • Use Security Groups and Network ACLs to control traffic
    • Enable AWS WAF (Web Application Firewall) to protect against common web exploits
    • Implement encryption at rest for your RDS instance
    • Regularly patch and update your systems
    • Use AWS GuardDuty for threat detection
  5. To manage everything effectively, focus on learning:

    • AWS fundamentals and best practices
    • Infrastructure as Code (e.g., AWS CloudFormation or Terraform)
    • Monitoring and logging with CloudWatch and AWS CloudTrail
    • DevOps practices for continuous integration and deployment
  6. Yes, you can switch your t3.micro to a stronger instance type. This can be done with minimal downtime by using Elastic IP addresses and creating a new instance with the desired type, then switching the Elastic IP to the new instance.

  7. Yes, you can and should upgrade your RDS instance as your needs grow. Amazon RDS allows you to scale vertically (increase instance size) and horizontally (read replicas).

  8. The AWS Free Tier includes limited usage of various AWS services for 12 months. For your current setup, you're likely using EC2 and RDS free tier offerings. As your needs grow, you may need to start paying for additional services or increased usage.

  9. To monitor and forecast costs:

    • Use the AWS Cost Explorer for detailed cost breakdowns and forecasts
    • Set up AWS Budgets to track spending and receive alerts
    • The AWS Pricing Calculator can help estimate costs for future service usage

Remember to regularly review your architecture and adjust as your website grows. Implement proper monitoring, use Auto Scaling, and follow AWS best practices to ensure optimal performance and security as your user base expands.
Sources
PERF 5. How do your organizational practices and culture contribute to performance efficiency in your workload? - AWS Well-Architected Framework
REL12-BP03 Test scalability and performance requirements - Reliability Pillar
Security in Application Auto Scaling - Application Auto Scaling

profile picture
answered 17 days ago
profile picture
EXPERT
reviewed 17 days ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions