grofers.rds-alarms

Status budowy

Alarmy RDS

Tworzy alarmy ostrzegawcze i krytyczne dla instancji RDS w Amazon CloudWatch. Aby uzyskać więcej informacji, zapoznaj się z artykułem na blogu.

:boom: Przetestowane w boju w Grofers

Wymagania

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "Stmt19471460522000",
            "Effect": "Allow",
            "Action": [
                "cloudwatch:DeleteAlarms",
                "cloudwatch:DescribeAlarms",
                "cloudwatch:PutMetricAlarm"
            ],
            "Resource": [
                "*"
            ]
        },
        {
            "Sid": "Stmt1947940274000",
            "Effect": "Allow",
            "Action": [
                "rds:DescribeDBInstances"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}

Instalacja

Aby zainstalować, po prostu uruchom

$ ansible-galaxy install grofers.rds-alarms

Zmienne roli

  • rds_alarms_region - region AWS (Wymagane)
  • rds_alarms_common_action_list - Lista ARN tematów w AWS SNS
  • rds_alarms_period - Czas (w sekundach) pomiędzy ewaluacją metryk
  • rds_alarms_evaluation_periods - Liczba razy, w których metryka jest oceniana przed ostatecznym obliczeniem
  • rds_alarms_common_action_list - Zawsze uwzględniaj te akcje alarmowe
  • rds_alarms_warning_threshold - Próg ostrzeżenia (domyślnie - 75%)
  • rds_alarms_critical_threshold - Próg krytyczny (domyślnie - 90%)
  • rds_alarms_warning_cpu_credits_threshold - Próg zasobów CPU (domyślnie - 30)
  • rds_alarms_critical_cpu_credits_threshold - Próg zasobów CPU (domyślnie - 15)
  • rds_alarms_db_instances - Słownik w następującym formacie:
rds_alarms_db_instances:
  <identyfikator-instancji-rds>:
    warning_db_connections_threshold: 100
    critical_db_connections_threshold: 200
    warning_burst_balance_threshold: 100
    critical_burst_balance_threshold: 200
    alarm_action_list: ["arn:aws:sns:us-east-1:9783248248:MYALARM"]
    critical_threshold: 90 # Opcjonalne
    warning_threshold: 75 # Opcjonalne
    credit_warning_threshold: 30 # Opcjonalne
    credit_critical_threshold: 15 # Opcjonalne
    replica_lag_threshold: 1800 # Wymagane tylko dla replik. Jednostki w sekundach

Konwencje

Format nazwy alarmów tworzonych w Amazon CloudWatch to: rds-<nazwa_instancji>-<nazwa_metryki>-<typ_alarmu>.

Na przykład, alarm ostrzegawczy dla CPU dla instancji o identyfikatorze my-rds-instance będzie stworzony jako rds-my-rds-instance-cpu-warning.

Przykład playbooka

Ten playbook stworzy alarmy dla my-rds-instance-identifier z domyślnymi progami. Natomiast alarmy utworzone dla my-replica-rds-instance-identifier będą miały próg ostrzegawczy wynoszący 80%, a próg krytyczny będzie ustalony na domyślną wartość (90%). Jeśli instancja jest repliką, zostanie również utworzony alarm dla opóźnienia repliki. Dla każdej instancji t2 alarmy są również tworzone dla pozostałych zasobów CPU.

- hosts: localhost
  connection: local
  vars:
    rds_alarms_common_action_list:
      - "arn:aws:sns:us-east-1:9783248248:ALARMS"
    rds_alarms_period: 60
    rds_alarms_evaluation_periods: 2
    rds_alarms_region: us-east-1
    rds_alarms_warning_threshold: 70
    rds_alarms_critical_threshold: 90
    rds_alarms_warning_cpu_credits_threshold: 60
    rds_alarms_critical_cpu_credits_threshold: 30
    rds_alarms_db_instances:
      my-rds-instance-identifier: # to użyje domyślnych wartości
        warning_db_connections_threshold: 100
        critical_db_connections_threshold: 200
        alarm_action_list: ["arn:aws:sns:us-east-1:9783248248:MYALARM"]
      my-replica-rds-instance-identifier:
        warning_threshold: 80
        warning_db_connections_threshold: 100
        critical_db_connections_threshold: 200
        alarm_action_list: ["arn:aws:sns:us-east-1:9783248248:MYALARM"]
        credit_warning_threshold: 20
        credit_critical_threshold: 10
        replica_lag_threshold: 1800
  roles:
    - rds-alarms

Ograniczenia

Musisz tworzyć wiele playbooków dla różnych regionów.

Licencja

Licencja MIT

O projekcie

Creates Cloudwatch Alarms for RDS instances

Zainstaluj
ansible-galaxy install grofers.rds-alarms
Licencja
mit
Pobrania
506
Właściciel