Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
vijayansarathy authored Mar 1, 2021
1 parent 3a6092e commit 43d8423
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,16 +16,16 @@ At a high level, we will be following the steps outlined below for this solution
Deploy application services to an Amazon ECS and register them with AWS Cloud Map
</li>
<li>
Deploy Prometheus server to Amazon ECS, configure service discovery and send metrics data to Amazon Managed Service for Prometheus
Deploy Prometheus server to Amazon ECS, configure service discovery and send metrics data to Amazon Managed Service for Prometheus (AMP)
</li>
<li>
Visualize metrics data using Amazon Managed Service for Grafana
Visualize metrics data using Amazon Managed Service for Grafana (AMG)
</li>
</ul>

### Deploy

Make sure you have the latest version of AWS CLI that provides support for Amazon Managed Service for Prometheus. The deployment requires an ECS cluster. For deploying the Prometheus Node Exporter, a cluster with EC2 instances is required. All deployment artifacts are under the [deploy](https://github.com/aws-samples/prometheus-for-ecs/tree/main/deploy) directory. The deployment comprises the following components:
Make sure you have the latest version of AWS CLI that provides support for AMP. The deployment requires an ECS cluster. For deploying the Prometheus Node Exporter, a cluster with EC2 instances is required. All deployment artifacts are under the [deploy](https://github.com/aws-samples/prometheus-for-ecs/tree/main/deploy) directory. The deployment comprises the following components:
- An ECS task comprising the Prometheus server, AWS Sig4 proxy and the service discovery application containers

- A mock web application that is instrumented with [Prometheus Go client library](https://github.com/prometheus/client_golang) and exposes an HTTP endpoint */work*. The application has an internal load generator that sends client requests to the HTTP endpoint. The service exposes a [Counter](https://prometheus.io/docs/concepts/metric_types/#counter) named *http_requests_total* and a [Histogram](https://prometheus.io/docs/concepts/metric_types/#histogram) named *request_durtaion_milliseconds*
Expand Down Expand Up @@ -56,7 +56,7 @@ Create a service discovery namespace and service registries under AWS Cloud Map
source cloudmap.sh
```

Create a workspace under Amazon Managed Service for Prometheus (AMP) for ingesting Prometheus metrics scraped from ECS services.
Create a workspace under AMP for ingesting Prometheus metrics scraped from ECS services.
```
source amp.sh
```
Expand All @@ -75,7 +75,7 @@ Launch the ECS services using the task definitions created above.
source services.sh
```

Once the services are all up and running, the AMP workspace will start ingesting metrics collected by the Prometheus server from the web application. Use Amazon Managed Service for Grafana to query and visualize the metrics ingested into AMP. You may use the following PromQL queries to visualize the metrics collected from the web application and Prometheus Node Exporter
Once the services are all up and running, the AMP workspace will start ingesting metrics collected by the Prometheus server from the web application. Use AMG to query and visualize the metrics ingested into AMP. You may use the following PromQL queries to visualize the metrics collected from the web application and Prometheus Node Exporter
- HTTP request rate: *sum(rate(http_requests_total[5m]))*
- Average response latency: *sum(rate(request_durtaion_milliseconds_sum[5m])) / sum(rate(request_durtaion_milliseconds_count[5m]))*
- Average CPU usage: *100 - (avg by (instance) (rate(node_cpu_seconds_total{mode="idle"}[1m])) * 100)*
Expand Down

0 comments on commit 43d8423

Please sign in to comment.