全部产品

ECS Metrics Collector for SAP部署指南

更新时间:2020-06-24 11:05:41

版本管理

版本 修订日期 变更类型 生效日期
1.0 初始版本 2018/5/31
1.1 2018/6/11 更新安装准备条件说明 2018/6/12
1.2 2019/1/7 1.更新常见问题
2.更新RAM2.0操作说明
2019/1/7
1.3 2020/3/13 1.Linux平台的版本更新,支持OpenAPI内网调用
2.RAM角色配置更新
3.排版优化等
2020/3/13
1.4 2020/6/23 1.OpenAPI内网访问方式优化 2020/6/23

概述

当SAP系统运行在ECS上时,SAP Host Agent通过Metrics Collector代理调用阿里云的metadata服务和OpenAPI获取需要的信息,用于收集SAP系统监控所需信息(包括硬件、网络、存储、SAP架构方面等),并将其提供给SAP应用程序,用于事物和系统运行性能分析。

对于运行SAP系统的每个ECS实例(包括数据库和应用),都需要安装Metrics Collector for SAP监控代理程序。

下图是Metrics Collector的整体框架

mc-01

安装前准备

创建RAM角色

监控代理程序 ECS Metrics Collector 的运行需要特定的 RAM 服务角色和访问授权。

有关 RAM(访问控制)角色设置的更多信息,请参阅如何通过控制台使用实例 RAM 角色

如果本机已经或打算安装HBR(混合云备份)客户端,请直接转至步骤5,将这两个策略授权给“AliyunECSAccessingHBRRole”角色,然后再将此角色授权给本机即可。

1.登录 ECS 控制台

2.在左侧导航窗格中,选择或搜索“访问控制”

ram-01

3.打开访问控制服务控制台,选择RAM角色管理,单击新建RAM角色

请注意:以下是基于RAM2.0版本的界面,旧版本的描述可能会存在差异

4.选择 阿里云服务 类型, ECS云服务器 ,并输入角色名称,例如 ecs-metrics-collector,点击 确定 ram-02

5.单击添加权限。输入策略 AliyunECSReadOnlyAccessAliyunCloudMonitorReadOnlyAccess 并将其分配给您的 RAM 服务角色

这两个角色是授权Metrics Collector只读访问ECS信息和只读访问云监控资源信息

ram-03

将策略授权给角色“AliyunECSAccessingHBRRole”的示例如下:

ram-03

6.单击确定,完成策略分配。 ram-04

RAM角色配置

将您创建的 RAM 服务角色挂载至您的 SAP ECS 实例。

  • 打开 ECS 控制台,转到实例选项卡,找到您的 ECS 实例

  • 更多操作的下拉列表中选择绑定/解绑 RAM 角色ram-10

  • 选择您在开始时创建的 RAM 服务角色。ram-11

如果本机已经或打算安装HBR(混合云备份)客户端,这里请授予“AliyunECSAccessingHBRRole”角色
  • 点击“确定”以挂载角色。

关于绑定/解绑 RAM 角色的更多信息,请参考如何通过控制台使用实例 RAM 角色

SAP Host Agent的安装

需要SAP market place的服务账号登录

Metrics collector需要结合SAP Host Agent才能正常使用。安装SAP Host Agent请参考 1031096 - Installing Package SAPHOSTAGENT

OpenAPI内网域名解析验证

本方案使用VPC和ECS的OpenAPI实现对云资源运行状态和相关数据的获取。VPC和ECS的OpenAPI支持内网直接调用,无需额外配置。

请当前配置的ECS访问阿里云VPC和ECS的OpenAPI域名正常。

本示例是北京地域内网环境的ECS,其他地域的域名请参考下面的列表

  1. # ping vpc.cn-beijing.aliyuncs.com
  2. PING popunify-vpc.cn-beijing.aliyuncs.com (100.100.80.162) 56(84) bytes of data.
  3. 64 bytes from 100.100.80.162: icmp_seq=1 ttl=102 time=0.065 ms
  4. 64 bytes from 100.100.80.162: icmp_seq=2 ttl=102 time=0.087 ms
  5. 64 bytes from 100.100.80.162: icmp_seq=3 ttl=102 time=0.106 ms
  6. 64 bytes from 100.100.80.162: icmp_seq=4 ttl=102 time=0.107 ms
  7. --- popunify-vpc.cn-beijing.aliyuncs.com ping statistics ---
  8. 4 packets transmitted, 4 received, 0% packet loss, time 3058ms
  9. rtt min/avg/max/mdev = 0.065/0.091/0.107/0.018 ms
  10. # ping ecs.cn-beijing.aliyuncs.com
  11. PING popunify-vpc.cn-beijing.aliyuncs.com (100.100.80.162) 56(84) bytes of data.
  12. 64 bytes from 100.100.80.162: icmp_seq=1 ttl=102 time=0.065 ms
  13. 64 bytes from 100.100.80.162: icmp_seq=2 ttl=102 time=0.093 ms
  14. 64 bytes from 100.100.80.162: icmp_seq=3 ttl=102 time=0.129 ms
  15. 64 bytes from 100.100.80.162: icmp_seq=4 ttl=102 time=0.102 ms
  16. --- popunify-vpc.cn-beijing.aliyuncs.com ping statistics ---
  17. 4 packets transmitted, 4 received, 0% packet loss, time 3059ms
  18. rtt min/avg/max/mdev = 0.065/0.097/0.129/0.023 ms

当前支持内网API调用的地域如下:

地域 地域ID
华东 1(杭州) cn-hangzhou
华南 1(深圳) cn-shenzhen
华北 5(呼和浩特) cn-huhehaote
华北 3(张家口) cn-zhangjiakou
西南1(成都) cn-chengdu
德国(法兰克福) eu-central-1
新加坡 ap-southeast-1
澳大利亚(悉尼) ap-southeast-2
马来西亚(吉隆坡) ap-southeast-3
印度尼西亚(雅加达) ap-southeast-5
英国(伦敦) eu-west-1
日本(东京) ap-northeast-1
印度(孟买) ap-south-1
美国(硅谷) us-west-1
美国(弗吉尼亚) us-east-1

还不支持OpenAPI内网调用的地域,可以使用NAT产品的SNAT功能来实现OpenAPI外网调用。

ECS Metrics Collector的安装和卸载

Linux平台

安装 ECS Metrics Collector

linux

1、使用具有 root 权限的用户帐户登录您的 SAP ECS 实例

为使用 root 权限,您需要使用 sudo,因此您的用户必须属于 sudo 组。

2、通过云助手安装 ECS Metrics Collector

Metrics collector工具需要python的支持,请确保pip已经被正常安装(下载软件时需要连接外网)

  1. wget https://bootstrap.pypa.io/get-pip.py
  2. python get-pip.py
  3. pip -V  #查看pip版本

安装程序会自动选择当前的最新版本安装,这里的最新版本是0.11

  1. # aliyun_installer -i ecs-metrics-collector
  2. The latest version of ecs-metrics-collector in the software repository is 0.11
  3. Downloading...
  4. Check MD5
  5. Unzip
  6. Installing...
  7. see details in installation log file: /var/log/ecs_metrics_collector/install.log
  8. [DEBUG] prepare_env
  9. [DEBUG] account_check
  10. [DEBUG] distro_check
  11. [DEBUG] init_system_check
  12. [DEBUG] system_restraint_check
  13. [DEBUG] package_check
  14. [DEBUG] python_env_check
  15. [DEBUG] install_collector
  16. [DEBUG] install_watchmen
  17. [DEBUG] install_reaper
  18. [DEBUG] install_service
  19. Installation success !

验证 Metrics Collector 的安装

3、通过以下操作验证 ECS Metrics Collector 服务是否正常

  1. systemctl status ecs_metrics_collector

metrics-2

4、使用以下命令,验证在 crontab 中是否已配置监听任务和自动更新任务,同时也可以通过运行日志检查程序运行状态

  1. cat /etc/cron.d/ecs_metrics_collector
  2. cat /var/log/ecs_metrics_collector/watchmen.log

metrics-3

在 ECS Metrics Collector 安装过程中,这两个任务将自动添加至 crontab。自动更新任务每1小时自动在云助手服务器上检查一次 ECS Metrics Collector 的最新版本,一旦有新版本可用将在后台自动完成升级。

检查收集的监控项数据

5、验证数据的收集

  1. curl localhost:8888 | vim -

curl

卸载ECS Metrics Collector

使用具有 root 权限的用户帐户登录您的 SAP ECS 实例
运行卸载命令: aliyun_installer -u ecs-metrics-collector

curl

更多操作命令

有关metrics collector更多的命令,可以通过aliyun_installer --h查询

Windows平台

windows

1、使用具有管理员(administrators组) 权限的用户帐户登录您的 SAP ECS 实例

2、使用阿里云助手,安装 ECS Metrics Collector开始菜单,右键->命令提示符(管理员),打开CMD窗口
切换到阿里云助手目录,执行安装

当前阿里云助手版本是1.0.0.107,请根据实际情况修改目录名

  1. cd "C:\ProgramData\aliyun\assist\[1.0.0.107]"
  2. aliyun_installer.exe -l
  3. aliyun_installer.exe -i ecs_metrics_collector

当有多个可选择package_id的时候,选择最新的package_id

win_mc_install

验证 ECS Metrics Collector 的安装

3、通过以下操作验证 ECS Metrics Collector 服务是否正常

任务栏,右键->任务管理器->服务,确认服务”Ecs metrics collector”状态是 正在运行ecs_service_status

4、开始菜单,右键->运行,输入 taskschd.msc,确定。打开任务计划程序,点击”任务计划程序库“,确认定时检查更新的任务已经被成功调度

metrics_task

在 ECS Metrics Collector 安装过程中会定义一个计划任务,每1小时自动在云助手服务器上检查一次 ECS Metrics Collector 的最新版本,一旦有新版本可用将自动升级。

检查收集的监控项数据

5、验证收集的数据
打开浏览器,访问 http://localhost:8888
能打开类似的页面,并且所有的value都能取到值,说明配置正确。如果出现value值取数异常,请先检查 RAM角色配置curl

卸载ECS Metrics Collector

使用具有管理员(administrators组) 权限的用户帐户登录您的 SAP ECS 实例切换到安装目录,双击uninst.exemetrics_uninstall_01
metrics_uninstall_02

更多操作命令

有关metrics collector更多的命令,可以通过aliyun_installer.exe --h查询

常见问题

1.安装完成后,metrics collector服务启动失败 “Failed to start ECS Metrics Collector for SAP”

问题描述:

  • 运行命令systemctl status ecs_metrics_collector,检查服务状态时出现如下报错:

qa_1_01

  • 查看系统日志命令 journalctl -xe,出现如下类似信息 ImportError: No module named pytz

qa_1_02

解决方案:

  • 手工安装pytz
  1. pip install pytz

qa_1_02

  • 重启并验证服务状态
  1. systemctl restart ecs_metrics_collector
  2. systemctl status ecs_metrics_collector

qa_1_02