3分钟

课程背景

实验预计耗时:30分钟

1. 课程背景

1.1 课程目的

用户在项目部署后往往需要对服务器的某些指标进行监控并设定相应的告警策略,云监控为用户提供了云服务器CPU利用率、内存利用率、磁盘利用率以及云数据库Memcached高速存储等各项云服务负载和性能指标,并通过直观图表进行展示。云监控还支持设置自定义告警阈值,并根据用户自定义的规则发送通知。如果用户还需要监控一些自定义指标的话,可以在云监控创建新的监控项并采集该监控数据上报到云监控,云监控可对新的监控项提供监控图表展示和报警功能,让用户实时、精准地了解业务的健康状况。

本课程将使用云监控TCCLI工具实时向云监控-自定义监控上报云服务器TIME_WAIT连接数指标,并通过云监控控制台查看上报指标及配置告警。通过本课程,学员可以掌握TCCLI工具和云监控-自定义监控的基本使用。

为确保实验顺利进行,学员需要开通自定义监控,开通方式参考自定义监控-快速入门。自定义监控开通后会收到确认邮件。即使功能已开通,还需要在指标视图页面再次点击开通,确保成功进入到控制台才可以。

1.2 课前知识准备

(1)相关技术及产品:

  • 腾讯云相关:
    • 云服务器CVM:腾讯云服务器 CVM(Cloud Virtual Machine)是腾讯云提供的可扩展的计算服务。使用 CVM 避免了使用传统服务器时需要预估资源用量及前期投入,帮助您在短时间内快速启动任意数量的云服务器并即时部署应用程序。腾讯云 CVM 支持用户自定义一切资源:CPU、内存、硬盘、网络、安全等等,并可以在需求发生变化时轻松地调整它们。
    • 云监控CM:云监控(Cloud Monitor,CM)可收集并通过图表展示腾讯云产品自助上报的各项监控指标和用户自定义配置上报的监控指标,以及针对指标设置告警。为用户提供立体化云产品数据监控、智能化数据分析、实时化异常告警和个性化数据报表配置,让用户实时、精准掌控业务和各个云产品健康状况。
    • TCCLI工具:TCCLI 是管理腾讯云资源的统一工具。通过腾讯云命令行工具,用户可以快速轻松的调用腾讯云API来管理腾讯云资源。用户还可以基于腾讯云的命令行工具来做自动化和脚本处理,能够以更多样的方式进行组合和重用。
  • Linux相关:
    • Linux:Linux是一套开源的类Unix操作系统,也是现在在服务端使用最为广泛的操作系统,它有多种发行版本。
    • Shell脚本:通过将批量的Linux命令预先写入,方便一次性执行的程序文件。对于Linux系统来说,Shell脚本比起单条命令的输入,特别是在复杂命令配置的场景下,效率和复用性都更高。
    • CentOS:CentOS(Community Enterprise Operating System,中文意思是社区企业操作系统)是Linux发行版之一,它是来自于Red Hat Enterprise Linux依照开放源代码规定放出的源代码编译而成。由于出自同样的源代码,因此有些要求高度稳定性的服务器以CentOS替代商业版的Red Hat Enterprise Linux使用。两者的不同,在于CentOS完全开源。
  • 其他实验相关:
    • TCP协议:传输控制协议TCP(Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC793定义。
    • TIME_WAIT:TCP连接后之后,首先发FIN标志位的一端就会进入TIME_WAIT状态。

(2)相关原理:

  • 在Shell脚本中使用TCCLI工具可以完成自定义监控项的持续上报,云监控将对该监控项进行24小时监控。通过配置告警,云监控平台还将在触发告警时通过短信、邮件等方式通知用户。
原理图

(3)相关命令介绍:

  • Linux相关命令:
    • 安装软件: yum install <软件名> -y
    • pip安装工具: pip install <工具名>
    • 配置TCCLI工具: tccli configure set <参数名> <参数值>
    • 通过vim创建并编辑文件: vi <文件名>
    • 添加文件可执行权限: chmod +x <文件路径/文件名>
    • 后台执行脚本: nohup <脚本> &
    • 查看TIME_WAIT连接数: netstat -ant | awk '/TIME_WAIT/ {print $6}' | wc -l
  • vim相关命令:
    • 进入编辑模式,在当前字符前插入光标:i
    • 进入命令行模式:ESC
    • 保存并退出文件(命令行模式下)::wq