So recently I had to undertake the building of a new SFTP service to allow users access to several S3 buckets in an AWS account. In the past, we have used the AWS Transfer Family service to do this but left the default settings which created a publically available endpoint.
When creating a service straight out of the box, so to speak, it assigns a serverId to the endpoint with the remaining part of the endpoint as .server.transfer.<regionId>.amazonaws.com. This endpoint is publically available and protected by a public / private key combination and username.
The other two options available when…
In a continuation of my existing build (Prometheus in Fargate), I have been playing around with remote storage options and for the purposes of this document, I am using AWS Timestream.
Prometheus out of the box will store up to 15 days of metrics, but these are lost should the instance/server be terminated. With this in mind, it is worthwhile looking into storage options for metric data with a few options being:
I am sure there are other options available but these are the most common I found when researching. For the sake of my sanity…
Hopefully, after reading this article you should be able to setup Prometheus in a Docker container using Node Exporter, ECS exporter to scrape metrics.
In an attempt to do the above I made many mistakes and this is by no means a complete guide, only my experience in building a working Prometheus environment hosted using AWS Fargate.
For this build, I created two separate images and pushed them to two separate ECRs. The assumption is that you have already created the two repositories in AWS Elastic Container Registry called alertmanager and prometheus for the images to stored.
Create a working…
Senior Site Reliability Engineer