AWS 應用 CloudWatch 程式洞察所使用的 Systems Manager (SSM) 套件 - Amazon CloudWatch

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

AWS 應用 CloudWatch 程式洞察所使用的 Systems Manager (SSM) 套件

本節中列出的套件是由「應用程式見解」使用,而且可以透過以下方式獨立管理和部署 AWS Systems Manager 代理商。如需「SSM代理商」的更多資訊,請參 AWS Systems Manager 代理商 AWS Systems Manager 用戶指南

AWSObservabilityExporter-JMXExporterInstallAndConfigure

您可以從 Prometheus JMX 匯出程式擷取工作負載特定的 Java 指標,以供應用程式見解設定和監視警示。在「應用程式見解」主控台的「管理監視」頁面上,從「JAVA應用程式層」下拉式清單中選取應用 然後在 JAVAPrometheus 導出器配置下,選擇您的收集方法和JMX端口號。

使用 AWS 用於封裝、安裝及設定的系統管理員代理商 AWS-提供 Prometheus JMX 出口商包獨立的應用程序見解,完成以下步驟。

使用 Promethe JMX us 出口商包的先決條件 SSM
  • SSM已安裝代理程式版本 2.3.1550.0 或更新版本

  • JAVA_ HOME 環境變量被設置

安裝和設定 AWSObservabilityExporter-JMXExporterInstallAndConfigure 套件

AWSObservabilityExporter-JMXExporterInstallAndConfigure軟件包是您可以用來安裝和配置 Promethe JMX us 出口SSM商的分銷商包。當 Prometheus JMX 匯出程式傳送 Java 測量結果時,可以將 CloudWatch 代理程式設定為擷取服務的測量結果。 CloudWatch

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

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

  3. 導覽至「SSM代理商」主控台,然後開啟「Amazon 擁有者」標籤。選擇 AWSObservabilityExporter-JMXExporterInstallAndConfigure 並選擇安裝一次

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

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

    連接埠 9404 是用來傳送 Prome JMX theus 度量的預設連接埠。您可以更新此連接埠。

範例:設定 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

    • 將標籤 (ApplicationComponentName、和InstanceId) 附加至量度,可設定為 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 或更新版本。如果要在EC2執行個體上安裝 CloudWatch代理程式,請參閱安裝 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

您可以從 Prometheus HANA 資料庫匯出程式擷取工作負載特定的SAPHANA指標,以供應用程式見解設定和監視警示。如需詳細資訊,請參閱本指南中的 設定您的SAPHANA資料庫以進行監視

使用 AWS 用於封裝、安裝及設定的系統管理員代理商 AWS-提供 Prometheus HANA 數據庫導出程序包獨立於應用程序見解,完成以下步驟。

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

  • SAPHANA資料庫

  • Linux 作業系統 (SUSE RedHat Linux)

  • 使用SAPHANA資料庫監視認證的秘密 AWS Secrets Manager。 使用金鑰/值組格式建立密碼、指定金鑰使用者名稱,然後輸入值的資料庫使用者。新增第二個金鑰密碼,然後針對值輸入密碼。如需如何建立密的詳細資訊,請參閱在 AWS Secrets Manager 使用者指南。機密的格式必須如下:

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

AWSObservabilityExporter-SAP-HANADBExporterInstallAndConfigure套件是您可以用來安裝和設定 Prometheus 資料庫匯出程式的散HANA發者套件。SSMPrometheus 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參數以儲存匯出器量度查詢。套件可以接受多個指標參數。每個參數都必須具有有效的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代理商」主控台,然後開啟「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

您可以從 Prometheus 叢集匯出程式擷取工作負載特定的高可用性 (HA) HANA 叢集度量,以設定和監視資料庫高可用性設定的警示。SAP HANA如需詳細資訊,請參閱本指南中的 設定您的SAPHANA資料庫以進行監視

使用 AWS 用於封裝、安裝及設定的系統管理員代理商 AWS-提供 Prometheus HA 群集出口商包獨立於應用程序見解,完成以下步驟。

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

  • 適用於心臟起搏器、同步、和 SBD DRBD

  • Linux 作業系統 (SUSE RedHat Linux)

安裝和設定 AWSObservabilityExporter-HAClusterExporterInstallAndConfigure 套件

AWSObservabilityExporter-HAClusterExporterInstallAndConfigure套件是SSM散發者套件,您可以用來安裝和設定 Prometheus HA 叢集匯出程式。當 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代理商」主控台,然後開啟「Amazon 擁有者」標籤。選擇 AWSObservabilityExporter-HAClusterExporterInstallAndConfigure *,然後選擇安裝一次

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

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

AWSObservabilityExporter-SAP-SAPHostExporterInstallAndConfigure

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

使用 AWS Systems Manager 配送者若要封裝、安裝及設定SAP主機匯出程式套件,而不受應用程式深入解析影響,請完成下列步驟。

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

  • SAP NetWeaver 應用伺服器

  • Linux 作業系統 (SUSE RedHat Linux)

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

AWSObservabilityExporter-SAP-SAPHostExporterInstallAndConfigure套件是您可以用來安裝和設定 SAP NetWeaver Prometheus 指標匯出程式的「散發者」套件。SSM當 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代理商」主控台,然後開啟「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 匯出程式擷取工作負載特定的SQL伺服器指標,以便監控關鍵指標。

使用 AWS Systems Manager 經銷商要封裝、安裝及設定SQL匯出程式套件,而不受應用程式見解影響,請完成下列步驟。

使用 Promethe SQL us 出口商包的先決條件 SSM
  • SSM已安裝代理程式版本 2.3.1550.0 或更新版本

  • Amazon EC2 實例在 Windows 上運行SQL服務器,並啟用了SQL服務器用戶身份

  • 具有下列權限的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套件是您可以用來安裝和設定 SQL Prometheus 指標匯出程式的「散發者」套件。SSM當 Prometheus 匯出程式傳送指標時,可將 CloudWatch 代理程式設定為擷取服務的指標。 CloudWatch

  1. 根據您的偏好設定,準備SQL匯出程式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代理商」主控台,然後開啟「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 執行個體,然後選擇執行。