prometheus和metrucs-server (k8s监控)
- 资源指标:metrucs-server
- 自定义指标:prometheus, k8s-prometheus-adapter(转换prometheus数据的格式)
- 新一代架构:
- 核心指标流水线:由kubelet、metrics-server以及由API server提供的api组成;CPU累积使用率、内存实时使用率、
- Pod的资源占用率及容器的磁盘占用率;
- 监控流水线:用于从系统收集各种指标数据并提供终端用户、存储系统以及HPA,它们包含核心指标及许多非核心指
- 标。非核心指标本身不能被k8s所解析,
- metrics-server:API server
- #kube-aggregator()
#部署metrucs-server(使用kubectl top)
- #github
- https://github.com/kubernetes-incubator/metrics-server
- git clone https://github.com/kubernetes-incubator/metrics-server
- cd metrics-server
- #修改配置文件metrics-server-deployment.yaml
- vim deploy/1.8+/metrics-server-deployment.yaml
- apiVersion: v1
- kind: ServiceAccount
- metadata:
- name: metrics-server
- namespace: kube-system
- ---
- apiVersion: extensions/v1beta1
- kind: Deployment
- metadata:
- name: metrics-server
- namespace: kube-system
- labels:
- k8s-app: metrics-server
- spec:
- selector:
- matchLabels:
- k8s-app: metrics-server
- template:
- metadata:
- name: metrics-server
- labels:
- k8s-app: metrics-server
- spec:
- serviceAccountName: metrics-server
- volumes:
- # mount in tmp so we can safely use from-scratch images and/or read-only containers
- - name: tmp-dir
- emptyDir: {}
- containers:
- - name: metrics-server
- image: k8s.gcr.io/metrics-server-amd64:v0.3.1
- imagePullPolicy: Always
- command:
- - /metrics-server
- - --kubelet-insecure-tls
- - --kubelet-preferred-address-types=InternalIP
- volumeMounts:
- - name: tmp-dir
- mountPath: /tmp
#导入文件
- kubectl create -f deploy/1.8+/
- #查看
- ##查看
- kubectl -n kube-system get pods -l k8s-app=metrics-server
- kubectl api-versions
- #使用kube-proxy打开端口8080监听
- kubectl proxy --port=8080
- #过一会使用kubelet top
- [root@k8s-m 1.8+]# curl http://localhost:8080/apis/metrics.k8s.io/v1beta1/nodes
- {
- "kind": "NodeMetricsList",
- "apiVersion": "metrics.k8s.io/v1beta1",
- "metadata": {
- "selfLink": "/apis/metrics.k8s.io/v1beta1/nodes"
- },
- "items": [
- {
- "metadata": {
- "name": "k8s-m",
- "selfLink": "/apis/metrics.k8s.io/v1beta1/nodes/k8s-m",
- "creationTimestamp": "2019-01-02T08:12:49Z"
- },
- "timestamp": "2019-01-02T08:11:46Z",
- "window": "30s",
- "usage": {
- "cpu": "391134684n",
- "memory": "1245640Ki"
- }
- },
- {
- "metadata": {
- "name": "node",
- "selfLink": "/apis/metrics.k8s.io/v1beta1/nodes/node",
- "creationTimestamp": "2019-01-02T08:12:49Z"
- },
- "timestamp": "2019-01-02T08:11:44Z",
- "window": "30s",
- "usage": {
- "cpu": "63170360n",
- "memory": "962660Ki"
- }
- }
- ]
- }
- #使用top
- [root@k8s-m 1.8+]# kubectl top nodes
- NAME CPU(cores) CPU% MEMORY(bytes) MEMORY%
- k8s-m 110m % 1216Mi %
- node 61m % 941Mi %
- [root@k8s-m 1.8+]# kubectl top pod
- NAME CPU(cores) MEMORY(bytes)
- nginx-pod 0m 2Mi
#安装prometheus+Grafana
- #下载yaml
- git clone https://github.com/zhangbin804/k8s.git
- #导入文件
- kubectl create -f node-exporter.yaml
- kubectl apply -f prometheus/
- kubectl apply -f grafana/
- #查看30003端口服务
- http://宿主机IP:30003/graph
#访问Grafana
[root@k8s-m k8s]# kubectl get svc -n kube-system|grep grafana
grafana NodePort 10.108.93.180 <none> 3000:32094/TCP 23m
#账号和密码都是admin
#添加数据源
#模板导入
模板地址:https://grafana.com/dashboards
#找一个模板下载下来
#导入模板文件
#导入
#查看
prometheus和metrucs-server (k8s监控)的更多相关文章
- 详细教程丨使用Prometheus和Thanos进行高可用K8S监控
本文转自Rancher Labs 介 绍 Prometheus高可用的必要性 在过去的几年里,Kubernetes的采用量增长了数倍.很明显,Kubernetes是容器编排的不二选择.与此同时,Pro ...
- 基于Prometheus搭建SpringCloud全方位立体监控体系
前提 最近公司在联合运维做一套全方位监控的系统,应用集群的技术栈是SpringCloud体系.虽然本人没有参与具体基础架构的研发,但是从应用引入的包和一些资料的查阅大致推算出具体的实现方案,这里做一次 ...
- Prometheus基于consul自动发现监控对象 https://www.iloxp.com/archive/11/
Prometheus 监控目标为什么要自动发现 频繁对Prometheus配置文件进行修改,无疑给运维人员带来很大的负担,还有可能直接变成一个“配置小王子”,即使是配置小王子也会存在人为失误的情况 ...
- 基于 prometheus 的微服务指标监控
基于prometheus的微服务指标监控 服务上线后我们往往需要对服务进行监控,以便能及早发现问题并做针对性的优化,监控又可分为多种形式,比如日志监控,调用链监控,指标监控等等.而通过指标监控能清晰的 ...
- 简单4步,利用Prometheus Operator实现自定义指标监控
本文来自Rancher Labs 在过去的文章中,我们花了相当大的篇幅来聊关于监控的话题.这是因为当你正在管理Kubernetes集群时,一切都会以极快的速度发生变化.因此有一个工具来监控集群的健康状 ...
- Golang 基于Prometheus Node_Exporter 开发自定义脚本监控
Golang 基于Prometheus Node_Exporter 开发自定义脚本监控 公司是今年决定将一些传统应用从虚拟机上迁移到Kubernetes上的,项目多而乱,所以迁移工作进展缓慢,为了建立 ...
- 1. SQL Server服务器监控实现方法
对于服务器的监控,和对数据库的监控,很少有合二为一的工具,如果有的话,一般是付费软件,或者自行开发的工具.所以如果不想购买软件,也不想花精力去开发的话,可以结合一些免费/开源的工具.自定义脚本,来完成 ...
- SQL Server Profiler监控执行语句
SQL Server Profiler监控执行语句,这个功能主要用在实时的监控对数据库执行了什么操作,从而及时有效的跟踪系统的运行. 常规配置选项,名称.模板.保存到文件(可以复用). 事件选择,可以 ...
- SQL Server Profiler监控SQL Server性能
全面掌握SQL Server Profiler 1. 原理与相关概念介绍 SQL Server Profiler,大家已经非常熟悉.常常在性能优化中使用,本文档详细介绍SQL Server ...
随机推荐
- [python] os.path.join() 与 sys.path
脚本文件本地目录挂入系统环境变量 import sys, os sys.path.append(os.pardir) print(sys.path) os.getcwd()获取当前目录路径 impor ...
- JDK动态代理Demo代码,进一步学习分析
import java.lang.reflect.InvocationHandler; import java.lang.reflect.Method; import java.lang.reflec ...
- 09 python初学 (字符串)
# 重复输出字符串 print('hello' * 2) # >>>hellohello # 字符串切片操作,最重要的!!!! print('hello'[2:]) # >&g ...
- hyperledge工具-cryptogen
参考:http://baijiahao.baidu.com/s?id=1596614770784685300&wfr=spider&for=pc cryptogen是Hyperledg ...
- JS中navigator对象详解
<code class="language-html"><!doctype html> <html> <head> <meta ...
- mysql安装-CentOS6下解压安装mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz
删除已经安装版本 yum list installed mysql [root@localhost ~]# yum list installed mysql Loaded plugins: faste ...
- copyOfRange的应用
package com.Summer_0420.cn; import java.util.Arrays; /** * @author Summer * copyOfRange的应用 */ public ...
- C语言中__attribute__ ((at())绝对定位的应用
C语言中的关键字__attribute__ ,当时大一学C语言中没有接触过,后来工作中搞RFID的蓝牙标签卡开发,用的是MSP430G2332,直接用的是绝对定位: 1 const uint8_t f ...
- 【原创】研发应该懂的binlog知识(上)
引言 为什么写这篇文章? 大家当年在学MySQL的时候,为了能够迅速就业,一般是学习一下MySQL的基本语法,差不多就出山找工作了.水平稍微好一点的童鞋呢还会懂一点存储过程的编写,又或者是懂一点索引的 ...
- Spring Cloud (十四):Spring Cloud 开源软件都有哪些?
学习一门新的技术如果有优秀的开源项目,对初学者的学习将会是事半功倍,通过研究和学习优秀的开源项目,可以快速的了解此技术的相关应用场景和应用示例,参考优秀开源项目会降低将此技术引入到项目中的成本.为此抽 ...