『亚马逊云科技产品测评』活动征文|基于亚马逊EC2云服务器安装Prometheus数据可视化监控

授权声明:本篇文章授权活动官方亚马逊云科技文章转发、改写权,包括不限于在 Developer Centre, 知乎,自媒体平台,第三方开发者媒体等亚马逊云科技官方渠道

亚马逊EC2云服务器(Elastic Compute Cloud)是亚马逊AWS(Amazon Web Services)提供的一种云计算服务。EC2代表弹性计算云,它允许用户租用虚拟计算资源,包括CPU、内存、存储和网络带宽,以满足计算需求。

由于亚马逊云科技服务种类较多,且计费详细,很多用户有些看不懂,所以对使用亚马逊云科技云服务器望而却步。其实亚马逊云科技很多服务都有免费套餐,以让用户体验,这些服务的免费套餐,搭建一个web服务绰绰有余。

数字化转型背景下,随着轻量化的容器化技术和微服务应用的深度融合,业务复杂度随之上升。基于Prometheus的容器云监控体系成为目前主流容器监控事实标准,本文主要介绍Prometheus云原生监控体系,涵盖指标采集、数据存储、可视化展示,告警入库等功能,结合生产实践供大家参考。

1. 亚马逊EC2优势

亚马逊EC2云服务器的主要特点和优势包括:

  1. 灵活性:用户可以根据需要随时启动、停止、调整和删除EC2实例,以便满足不断变化的计算需求。
  2. 可靠性:亚马逊EC2服务器提供高可用性和容错性,确保用户的应用程序能始终保持运行状态。此外,亚马逊EC2的服务等级协议承诺为每个EC2地区提供99.99%的可用性。
  3. 安全性:亚马逊EC2服务器提供了多层安全措施,包括网络隔离、数据加密和身份验证,以保护用户的数据和应用程序免受攻击。
  4. 成本效益:亚马逊EC2服务器采用按需计费模式,用户只需支付实际使用的计算资源费用,无需预先投资硬件或承担维护和管理物理服务器的费用。
  5. 可扩展性和功能性:亚马逊EC2提供了根据需要扩大或缩小规模的设施,能轻松处理各种动态场景。它还为用户提供了一个真正的虚拟计算平台,可以在其中执行各种操作,甚至可以从这个虚拟环境中启动另一个亚马逊EC2实例。

关于如何购买亚马逊云服务器,我这里不再重复赘述,详细可以查看这篇文章:https://blog.csdn.net/qq_43475285/article/details/134256935

2. 登录云服务器

2.1 EC2云服务器准备

在购买好云服务器后,进入控制台https://us-east-1.console.aws.amazon.com/console

tips: 在右上角区域选择,要和购买服务器时所选区域一致,否则无法找到已经购买的EC2服务器资源

image-20231203111316702

进入EC2控制台,可以看到正在运行的实例信息

image-20231203112306177

关于登录到云服务实例终端,有很多种方法,最方便的是在实例详细信息右上角点击连接

image-20231203112422392

可以选择使用Instance Connect 进行连接或者Instance Connect 端点进行连接,可以直接在web端进行终端控制

image-20231203112558792

但是为了方便后续的开发部署,并不是很推荐这种方式

image-20231203125432089

可以在本地安装一个shell登录软件。

2.2 EC2云服务器远程访问

常见的终端shell访问软件有Finalshell,putty,xshell等等。我这里使用的是finalshell

输入基本信息后,进行访问

tips:这里需要注意的是,初次访问现需要登录ec-user,才能继续访问root用户

image-20231203132322657

登录成功后再ec-user账号下使用sudo权限设置密码

登录成功后设置root密码

sudo passwd root

image-20231203132603212

3. 应用部署

3.1 安装Prometheus

# 下载
[root@ip-172-31-42-181 ~]# wget https://github.com/prometheus/prometheus/releases/download/v2.45.0/prometheus-2.45.0.linux-amd64.tar.gz# 解压
[root@ip-172-31-42-181 ~]# tar -zxvf prometheus-2.45.0.linux-amd64.tar.gz -C /usr/local/# 更名
[root@ip-172-31-42-181 ~]# cd /usr/local/  &&  mv prometheus-2.45.0.linux-amd64 prometheus  &&  cd prometheus

创建prometheus.service配置文件

cat >> /usr/lib/systemd/system/prometheus.service << EOF
[Unit]
Description=prometheus
After=network.target
[Service]
Type=simple
User=root
ExecStart=/usr/local/prometheus/prometheus --config.file=/usr/local/prometheus/prometheus.yml --storage.tsdb.path=/data/prometheus --storage.tsdb.retention=15d --log.level=info            
Restart=on-failure
[Install]
WantedBy=multi-user.target
EOF

启动prometheus服务

systemctl daemon-reload && systemctl start prometheus && systemctl enable prometheus && systemctl status prometheus

image-20231205002911569

3.2 安装node_exporter

下载node_exporter组件包

# 下载
[root@ip-172-31-42-181 ~]# wget https://github.com/prometheus/node_exporter/releases/download/v1.6.1/node_exporter-1.6.1.linux-amd64.tar.gz# 解压
[root@ip-172-31-42-181 ~]# tar -zxvf node_exporter-1.6.1.linux-amd64.tar.gz -C /usr/local/# 更名
[root@ip-172-31-42-181 ~]# cd /usr/local && mv node_exporter-1.6.1.linux-amd64 node_exporter && cd node_exporter

创建node_exporter.service配置文件

[root@ip-172-31-42-181 node_exporter]# cat > /usr/lib/systemd/system/node_exporter.service << EOF
> [Unit]
> Description=node_exporter
> Documentation=https://prometheus.io/
> After=network.target
> 
> [Service]
> Type=simple
> User=root
> ExecStart=/usr/local/node_exporter/node_exporter
> Restart=on-failure
> 
> [Install]
> WantedBy=multi-user.target
> EOF

启动node_exproter服务

 systemctl daemon-reload && systemctl start node_exporter && systemctl enable node_exporter && systemctl status node_exporter

image-20231205003636834

配置prometheus.yml文件

# my global config
global:scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.# scrape_timeout is set to the global default (10s).# Alertmanager configuration
alerting:alertmanagers:- static_configs:- targets:# - alertmanager:9093# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
rule_files:# - "first_rules.yml"# - "second_rules.yml"# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:# The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.- job_name: "prometheus"# metrics_path defaults to '/metrics'# scheme defaults to 'http'.static_configs:- targets: ["localhost:9090"]- job_name: "基于亚马逊EC2云服务器安装Prometheus数据可视化监控"# metrics_path defaults to '/metrics'# scheme defaults to 'http'.static_configs:- targets: ["18.234.153.100:9100"]
  • 检验prometheus.yml配置是否有效
[root@ip-172-31-42-181 prometheus]# ./promtool check config prometheus.yml
Checking prometheus.ymlSUCCESS: prometheus.yml is valid prometheus config file syntax
  • 重启prometheus服务
systemctl daemon-reload && systemctl restart prometheus && systemctl status prometheus
  • 重启node_exporter服务
systemctl daemon-reload && systemctl restart prometheus && systemctl status prometheus

image-20231205004452178

3.3 访问Prometheus

  • http://18.234.153.100:9090/targets

image-20231205004556861

3.4 安装Grafana

  • 下载并安装Grafana
# 下载
wget https://dl.grafana.com/enterprise/release/grafana-enterprise-10.0.0-1.x86_64.rpm# 安装
yum install -y grafana-enterprise-10.0.0-1.x86_64.rpm

image-20231205004711730

  • 启动grafana服务
systemctl start grafana-server.service && systemctl enable grafana-server.service && systemctl status grafana-server.service

image-20231205004831268

3.5 访问Grafana

http://18.234.153.100:3000

image-20231205004957108

  • 输入用户名和密码(初始密码:admin)

image-20231205005049546

  • 添加数据源Prometheus

image-20231205005215878

  • 导入仪表盘

image-20231205005331145

image-20231205005831449

image-20231205010105732

本实验基于亚马逊EC2云服务器,采用Prometheus+Grafana的安装部署方式实现对Linux系统主机的大屏监控。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/247670.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

新华三数字大赛复赛知识点 VLAN基本技术

VLAN IEEE 802.1Q 交换机端口类型 MVRP协议 VLAN Virtual LAN虚拟局域网。LAN可以是由几台少数家用计算机构成的网络&#xff0c;也可以是数以百计的计算机构成的企业网络。VLAN所指的LAN特指使用路由器分割的网络–也就是广播域。将一个物理的局域网在逻辑上划分成多个广播域…

STK Components 二次开发-飞行器

1.创建飞机 参数帮助文档 var poitList GetTracksData(); var waypointPropagator new WaypointPropagator(m_earth, poitList); var locationPoint waypointPropagator.CreatePoint();m_aircraft new Platform {Name "MH730",LocationPoint locationPoint,Or…

算符优先语法分析程序设计与实现

制作一个简单的C语言词法分析程序_用c语言编写词法分析程序-CSDN博客文章浏览阅读378次。C语言的程序中&#xff0c;有很单词多符号和保留字。一些单词符号还有对应的左线性文法。所以我们需要先做出一个单词字符表&#xff0c;给出对应的识别码&#xff0c;然后跟据对应的表格…

6、原型模式(Prototype Pattern,不常用)

原型模式指通过调用原型实例的Clone方法或其他手段来创建对象。 原型模式属于创建型设计模式&#xff0c;它以当前对象为原型&#xff08;蓝本&#xff09;来创建另一个新的对象&#xff0c;而无须知道创建的细节。原型模式在Java中通常使用Clone技术实现&#xff0c;在JavaSc…

Java架构师技术架构路线

目录 1 概论2 如何规划短中长期的技术架构路线图3 如何规划面向未来的架构4 如何修订路线图执行过程中的偏差5 如何落地路线图-阿里系糙快猛之下的敏捷模式想学习架构师构建流程请跳转:Java架构师系统架构设计 1 概论 首先,规划一个短中长期的技术路线图是非常重要的。短中…

创新领航 | 竹云参编《基层智治系统安全接入规范》团体标准正式发布!

近日&#xff0c;由杭州市委办公厅&#xff08;市密码管理局&#xff09;、杭州市基层治理综合指挥保障中心、杭州市拱墅区社会治理中心、杭州市拱墅区数据资源管理局、杭州竹云数字智能科技有限公司、杭州智诚质量标准技术评定中心共同参与编写的《基层智治系统安全接入规范》…

【Linux下如何生成coredump文件】

一&#xff0c;什么是coredump 我们经常听到大家说到程序core掉了&#xff0c;需要定位解决&#xff0c;这里说的大部分是指对应程序由于各种异常或者bug导致在运行过程中异常退出或者中止&#xff0c;并且在满足一定条件下&#xff08;这里为什么说需要满足一定的条件呢&#…

快速处理Python爬虫:异步和缓存技巧

在当今的数字化时代&#xff0c;数据是商业的核心&#xff0c;而爬虫程序是获取数据的重要工具。Python作为一种流行的编程语言&#xff0c;提供了许多库以方便快捷地创建爬虫程序。本文将探讨如何使用Python快速处理爬虫的异步和缓存技巧。 异步处理 Python的异步处理主要通…

Python小案例:打印10以内的素数

解析 1、利用循环控制范围&#xff08;1,100&#xff09; 2、通过循环判断素数 3、利用标记法进行打印素数 代码 #求1——100之间的素数 for i in range(2,101):is_primeNum Truefor j in range(2,i):if i%j 0:# print(f"{i}不是素数")is_primeNum Falseif is_…

任意文件上传漏洞实战和防范

文件上传漏洞广泛存在于Web1.0时代&#xff0c;恶意攻击者的主要攻击手法是将可执行脚本&#xff08;WebShell&#xff09;上传至目标服务器&#xff0c;以达到控制目标服务器的目的。 此漏洞成立的前提条件至少有下面两个&#xff1a; 1.可以上传对应的脚本文件&#xff0c;…

探索 SSO 的世界:简化登录流程的最佳实践(上)

&#x1f90d; 前端开发工程师&#xff08;主业&#xff09;、技术博主&#xff08;副业&#xff09;、已过CET6 &#x1f368; 阿珊和她的猫_CSDN个人主页 &#x1f560; 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 &#x1f35a; 蓝桥云课签约作者、已在蓝桥云…

前端——html拖拽原理

文章目录 ⭐前言⭐draggable属性&#x1f496; api&#x1f496; 单向拖动示例&#x1f496; 双向拖动示例 ⭐总结⭐结束 ⭐前言 大家好&#xff0c;我是yma16&#xff0c;本文分享关于 前端——html拖拽原理。 vue3系列相关文章&#xff1a; vue3 fastapi 实现选择目录所有文…