AWS CloudWatch Application Insights 使用的 Systems Manager (SSM) 套件 - Amazon CloudWatch

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

AWS CloudWatch Application Insights 使用的 Systems Manager (SSM) 套件

本節中列出的套件由 Application Insights 使用,並且可以透過 AWS Systems Manager Distributor 獨立管理和部署。如需SSM經銷商的詳細資訊,請參閱 AWS Systems Manager 使用者指南中的 Systems Manager 經銷商AWS

AWSObservabilityExporter-JMXExporterInstallAndConfigure

您可以從 Prometheus JMX Exporter for Application Insights 擷取工作負載特定的 Java 指標,以設定和監控警示。在 Application Insights 主控台的管理監控頁面上,從JAVA應用程式層下拉式清單中選取應用程式。然後在 JAVA Prometheus 匯出器組態 下,選取您的收集方法JMX連接埠號碼

若要使用 AWS Systems Manager Distributor 來封裝、安裝和設定 AWS提供的 Prometheus JMX 匯出工具套件,獨立於 Application Insights,請完成下列步驟。

使用 Prometheus JMX 匯出工具SSM套件的先決條件
  • SSM 已安裝代理程式 2.3.1550.0 版或更新版本

  • 已設定 JAVA_HOME 環境變數

安裝和設定 AWSObservabilityExporter-JMXExporterInstallAndConfigure 套件

AWSObservabilityExporter-JMXExporterInstallAndConfigure 套件是 SSM Distributor 套件,可用來安裝和設定 Prometheus JMX Exporter 。當 Prometheus JMX 匯出者傳送 Java 指標時,可以設定 CloudWatch 代理程式來擷取 CloudWatch 服務的指標。

  1. 根據您的偏好設定,準備位於 Prometheus 儲存庫中的 Prometheus JMX 匯出器YAML組態檔案。 GitHub 使用範例組態和選項描述來引導您。

  2. 將編碼為 Base64 的 Prometheus JMX 匯出器YAML組態檔案複製到SSM參數存放區 中的新SSM參數。

  3. 導覽至 SSM Distributor 主控台,並開啟 Amazon 擁有標籤。選取 AWSObservabilityExporter-JMXExporterInstallAndConfigure ,然後選擇安裝一次

  4. 使用下列內容取代「其他引數」,更新您在第一個步驟中建立的SSM參數:

    { "SSM_EXPORTER_CONFIGURATION": "{{ssm:<SSM_PARAMETER_STORE_NAME>}}", "SSM_EXPOSITION_PORT": "9404" }
    注意

    連接埠 9404 是用來傳送 Prometheus JMX指標的預設連接埠。您可以更新此連接埠。

範例:設定 CloudWatch 代理程式以擷取 Java 指標
  1. 安裝 Prometheus JMX 匯出工具,如上一個程序所述。然後透過檢查連接埠狀態來驗證它是否正確安裝在您的執行個體上。

    在 Windows 執行個體上成功安裝範例

    PS C:\> curl http://localhost:9404 (http://localhost:9404/) StatusCode : 200 StatusDescription : OK Content : # HELP jvm_info JVM version info

    在 Linux 執行個體上成功安裝範例

    $ curl localhost:9404 # HELP jmx_config_reload_failure_total Number of times configuration have failed to be reloaded. # TYPE jmx_config_reload_failure_total counter jmx_config_reload_failure_total 0.0
  2. 建立 Prometheus 服務探索YAML檔案。下列範例服務探索檔案會執行下列操作:

    • 將 Prometheus JMX 匯出器主機連接埠指定為 localhost: 9404

    • 將標籤 (ApplicationComponentNameInstanceId) 附加至指標,可設定為 CloudWatch 指標維度。

    $ cat prometheus_sd_jmx.yaml - targets: - 127.0.0.1:9404 labels: Application: myApp ComponentName: arn:aws:elasticloadbalancing:us-east-1:123456789012:loadbalancer/app/sampl-Appli-MMZW8E3GH4H2/aac36d7fea2a6e5b InstanceId: i-12345678901234567
  3. 建立 Prometheus JMX 匯出器組態YAML檔案。以下範例組態檔案會記錄以下內容:

    • 指標擷取任務間隔和逾時期間。

    • 指標擷取任務 (jmxsap),也稱為抓取,其中包括任務名稱、一次傳回的時間序列上限,以及服務探索檔案路徑。

    $ cat prometheus.yaml global: scrape_interval: 1m scrape_timeout: 10s scrape_configs: - job_name: jmx sample_limit: 10000 file_sd_configs: - files: ["/tmp/prometheus_sd_jmx.yaml"] - job_name: sap sample_limit: 10000 file_sd_configs: - files: ["/tmp/prometheus_sd_sap.yaml"]
  4. 確認 CloudWatch 代理程式已安裝在您的 Amazon EC2執行個體上,且版本為 1.247346.1b249759 或更新版本。若要在您的 CloudWatchEC2執行個體上安裝代理程式,請參閱安裝 CloudWatch 代理程式 。若要驗證版本,請參閱尋找 CloudWatch 客服人員版本 的相關資訊

  5. 設定 CloudWatch 代理程式。如需如何設定 CloudWatch 代理程式組態檔案的詳細資訊,請參閱手動建立或編輯 CloudWatch 代理程式組態檔案 。下列 CloudWatch 客服人員組態檔案範例會執行下列動作:

    • 指定 Prometheus JMX 匯出器組態檔案路徑。

    • 指定要發佈EMF指標日誌的目標日誌群組。

    • 為每個指標名稱指定兩組維度。

    • 傳送 8 個 (4 個指標名稱 * 每個指標名稱 2 組維度) CloudWatch 指標。

    { "logs":{ "logs_collected":{ .... }, "metrics_collected":{ "prometheus":{ "cluster_name":"prometheus-test-cluster", "log_group_name":"prometheus-test", "prometheus_config_path":"/tmp/prometheus.yaml", "emf_processor":{ "metric_declaration_dedup":true, "metric_namespace":"CWAgent", "metric_unit":{ "jvm_threads_current":"Count", "jvm_gc_collection_seconds_sum":"Second", "jvm_memory_bytes_used":"Bytes" }, "metric_declaration":[ { "source_labels":[ "job" ], "label_matcher":"^jmx$", "dimensions":[ [ "InstanceId", "ComponentName" ], [ "ComponentName" ] ], "metric_selectors":[ "^java_lang_threading_threadcount$", "^java_lang_memory_heapmemoryusage_used$", "^java_lang_memory_heapmemoryusage_committed$" ] } ] } } } }, "metrics":{ .... } }

AWSObservabilityExporter-SAP-HANADBExporterInstallAndConfigure

您可以從適用於 Application Insights 的 Prometheus HANA 資料庫匯出器擷取工作負載特定的SAPHANA指標,以設定和監控警示。如需詳細資訊,請參閱本指南中的 設定SAPHANA資料庫以進行監控

若要使用 AWS Systems Manager Distributor 來封裝、安裝和設定 AWS提供的 Prometheus HANA 資料庫匯出器套件,獨立於 Application Insights,請完成下列步驟。

使用 Prometheus HANA 資料庫匯出器SSM套件的先決條件
  • SSM 已安裝代理程式 2.3.1550.0 版或更新版本

  • SAP HANA 資料庫

  • Linux 作業系統 (SUSE Linux、 RedHat Linux)

  • 具有SAPHANA資料庫監控憑證的秘密,使用 AWS Secrets Manager。使用索引鍵/值配對格式建立機密、指定金鑰使用者名稱,然後輸入值的資料庫使用者。新增第二個金鑰密碼,然後針對值輸入密碼。如需建立機密的詳細資訊,請參閱《AWS Secrets Manager 使用者指南》中的建立機密。機密的格式必須如下:

    { "username": "<database_user>", "password": "<database_password>" }
安裝和設定 AWSObservabilityExporter-SAP-HANADBExporterInstallAndConfigure 套件

AWSObservabilityExporter-SAP-HANADBExporterInstallAndConfigure 套件是 SSM Distributor 套件,可用來安裝和設定 Prometheus HANA 資料庫 Exporter 。當 Prometheus HANA 資料庫匯出器傳送HANA資料庫指標時,可以設定 CloudWatch 代理程式來擷取 CloudWatch 服務的指標。

  1. SSM參數存放區中建立SSM參數,以存放匯出器組態。以下是範例參數值。

    {\"exposition_port\":9668,\"multi_tenant\":true,\"timeout\":600,\"hana\":{\"host\":\"localhost\",\"port\":30013,\"aws_secret_name\":\"HANA_DB_CREDS\",\"scale_out_mode\":true}}
    注意

    在此範例中,匯出只會在具有作用中SYSTEM資料庫的 Amazon EC2執行個體上執行,而且在其他EC2執行個體上會保持閒置狀態,以避免重複指標。匯出工具可以從 SYSTEM 資料庫擷取所有資料庫租用戶資訊。

  2. SSM參數存放區中建立SSM參數,以存放 Exporter 指標查詢。套件可以接受多個指標參數。每個參數都必須具有有效的JSON物件格式。以下是範例參數值:

    {\"SELECT MAX(TIMESTAMP) TIMESTAMP, HOST, MEASURED_ELEMENT_NAME CORE, SUM(MAP(CAPTION, 'User Time', TO_NUMBER(VALUE), 0)) USER_PCT, SUM(MAP(CAPTION, 'System Time', TO_NUMBER(VALUE), 0)) SYSTEM_PCT, SUM(MAP(CAPTION, 'Wait Time', TO_NUMBER(VALUE), 0)) WAITIO_PCT, SUM(MAP(CAPTION, 'Idle Time', 0, TO_NUMBER(VALUE))) BUSY_PCT, SUM(MAP(CAPTION, 'Idle Time', TO_NUMBER(VALUE), 0)) IDLE_PCT FROM sys.M_HOST_AGENT_METRICS WHERE MEASURED_ELEMENT_TYPE = 'Processor' GROUP BY HOST, MEASURED_ELEMENT_NAME;\":{\"enabled\":true,\"metrics\":[{\"name\":\"hanadb_cpu_user\",\"description\":\"Percentage of CPU time spent by HANA DB in user space, over the last minute (in seconds)\",\"labels\":[\"HOST\",\"CORE\"],\"value\":\"USER_PCT\",\"unit\":\"percent\",\"type\":\"gauge\"},{\"name\":\"hanadb_cpu_system\",\"description\":\"Percentage of CPU time spent by HANA DB in Kernel space, over the last minute (in seconds)\",\"labels\":[\"HOST\",\"CORE\"],\"value\":\"SYSTEM_PCT\",\"unit\":\"percent\",\"type\":\"gauge\"},{\"name\":\"hanadb_cpu_waitio\",\"description\":\"Percentage of CPU time spent by HANA DB in IO mode, over the last minute (in seconds)\",\"labels\":[\"HOST\",\"CORE\"],\"value\":\"WAITIO_PCT\",\"unit\":\"percent\",\"type\":\"gauge\"},{\"name\":\"hanadb_cpu_busy\",\"description\":\"Percentage of CPU time spent by HANA DB, over the last minute (in seconds)\",\"labels\":[\"HOST\",\"CORE\"],\"value\":\"BUSY_PCT\",\"unit\":\"percent\",\"type\":\"gauge\"},{\"name\":\"hanadb_cpu_idle\",\"description\":\"Percentage of CPU time not spent by HANA DB, over the last minute (in seconds)\",\"labels\":[\"HOST\",\"CORE\"],\"value\":\"IDLE_PCT\",\"unit\":\"percent\",\"type\":\"gauge\"}]}}

    如需指標查詢的詳細資訊,請參閱 上的SUSE / hanadb_exporter儲存庫 GitHub。

  3. 導覽至 SSM Distributor 主控台,並開啟 Amazon 擁有標籤。選取 AWSObservabilityExporter-SAP-HANADBExporterInstallAndConfigure* 並選擇安裝一次

  4. 使用下列內容取代「其他引數」,更新您在第一個步驟中建立的SSM參數:

    { "SSM_EXPORTER_CONFIG": "{{ssm:<*SSM_CONFIGURATIONS_PARAMETER_STORE_NAME>*}}", "SSM_SID": "<SAP_DATABASE_SID>", "SSM_EXPORTER_METRICS_1": "{{ssm:<SSM_FIRST_METRICS_PARAMETER_STORE_NAME>}}", "SSM_EXPORTER_METRICS_2": "{{ssm:<SSM_SECOND_METRICS_PARAMETER_STORE_NAME>}}" }
  5. 選取具有SAPHANA資料庫的 Amazon EC2執行個體,然後選擇執行

AWSObservabilityExporter-HAClusterExporterInstallAndConfigure

您可以從適用於 Application Insights 的 Prometheus 叢集匯出器擷取工作負載特定的高可用性 (HA) HANA叢集指標,以設定和監控SAPHANA資料庫高可用性設定的警示。如需詳細資訊,請參閱本指南中的 設定SAPHANA資料庫以進行監控

若要使用 AWS Systems Manager Distributor 來封裝、安裝和設定 AWS提供的 Prometheus HA 叢集匯出器套件,獨立於 Application Insights,請完成下列步驟。

使用 Prometheus HA 叢集匯出器SSM套件的先決條件
  • SSM 已安裝代理程式 2.3.1550.0 版或更新版本

  • 適用於 Pacemaker、CorosyncSBD、 和 的 HA 叢集 DRBD

  • Linux 作業系統 (SUSE Linux、 RedHat Linux)

安裝和設定 AWSObservabilityExporter-HAClusterExporterInstallAndConfigure 套件

AWSObservabilityExporter-HAClusterExporterInstallAndConfigure套件是 SSM Distributor 套件,可用來安裝和設定 Prometheus HA Cluster Exporter。當 Prometheus HANA 資料庫匯出器傳送叢集指標時,可以設定 CloudWatch 代理程式來擷取 CloudWatch 服務的指標。

  1. SSM參數存放區中建立 SSM 參數,以 JSON 格式儲存匯出器組態。以下是範例參數值。

    {\"port\":\"9664\",\"address\":\"0.0.0.0\",\"log-level\":\"info\",\"crm-mon-path\":\"/usr/sbin/crm_mon\",\"cibadmin-path\":\"/usr/sbin/cibadmin\",\"corosync-cfgtoolpath-path\":\"/usr/sbin/corosync-cfgtool\",\"corosync-quorumtool-path\":\"/usr/sbin/corosync-quorumtool\",\"sbd-path\":\"/usr/sbin/sbd\",\"sbd-config-path\":\"/etc/sysconfig/sbd\",\"drbdsetup-path\":\"/sbin/drbdsetup\",\"enable-timestamps\":false}

    如需匯出器組態的詳細資訊,請參閱 上的ClusterLabs / ha_cluster_exporter儲存庫 GitHub。

  2. 導覽至 SSM Distributor 主控台,並開啟 Amazon 擁有標籤。選取 AWSObservabilityExporter-HAClusterExporterInstallAndConfigure* 並選擇安裝一次

  3. 使用下列內容取代「其他引數」,更新您在第一個步驟中建立的SSM參數:

    { "SSM_EXPORTER_CONFIG": "{{ssm:<*SSM_CONFIGURATIONS_PARAMETER_STORE_NAME>*}}" }
  4. 選取具有SAPHANA資料庫的 Amazon EC2執行個體,然後選擇執行

AWSObservabilityExporter-SAP-SAPHostExporterInstallAndConfigure

您可以從適用於 Application Insights 的 Prometheus SAP 主機匯出器擷取工作負載特定的SAP NetWeaver 指標,以設定和監控SAP NetWeaver 分散式和高可用性部署的警示。

若要使用 AWS Systems Manager Distributor 獨立於 Application Insights 來封裝、安裝和設定SAP主機匯出器套件,請完成下列步驟。

使用 Prometheus SAP 主機匯出器SSM套件的先決條件
  • SSM 已安裝代理程式 2.3.1550.0 版或更新版本

  • SAP NetWeaver 應用程式伺服器

  • Linux 作業系統 (SUSE Linux、 RedHat Linux)

安裝和設定 AWSObservabilityExporter-SAP-SAPHostExporterInstallAndConfigure 套件

AWSObservabilityExporter-SAP-SAPHostExporterInstallAndConfigure 套件是 SSM Distributor 套件,可用來安裝和設定 SAP NetWeaver Prometheus 指標匯出器。當 Prometheus 匯出者傳送SAP NetWeaver 指標時,可以設定 CloudWatch 代理程式來擷取 CloudWatch 服務的指標。

  1. SSM參數存放區中建立 SSM 參數,以 JSON 格式儲存匯出器組態。以下是範例參數值。

    {\"address\":\"0.0.0.0\",\"port\":\"9680\",\"log-level\":\"info\",\"is-HA\":false}
    • address

      將 Prometheus 指標傳送到的目標地址。預設值為 localhost

    • port

      將 Prometheus 指標傳送到的目標連接埠。預設值為 9680

    • is-HA

      true 適用於SAP NetWeaver 高可用性部署。對於所有其他部署,為 false

  2. 導覽至 SSM Distributor 主控台,並開啟 Amazon 擁有標籤。選取 AWSObservabilityExporter-SAP-SAPHostExporterInstallAndConfigure ,然後選擇安裝一次

  3. 使用下列內容取代「其他引數」,更新您在第一個步驟中建立的SSM參數:

    { "SSM_EXPORTER_CONFIG": "{{ssm:<SSM_CONFIGURATIONS_PARAMETER_STORE_NAME>}}", "SSM_SID": "<SAP_DATABASE_SID>", "SSM_INSTANCES_NUM": "<instances_number seperated by comma>" }

    範例

    { "SSM_EXPORTER_CONFIG": "{{ssm:exporter_config_paramter}}", "SSM_INSTANCES_NUM": "11,12,10", "SSM_SID": "PR1" }
  4. 選取具有SAP NetWeaver 應用程式的 Amazon EC2執行個體,然後選擇執行

注意

Prometheus 匯出工具會在本機端點上為SAP NetWeaver 指標提供服務。只有 Amazon EC2執行個體上的作業系統使用者才能存取本機端點。因此,在安裝匯出程式套件之後,所有作業系統使用者都可以使用這些指標。預設本機端點為 localhost:9680/metrics

AWSObservabilityExporter-SQLExporterInstallAndConfigure

您可以從 Prometheus SQL Exporter for Application Insights 擷取工作負載特定的SQL伺服器指標,以監控關鍵指標。

若要使用 AWS Systems Manager Distributor 來封裝、安裝和設定獨立於 Application Insights 的SQL匯出工具套件,請完成下列步驟。

使用 Prometheus SQL 匯出工具SSM套件的先決條件
  • SSM 已安裝代理程式 2.3.1550.0 版或更新版本

  • 在啟用SQL伺服器使用者身分驗證的 Windows 上執行 SQL Server 的 Amazon EC2執行個體。

  • 具有下列許可的SQL伺服器使用者:

    GRANT VIEW ANY DEFINITION TO
    GRANT VIEW SERVER STATE TO
  • 使用 AWS Secrets Manager包含資料庫連線字串的機密。如需建立機密的詳細資訊,請參閱《AWS Secrets Manager 使用者指南》中的建立機密。機密的格式必須如下:

    { "data_source_name":"sqlserver://<username>:<password>@localhost:1433" }
    注意

    如果密碼或使用者名稱包含特殊字元,則必須對特殊字元進行百分比編碼,以確保資料庫連線成功。

安裝和設定 AWSObservabilityExporter-SQLExporterInstallAndConfigure 套件

AWSObservabilityExporter-SQLExporterInstallAndConfigure 套件是 SSM Distributor 套件,可用來安裝和設定 SQL Prometheus 指標匯出器。當 Prometheus 匯出者傳送指標時,可以設定 CloudWatch 代理程式來擷取 CloudWatch 服務的指標。

  1. 根據您的偏好設定,準備 SQL Exporter YAML組態。下列範例組態已設定單一指標。使用範例組態以利用其他指標來更新組態或建立您自己的組態。

    --- global: scrape_timeout_offset: 500ms min_interval: 0s max_connections: 3 max_idle_connections: 3 target: aws_secret_name: <SECRET_NAME> collectors: - mssql_standard collectors: - collector_name: mssql_standard metrics: - metric_name: mssql_batch_requests type: counter help: 'Number of command batches received.' values: [cntr_value] query: | SELECT cntr_value FROM sys.dm_os_performance_counters WITH (NOLOCK) WHERE counter_name = 'Batch Requests/sec'
  2. 將編碼為 Base64 的 Prometheus SQL 匯出器YAML組態檔案複製到SSM參數存放區 中的新SSM參數。

  3. 導覽至 SSM Distributor 主控台,並開啟 Amazon 擁有標籤。選取 AWSObservabilityExporter-SQLExporterInstallAndConfigure ,然後選擇安裝一次

  4. 使用下列資訊取代「其他引數」。SSM_PARAMETER_NAME 是您在步驟 2 中建立的參數名稱。

    { "SSM_EXPORTER_CONFIGURATION": "{{ssm:<SSM_PARAMETER_STORE_NAME>}}", "SSM_PROMETHEUS_PORT": "9399", "SSM_WORKLOAD_NAME": "SQL" }
  5. 選取具有SQL伺服器資料庫的 Amazon EC2執行個體,然後選擇執行。