Kubernetes Prometheus 系列|Prometheus介绍和使用|Prometheus+Grafana集成

news2024/10/2 12:29:20

目录

    • 第1章Prometheus 入门
      • 1.1 Prometheus 的特点
        • 1.1.1 易于管理
        • 1.1.2 监控服务的内部运行状态
        • 1.1.3 强大的数据模型
        • 1.1.4 强大的查询语言 PromQL
        • 1.1.5 高效
        • 1.1.6 可扩展
        • 1.1.7 易于集成
        • 1.1.8 可视化
        • 1.1.9 开放性
      • 1.2 Prometheus 的架构
        • 1.2.1 Prometheus 生态圈组件
        • 1.2.2 架构理解
    • 第2章Prometheus 的安装
      • 2.1 安装 Prometheus Server
        • 2.1.1 上传安装包
        • 2.1.2 解压安装包
        • 2.1.3 修改配置文件 prometheus.yml
      • 2.2 安装 Pushgateway
        • 2.2.1 上传安装包
        • 2.2.2 解压安装包
      • 2.3 安装 Alertmanager(选择性安装)
        • 2.3.1 上传安装包
        • 2.3.2 解压安装包
      • 2.4 安装 Node Exporter(选择性安装)
        • 2.4.1 上传安装包
        • 2.4.2 解压安装包
        • 2.4.3 节点分发
        • 2.4.4 设置为开机自启
      • 2.5 启 动 Prometheus Server 、 Pushgateway 和Alertmanager
        • 2.5.1 Prometheus Server 目录下执行启动命令
        • 2.5.2 Pushgateway 目录下执行启动命令
        • 2.5.3 在 Alertmanager 目录下启动
        • 2.5.4 打开 web 页面查看
    • 第3章 PromQL的介绍使用

第1章Prometheus 入门

Prometheus 受启发于 Google 的 Brogmon 监控系统(相似的 Kubernetes 是从 Google的 Brog 系统演变而来),从 2012 年开始由前 Google 工程师在 Soundcloud 以开源软件的形式进行研发,并且于 2015 年早期对外发布早期版本。
2016 年 5 月继 Kubernetes 之后成为第二个正式加入 CNCF 基金会的项目,同年 6 月正式发布 1.0 版本。2017 年底发布了基于全新存储层的 2.0 版本,能更好地与容器平台、云平台配合。
Prometheus 作为新一代的云原生监控系统,目前已经有超过 650+位贡献者参与到Prometheus 的研发工作上,并且超过 120+项的第三方集成。

1.1 Prometheus 的特点

Prometheus 是一个开源的完整监控解决方案,其对传统监控系统的测试和告警模型进行了彻底的颠覆,形成了基于中央化的规则计算、统一分析和告警的新模型。 相比于传统监控系统,Prometheus 具有以下优点:

1.1.1 易于管理

➢ Prometheus 核心部分只有一个单独的二进制文件,不存在任何的第三方依赖(数据库,缓存等等)。唯一需要的就是本地磁盘,因此不会有潜在级联故障的风险。
➢ Prometheus 基于 Pull 模型的架构方式,可以在任何地方(本地电脑,开发环境,测试环境)搭建我们的监控系统。
➢ 对于一些复杂的情况,还可以使用 Prometheus 服务发现(Service Discovery)的能力动态管理监控目标。

1.1.2 监控服务的内部运行状态

Pometheus 鼓励用户监控服务的内部状态,基于 Prometheus 丰富的 Client 库,用户可以轻松的在应用程序中添加对 Prometheus 的支持,从而让用户可以获取服务和应用内部真正的运行状态。
在这里插入图片描述

1.1.3 强大的数据模型

所有采集的监控数据均以指标(metric)的形式保存在内置的时间序列数据库当中(TSDB)。所有的样本除了基本的指标名称以外,还包含一组用于描述该样本特征的标签。
如下所示:

http_request_status{code='200',content_path='/api/path',environment='produment'} => 
[value1@timestamp1,value2@timestamp2...]
http_request_status{code='200',content_path='/api/path2',environment='produment'} => 
[value1@timestamp1,value2@timestamp2...]

每一条时间序列由指标名称(Metrics Name)以及一组标签(Labels)唯一标识。每条时间序列按照时间的先后顺序存储一系列的样本值。
➢ http_request_status:指标名称(Metrics Name)
➢ {code=‘200’,content_path=‘/api/path’,environment=‘produment’}:表示维度的标签,基于这些 Labels 我们可以方便地对监控数据进行聚合,过滤,裁剪。
➢ [value1@timestamp1,value2@timestamp2…]:按照时间的先后顺序 存储的样本值。

1.1.4 强大的查询语言 PromQL

Prometheus 内置了一个强大的数据查询语言 PromQL。 通过 PromQL 可以实现对监控数据的查询、聚合。同时 PromQL 也被应用于数据可视化(如 Grafana)以及告警当中。
通过 PromQL 可以轻松回答类似于以下问题:
➢ 在过去一段时间中 95%应用延迟时间的分布范围?
➢ 预测在 4 小时后,磁盘空间占用大致会是什么情况?
➢ CPU 占用率前 5 位的服务有哪些?(过滤)

1.1.5 高效

对于监控系统而言,大量的监控任务必然导致有大量的数据产生。而 Prometheus 可以高效地处理这些数据,对于单一 Prometheus Server 实例而言它可以处理:
➢ 数以百万的监控指标
➢ 每秒处理数十万的数据点

1.1.6 可扩展

可以在每个数据中心、每个团队运行独立的 Prometheus Sevrer。Prometheus 对于联邦集群的支持,可以让多个 Prometheus 实例产生一个逻辑集群,当单实例 Prometheus Server 处理的任务量过大时,通过使用功能分区(sharding)+联邦集群(federation)可以对其进行扩展。

1.1.7 易于集成

使用 Prometheus 可以快速搭建监控服务,并且可以非常方便地在应用程序中进行集成。目前支持:Java,JMX,Python,Go,Ruby,.Net,Node.js 等等语言的客户端 SDK,基于这些 SDK 可以快速让应用程序纳入到 Prometheus 的监控当中,或者开发自己的监控数据收集程序。
同时这些客户端收集的监控数据,不仅仅支持 Prometheus,还能支持 Graphite 这些其他的监控工具。
同时 Prometheus 还支持与其他的监控系统进行集成:Graphite,Statsd,Collected,Scollector, muini, Nagios 等。 Prometheus 社区还提供了大量第三方实现的监控数据采集支持:JMX,CloudWatch,EC2,MySQL,PostgresSQL,Haskell,Bash,SNMP,Consul,Haproxy,Mesos,Bind,CouchDB,Django,Memcached,RabbitMQ,Redis,RethinkDB,Rsyslog 等等。

1.1.8 可视化

➢ Prometheus Server 中自带的 Prometheus UI,可以方便地直接对数据进行查询,并且支持直接以图形化的形式展示数据。同时 Prometheus 还提供了一个独立的基于Ruby On Rails 的 Dashboard 解决方案 Promdash。
➢ 最新的 Grafana 可视化工具也已经提供了完整的 Prometheus 支持,基于 Grafana 可以创建更加精美的监控图标。
➢ 基于 Prometheus 提供的 API 还可以实现自己的监控可视化 UI。

1.1.9 开放性

通常来说当我们需要监控一个应用程序时,一般需要该应用程序提供对相应监控系统协议的支持,因此应用程序会与所选择的监控系统进行绑定。为了减少这种绑定所带来的限制,
对于决策者而言要么你就直接在应用中集成该监控系统的支持,要么就在外部创建单独的服
务来适配不同的监控系统。
而对于 Prometheus 来说,使用 Prometheus 的 client library 的输出格式不止支持Prometheus 的格式化数据,也可以输出支持其它监控系统的格式化数据,比如 Graphite。
因此你甚至可以在不使用 Prometheus 的情况下,采用 Prometheus 的 client library 来让
你的应用程序支持监控数据采集。

1.2 Prometheus 的架构

在这里插入图片描述

1.2.1 Prometheus 生态圈组件

➢ Prometheus Server:主服务器,负责收集和存储时间序列数据
➢ client libraies:应用程序代码插桩,将监控指标嵌入到被监控应用程序中
➢ Pushgateway:推送网关,为支持 short-lived 作业提供一个推送网关
➢ exporter:专门为一些应用开发的数据摄取组件—exporter,例如:HAProxy、StatsD、
Graphite 等等。
➢ Alertmanager:专门用于处理 alert 的组件

1.2.2 架构理解

Prometheus 既然设计为一个维度存储模型,可以把它理解为一个 OLAP 系统。
1、存储计算层
➢ Prometheus Server,里面包含了存储引擎和计算引擎。
➢ Retrieval 组件为取数组件,它会主动从 Pushgateway 或者 Exporter 拉取指标数据。
➢ Service discovery,可以动态发现要监控的目标。
➢ TSDB,数据核心存储与查询。
➢ HTTP server,对外提供 HTTP 服务。
2、采集层
采集层分为两类,一类是生命周期较短的作业,还有一类是生命周期较长的作业。
➢ 短作业:直接通过 API,在退出时间指标推送给 Pushgateway。
➢ 长作业:Retrieval 组件直接从 Job 或者 Exporter 拉取数据。
3、应用层
应用层主要分为两种,一种是 AlertManager,另一种是数据可视化。
➢ AlertManager
对接 Pagerduty,是一套付费的监控报警系统。可实现短信报警、5 分钟无人 ack 打
电话通知、仍然无人 ack,通知值班人员 Manager…
Emial,发送邮件
… …
➢ 数据可视化
Prometheus build-in WebUI
Grafana
其他基于 API 开发的客户端

第2章Prometheus 的安装

官网:https://prometheus.io/
下载地址:https://prometheus.io/download/
部署资源包链接

2.1 安装 Prometheus Server

Prometheus 基于 Golang 编写,编译后的软件包,不依赖于任何的第三方依赖。只需要下载对应平台的二进制包,解压并且添加基本的配置即可正常启动 Prometheus Server。

2.1.1 上传安装包
mkdir /opt/software

上传 prometheus-2.29.1.linux-amd64.tar.gz 到虚拟机的/opt/software 目录

2.1.2 解压安装包

➢ 解压到/opt/module 目录下

cd /opt/software 
mkdir /opt/module
tar -zxvf prometheus-2.29.1.linux-amd64.tar.gz -C /opt/module

➢ 修改目录名

cd /opt/module
mv prometheus-2.29.1.linux-amd64 prometheus-2.29.1
2.1.3 修改配置文件 prometheus.yml
cd prometheus-2.29.1
vim prometheus.yml

在 scrape_configs 配置项下添加配置:

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: ["10.10.101.114:9090"]
# 添加 PushGateway 监控配置
 - job_name: 'pushgateway'
   static_configs:
     - targets: ['10.10.101.114:9091']
       labels:
         instance: pushgateway
# 添加 Node Exporter 监控配置
 - job_name: 'node exporter'
   static_configs:
     - targets: ['10.10.101.114:9100','10.10.101.115:9100','10.10.101.116:9100']

配置说明:
1、global 配置块:控制 Prometheus 服务器的全局配置
➢ scrape_interval:配置拉取数据的时间间隔,默认为 1 分钟。
➢ evaluation_interval:规则验证(生成 alert)的时间间隔,默认为 1 分钟。
2、rule_files 配置块:规则配置文件
3、scrape_configs 配置块:配置采集目标相关, prometheus 监视的目标。Prometheus
自身的运行信息可以通过 HTTP 访问,所以 Prometheus 可以监控自己的运行数据。
➢ job_name:监控作业的名称
➢ static_configs:表示静态目标配置,就是固定从某个 target 拉取数据
➢ targets : 指 定 监 控 的 目 标 , 其 实 就 是 从 哪 儿 拉 取 数 据 。 Prometheus 会 从
http://10.10.101.114:9090/metrics 上拉取数据。
Prometheus 是可以在运行时自动加载配置的。启动时需要添加:–web.enable-lifecycle

2.2 安装 Pushgateway

Prometheus 在正常情况下是采用拉模式从产生 metric 的作业或者 exporter(比如专门监控主机的 NodeExporter)拉取监控数据。但是我们要监控的是 Flink on YARN 作业,想要让 Prometheus 自动发现作业的提交、结束以及自动拉取数据显然是比较困难的。
PushGateway 就是一个中转组件,通过配置 Flink on YARN 作业将 metric 推到
PushGateway,Prometheus 再从 PushGateway 拉取就可以了。

2.2.1 上传安装包

上传 pushgateway-1.4.1.linux-amd64.tar.gz 到虚拟机的/opt/software 目录

2.2.2 解压安装包

➢ 解压到/opt/module 目录下
tar -zxvf pushgateway-1.4.1.linux-amd64.tar.gz -C
/opt/module
➢ 修改目录名
mv pushgateway-1.4.1.linux-amd64 pushgateway-1.4.1

2.3 安装 Alertmanager(选择性安装)

2.3.1 上传安装包

上传 alertmanager-0.23.0.linux-amd64.tar.gz 到虚拟机的/opt/software 目录

2.3.2 解压安装包

➢ 解压到/opt/module 目录下
tar -zxvf alertmanager-0.23.0.linux-amd64.tar.gz -C
/opt/module
➢ 修改目录名
mv alertmanager-0.23.0.linux-amd64 alertmanager-0.23.0

2.4 安装 Node Exporter(选择性安装)

在 Prometheus 的架构设计中,Prometheus Server 主要负责数据的收集,存储并且对外提供数据查询支持,而实际的监控样本数据的收集则是由 Exporter 完成。因此为了能够监控到某些东西,如主机的 CPU 使用率,我们需要使用到 Exporter。Prometheus 周期性的从 Exporter 暴露的 HTTP 服务地址(通常是/metrics)拉取监控样本数据。
Exporter 可以是一个相对开放的概念,其可以是一个独立运行的程序独立于监控目标以外,也可以是直接内置在监控目标中。只要能够向 Prometheus 提供标准格式的监控样
本数据即可。
为了能够采集到主机的运行指标如 CPU, 内存,磁盘等信息。我们可以使用 Node Exporter。Node Exporter 同样采用 Golang 编写,并且不存在任何的第三方依赖,只需要下载,解压即可运行。可以从 https://prometheus.io/download/ 获取最新的 node
exporter 版本的二进制包。

2.4.1 上传安装包

上传 node_exporter-1.2.2.linux-amd64.tar.gz 到虚拟机的/opt/software 目录

2.4.2 解压安装包

➢ 解压到/opt/module 目录下
tar -zxvf node_exporter-1.2.2.linux-amd64.tar.gz -C /opt/module
➢ 修改目录名
mv node_exporter-1.2.2.linux-amd64 node_exporter-1.2.2
➢ 启动并通过页面查看是否成功
执行./node_exporter
浏览器输入:http://hadoop202:9100/metrics,可以看到当前 node exporter 获取
到的当前主机的所有监控数据。
在这里插入图片描述

2.4.3 节点分发

➢ 将解压后的目录分发到要监控的节点

xsync node_exporter-1.2.2

xsync同步脚本直通车
➢ 修改 Prometheus 配置文件 prometheus.yml,在 2.1.3 的时候已经添加过配置

- targets: ['10.10.101.114:9100','10.10.101.115:9100','10.10.101.116:9100']
2.4.4 设置为开机自启

➢ 创建 service 文件

sudo vim /usr/lib/systemd/system/node_exporter.service
[Unit]
Description=node_export
Documentation=https://github.com/prometheus/node_exporter
After=network.target
[Service]
Type=simple
User=root
ExecStart= /opt/module/node_exporter-1.2.2/node_exporter
Restart=on-failure
[Install]
WantedBy=multi-user.target

➢ 分发文件
sudo xsync /usr/lib/systemd/system/node_exporter.service
➢ 设为开机自启动(所有机器都执行)
sudo systemctl enable node_exporter.service
➢ 启动服务(所有机器都执行)
sudo systemctl start node_exporter.service

2.5 启 动 Prometheus Server 、 Pushgateway 和Alertmanager

2.5.1 Prometheus Server 目录下执行启动命令
nohup ./prometheus --config.file=prometheus.yml > ./prometheus.log 2>&1 &
ps -ef |grep prometheus
2.5.2 Pushgateway 目录下执行启动命令
nohup ./pushgateway --web.listen-address :9091 > ./pushgateway.log 2>&1 &
ps -ef |grep pushgateway
2.5.3 在 Alertmanager 目录下启动
nohup ./alertmanager --config.file=alertmanager.yml > ./alertmanager.log 2>&1 &
ps -ef |grep alertmanager
2.5.4 打开 web 页面查看

➢ 浏览器输入:http://10.10.101.114:9090/
➢ 点击 Status,选中 Targets:
在这里插入图片描述
➢ prometheus、pushgateway 和 node exporter 都是 up 状态,表示安装启动成功:
在这里插入图片描述
至此Prometheus主服务部署完成。

第3章 PromQL的介绍使用

PromQL直通车
持续更新中,关注不迷糊

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

深度学习目标检测】二十、基于深度学习的雾天行人车辆检测系统-含数据集、GUI和源码(python,yolov8)

雾天车辆行人检测在多种场景中扮演着至关重要的角色。以下是其作用的几个主要方面&#xff1a; 安全性提升&#xff1a;雾天能见度低&#xff0c;视线受阻&#xff0c;这使得驾驶者和行人在道路上的感知能力大大降低。通过车辆行人检测技术&#xff0c;可以在雾天条件下及时发现…

c++ Qt 网络连接

1、基础概念 1.1 TCP/UDP TCP 是一种面向连接的传输层协议&#xff0c;它能提供高可靠性通信(即数据无误、数据无丢失、 数据无失序、数据无重复到达的通信) 适用情况&#xff1a; 1.SN/QQ等即时通讯软件的用户登录账户管理相关的功能通常采用TCP协议 2、适合于对传输质量要求较…

[C++]使用C++部署yolov9的tensorrt模型进行目标检测

部署YOLOv9的TensorRT模型进行目标检测是一个涉及多个步骤的过程&#xff0c;主要包括准备环境、模型转换、编写代码和模型推理。 首先&#xff0c;确保你的开发环境已安装了NVIDIA的TensorRT。TensorRT是一个用于高效推理的SDK&#xff0c;它能对TensorFlow、PyTorch等框架训…

kubectl 命令行管理K8S

目录 陈述式资源管理方法 1.基本信息查看 查看版本信息 查看资源对象简写 查看集群信息 配置kubectl自动补全 node节点查看日志 查看 master 节点状态 查看命名空间 查看default命名空间的所有资源 创建命名空间yy 删除命名空间yy 在命名空间kube-public 创建副本…

户用光伏设计和工商业光伏设计有什么区别?

随着全球对可再生能源需求的不断增长&#xff0c;光伏技术作为一种高效、清洁的能源解决方案&#xff0c;正受到越来越多的关注。在光伏系统的设计和安装过程中&#xff0c;户用光伏和工商业光伏之间存在显著的差异。本文将探讨这两种类型的光伏设计之间的主要区别。 一、目标与…

List去重有几种方式

目录 1、for循环添加去重 2、for 双循环去重 3、for 双循环重复坐标去重 4、Set去重 5、stream流去重 1、for循环添加去重 List<String> oldList new ArrayList<>();oldList.add("张三");oldList.add("张三");oldList.add("李四&q…

Linux提权—服务漏洞,以MySQL-UDF提权为例

UDF(user defined function&#xff0c;用户自定义函数) 利用条件&#xff1a; 有对MySQL数据库进行创建&#xff0c;插入&#xff0c;删除的权限 secure_file_priv为空 利用过程 secure_file_priv的值为空或者是我们恰巧需要用到的目录&#xff0c;如下&#xff1a; 提权成…

MATLAB环境下一种改进的瞬时频率(IF)估计方法

相对于频率成分单一、周期性强的平稳信号来说&#xff0c;具有非平稳、非周期、非可积特性的非平稳信号更普遍地存在于自然界中。调频信号作为非平稳信号的一种&#xff0c;由于其频率时变、距离分辨率高、截获率低等特性&#xff0c;被广泛应用于雷达、地震勘测等领域。调频信…

C# OpenVINO PaddleSeg实时人像抠图PP-MattingV2

目录 效果 项目 代码 下载 C# OpenVINO 百度PaddleSeg实时人像抠图PP-MattingV2 效果 项目 代码 using OpenCvSharp; using Sdcb.OpenVINO; using System; using System.Diagnostics; using System.Drawing; using System.Security.Cryptography; using System.Text; us…

mysql 2-21

约束的分类 添加约束 查看表约束 非空约束 唯一性约束 复合的唯一性约束 只要有一个字段不重复&#xff0c;就可以添加成功 主键约束 自增列 mysql 8.0具有持久化&#xff0c;重启服务器会继续自增 外键约束 创建外键 关联必须有唯一性约束&#xff0c;或者是主键 约束等级 …

HashMap的put()方法执行流程

HashMap的数据结构在jdk1.8之前是数组链表&#xff0c;为了解决数据量过大、链表过长是查询效率会降低的问题变成了数组链表红黑树的结构&#xff0c;利用的是红黑树自平衡的特点。 链表的平均查找时间复杂度是O(n)&#xff0c;红黑树是O(log(n))。 HashMap中的put方法执行过…

MySQL认证方法介绍

阅读本文之前请参阅----MySQL 数据库安装教程详解&#xff08;linux系统和windows系统&#xff09; MySQL数据库的认证方法对于确保数据安全和维护系统完整性至关重要。在MySQL中&#xff0c;有多种认证方法可供选择&#xff0c;每种方法都有其特定的用途和配置方式。本文将详细…

Odoo系统安装部署并结合内网穿透实现固定域名访问本地ERP系统

文章目录 前言1. 下载安装Odoo&#xff1a;2. 实现公网访问Odoo本地系统&#xff1a;3. 固定域名访问Odoo本地系统 前言 Odoo是全球流行的开源企业管理套件&#xff0c;是一个一站式全功能ERP及电商平台。 开源性质&#xff1a;Odoo是一个开源的ERP软件&#xff0c;这意味着企…

九州金榜|家庭教育小技巧分享

说到家庭教育&#xff0c;每个做父母的都会有一套自己的理论&#xff0c;家庭教育也是每个家长必须学会的知识&#xff0c;下面九州金榜金榜家庭教育就为大家带来一些教育教育小技巧&#xff0c;助大家在家庭教育中得到一些启示&#xff1a; 一、树立榜样 为孩子树立好榜样&a…

【C语言基础】:操作符详解(二)

文章目录 操作符详解一、上期扩展二、单目操作符三、逗号表达式四、下标访问[]、 函数调用()五、结构成员访问操作符六、操作符的属性&#xff1a;优先级、结合性1. 优先级2. 结合性 操作符详解 上期回顾&#xff1a;【C语言基础】&#xff1a;操作符详解(一) 一、上期扩展 …

测试C#使用ViewFaceCore实现图片中的人脸遮挡

基于ViewFaceCore和DlibDotNet都能实现人脸识别&#xff0c;准备做个遮挡图片中人脸的程序&#xff0c;由于暂时不清楚DlibDotNet返回的人脸尺寸与像素的转换关系&#xff0c;最终决定使用ViewFaceCore实现图片中的人脸遮挡。   新建Winform项目&#xff0c;在Nuget包管理器中…

Windows常用协议

LLMNR 1. LLMNR 简介 链路本地多播名称解析(LLMNR)是一个基于域名系统(DNS)数据包格式的协议,可用于解析局域网中本地链路上的主机名称。它可以很好地支持IPv4和IPv6&#xff0c;是仅次于DNS 解析的名称解析协议。 2.LLMNR 解析过程 当本地hosts 和 DNS解析 当本地hosts 和 …

安装python的docker库

文章目录 一、在线安装二、制作离线安装包2.1 报错处理 一、在线安装 先确定是否有pip命令。 yum install python-pip直接安装。 pip install docker查看docker库。 pip list二、制作离线安装包 在有互联网的环境下直接安装。 #docker为下载下来的包名。 pip download do…

CCF-A类ASE‘ 24 6月7日截稿!共同探讨软件工程领域的未来!

会议之眼 快讯 第39届ASE (International Conference on Automated Software Engineering)即自动化软件工程国际会议将于 2024 年 10月27-11月1日在美国加利福尼亚州萨克拉门托举行&#xff01; ASE会议作为自动化软件工程领域的首要研究会议&#xff0c;承载着全球自动化软件工…

《高考》期刊杂志投稿邮箱知网教育类期刊发表

《高考》杂志是由国家新闻出版总署批准的正规教育类期刊。主要宣传高中新课程改革的专业性&#xff0c;是教育管理工作者、高中一线教师交流经验、探讨问题的重要平台&#xff0c;期刊突出政策性、针对性、指导性&#xff0c;是一本以教育科研成果展示为主&#xff0c;兼具教育…