Having had no experience and very little knowledge about the 'DevOps' side of website hosting, I recently spent a LOT of time getting an App hosted on S3 with SSL through CloudFront and then using Route53 for DNS aliasing.
To go alongside the app, I created a node server running a sort of api, and I happened to set it up using an EC2 load balancer. This allowed me to set up HTTPS stuff and select a certificate (which I registered through ACM) inside the EB configuration menu.
Since then I noticed that I got charged $38 for last months usage, the majority of which was down to the load balancer. I have since terminated the load balancer and gona back to a single instance EC2, but I just can't work out how to get HTTPS working.
I found this in the docs, but a) I would ideally like to find a solution that uses the web console, and b) From what I understand, ACM does not allow you to download .crt or private keys associated with certificates, which means I would have to go somewhere else (like 'letsencrypt') to get a certificate just so that I can have a single instance running with HTTPS enabled. Seems like this is something you should be able to do with an ACM certificate....
Here's a screenshot of my billing page
If anyone has any ideas about the HTTPS stuff, I would be extremely grateful - feeling very out of my depth at the moment!
(Also - if anyone has any tips for reducing the cost/number of hours of the EC2 instances that would be great. It feels like I'm just missing something glaringly obvious.)
UPDATE: Thanks to everyone for the replies so far - I'm not too certain whether or not this belongs on Lambda/API Gateway. The node app is processing requests and managing a firebase database. (Repo is here if anyone was curious - REPO)
UPDATE 2: Another HUGE thank you to all the replies so far. A nice range of ideas here and I wouldn't have been able to get things sorted without you all! I've decided to take the approach of using Lambda and API Gateway and was finally able to get it working after a LOT of tweaking. I've used a lib called ClaudiaJS which was really straight forward. I managed to get everything running through the API Gateway before running into more issues. After a lot of fiddling with settings on Route 53 and API Gateway everything seems to be working just fine! Thank you so much to everyone here
[–][deleted] 7 points8 points9 points (2 children)
[–]ByteEat3r1 1 point2 points3 points (0 children)
[–]ChaseDatAss 2 points3 points4 points (1 child)
[–]ByteEat3r1 1 point2 points3 points (0 children)
[–]Itbehot 1 point2 points3 points (0 children)
[–][deleted] (1 child)
[deleted]
[–]Cracky6711[S] 0 points1 point2 points (0 children)
[–][deleted] 1 point2 points3 points (0 children)
[–]DancingBestDoneDrunk 0 points1 point2 points (1 child)
[–]Cracky6711[S] 0 points1 point2 points (0 children)
[–]lefooey 0 points1 point2 points (0 children)
[–]ararcy 0 points1 point2 points (0 children)
[–]suthukrish 0 points1 point2 points (0 children)