02 2019 档案

摘要:0x00 简单的时间序列选择 返回度量指标 http_requests_total 的所有时间序列样本数据: http_requests_total http_requests_total http_requests_total 返回度量指标名称为 http_requests_total,标签分别是 阅读全文
posted @ 2019-02-27 21:11 时光飞逝,逝者如斯 阅读(1335) 评论(0) 推荐(0) 编辑
摘要:0x00 概述 Prometheus 当前稳定的 HTTP API 可以通过 /api/v1 访问。 0x01 API 响应格式 Prometheus API 使用了 JSON 格式的响应内容。 当 API 调用成功后将会返回 2xx 的 HTTP 状态码。 反之,当 API 调用失败时可能返回以下 阅读全文
posted @ 2019-02-27 21:07 时光飞逝,逝者如斯 阅读(6116) 评论(1) 推荐(0) 编辑
摘要:概述 Prometheus 提供了其它大量的内置函数,可以对时序数据进行丰富的处理。某些函数有默认的参数,例如:year(v=vector(time()) instant-vector)。其中参数 v 是一个瞬时向量,如果不提供该参数,将使用默认值 vector(time())。instant-ve 阅读全文
posted @ 2019-02-27 20:59 时光飞逝,逝者如斯 阅读(6169) 评论(0) 推荐(0) 编辑
摘要:0x00 二元运算符 Prometheus 的查询语言支持基本的逻辑运算和算术运算。对于两个瞬时向量, 匹配行为可以被改变。 算术二元运算符 在 Prometheus 系统中支持下面的二元算术运算符: + 加法 - 减法 * 乘法 / 除法 % 模 ^ 幂等 + 加法 + 加法 - 减法 - 减法 阅读全文
posted @ 2019-02-27 16:37 时光飞逝,逝者如斯 阅读(3835) 评论(0) 推荐(1) 编辑
摘要:0x00 概述 Prometheus 提供了一种功能表达式语言 PromQL,允许用户实时选择和汇聚时间序列数据。表达式的结果可以在浏览器中显示为图形,也可以显示为表格数据,或者由外部系统通过 HTTP API 调用。 0x01 表达式语言数据类型 在 Prometheus 的表达式语言中,表达式或 阅读全文
posted @ 2019-02-27 16:04 时光飞逝,逝者如斯 阅读(1410) 评论(0) 推荐(0) 编辑
摘要:https://github.com/yangchuansheng/k8s-knowledge 阅读全文
posted @ 2019-02-27 13:39 时光飞逝,逝者如斯 阅读(918) 评论(0) 推荐(0) 编辑
摘要:0x00 概述 使用 Docker 时,最常用的命令无非是 docker container 和 docker image 相关的子命令,当然最初没有管理类命令(或者说分组)的时候,最常使用的命令也无非是 docker run docker commit docker build 和 docker 阅读全文
posted @ 2019-02-26 13:11 时光飞逝,逝者如斯 阅读(3745) 评论(0) 推荐(0) 编辑
摘要:0x00 概述 这里所谓的Linux版本信息,包括Linux内核版本信息和Linux系统版本信息。 0x01 查看Linux内核版本信息 方法1:登陆Linux,在终端输入 方法2:登陆Linux,在终端输入 方法3:登陆Linux,在终端输入 0x02 查看Linux系统版本信息 方法1:登陆Li 阅读全文
posted @ 2019-02-25 19:04 时光飞逝,逝者如斯 阅读(293) 评论(0) 推荐(0) 编辑
摘要:0x00 概述 有时候对于一个公司,k8s集群或是所谓的caas只是整个技术体系的一部分,往往这个时候监控系统不仅仅要k8s集群以及k8s中部署的应用,而且要监控传统部署的项目。也就是说整个监控系统不是部署在k8s cluster中。非in-cluster的prometheus怎么监控k8s是今天需 阅读全文
posted @ 2019-02-25 18:58 时光飞逝,逝者如斯 阅读(1535) 评论(0) 推荐(0) 编辑
摘要:0x00 概述 Prometheus之于kubernetes(监控领域),如kubernetes之于容器编排。随着heapster不再开发和维护以及influxdb 集群方案不再开源,heapster+influxdb的监控方案,只适合一些规模比较小的k8s集群。而prometheus整个社区非常活 阅读全文
posted @ 2019-02-25 18:31 时光飞逝,逝者如斯 阅读(6017) 评论(0) 推荐(1) 编辑
摘要:0x00 概述 prometheus在容器云的领域实力毋庸置疑,越来越多的云原生组件直接提供prometheus的metrics接口,无需额外的exporter。所以采用prometheus作为整个集群的监控方案是合适的。但是metrics的存储这块,prometheus提供了本地存储,即tsdb时 阅读全文
posted @ 2019-02-25 11:11 时光飞逝,逝者如斯 阅读(2293) 评论(0) 推荐(1) 编辑
摘要:0x00 概述 Prometheus 是一个开源和社区驱动的监控&报警&时序数据库的项目。来源于谷歌BorgMon项目。现在最常见的Kubernetes容器管理系统中,通常会搭配Prometheus进行监控。主要监控: Node:如主机CPU,内存,网络吞吐和带宽占用,磁盘I/O和磁盘使用等指标。n 阅读全文
posted @ 2019-02-25 10:52 时光飞逝,逝者如斯 阅读(1650) 评论(0) 推荐(0) 编辑
摘要:0x00 Prometheus是什么 Prometheus是一个开源的系统监控和报警工具,特点是 多维数据模型(时序列数据由metric名和一组key/value组成) 在多维度上灵活的查询语言(PromQl) 不依赖分布式存储,单主节点工作. 通过基于HTTP的pull方式采集时序数据 可以通过p 阅读全文
posted @ 2019-02-25 10:40 时光飞逝,逝者如斯 阅读(573) 评论(0) 推荐(0) 编辑
摘要:0x00 概述 Prometheus 是一个开源监控系统,它本身已经成为了云原生中指标监控的事实标准,几乎所有 k8s 的核心组件以及其它云原生系统都以 Prometheus 的指标格式输出自己的运行时监控信息。我在工作中也比较深入地使用过 Prometheus,最大的感受就是它非常容易维护,突出一 阅读全文
posted @ 2019-02-25 10:14 时光飞逝,逝者如斯 阅读(819) 评论(0) 推荐(0) 编辑
摘要:0x00 概述 服务发现应用是很多服务化系统的组成部分,所以在开发、测试环境中也就有必要配备一套服务发现体系来配合我们的开发、测试工作。在这一小节里,我们就来谈谈如何在 Docker 环境下部署服务发现应用。 0x01 使用 Docker Compose 模拟 Zookeeper 集群 实现服务发现 阅读全文
posted @ 2019-02-20 11:10 时光飞逝,逝者如斯 阅读(244) 评论(0) 推荐(0) 编辑
摘要:0x00 概述 Java Web 泛指以 Java 程序为基础向外提供 Web 服务的技术及相关工具,狭义上来说,我们也可以说 Java Web 是由 Servlet 程序提供的 Web 服务。 对我们而言,Tomcat 无疑是最常见的 Servlet 容器,所以在这个小节里,我们来搭建一个以 To 阅读全文
posted @ 2019-02-20 11:03 时光飞逝,逝者如斯 阅读(317) 评论(0) 推荐(0) 编辑
摘要:0x00 概述 上一节里我们谈到了小型的独立项目如何使用 Docker Compose 来搭建程序的运行环境,对于由多人或多部门参与的中大型服务化架构的项目,仅由一个 Docker Compose 项目来管理它们的运行环境显然是不切实际的。在这一小节里,我们就谈谈如何在服务化开发中合理利用 Dock 阅读全文
posted @ 2019-02-20 10:49 时光飞逝,逝者如斯 阅读(544) 评论(0) 推荐(0) 编辑
摘要:0x00 概述 通过阅读之前的小节,相信大家对 Docker 在开发中的应用已经有了一定的了解。作为一款实用的软件,我们必须回归到实践中来,这样才能更好地理解 Docker 的实用逻辑和背后的原理。在这一小节里,我们就举一个完整的例子,让大家跟随这个项目的脉络,熟悉如何通过 Docker 和 Doc 阅读全文
posted @ 2019-02-20 10:36 时光飞逝,逝者如斯 阅读(524) 评论(0) 推荐(0) 编辑
摘要:0x00 概述 与 Dockerfile 一样,编写 Docker Compose 的配置文件是掌握和使用好 Docker Compose 的前提。编写 Docker Compose 配置文件,其本质就是根据我们所设计的应用架构,对不同应用容器进行配置并加以组合。在这一节中,我们就来谈谈如何编写 D 阅读全文
posted @ 2019-02-20 10:26 时光飞逝,逝者如斯 阅读(473) 评论(0) 推荐(0) 编辑
摘要:0x00 概述 通过之前的介绍,我们已经基本掌握了构建、运行容器的方法,但这还远远不够,由于 Docker 采用轻量级容器的设计,每个容器一般只运行一个软件,而目前绝大多数应用系统都绝不是一个软件所能组成的。虽然我们之前提到了容器间互相连接、交换数据的各种方法,通过这些方法足以搭建起完整的用于应用系 阅读全文
posted @ 2019-02-20 10:10 时光飞逝,逝者如斯 阅读(438) 评论(0) 推荐(0) 编辑
摘要:0x00 概述 自己编写 Dockerfile 能够很好的实现我们想要的程序运行环境,不过如果装有我们想要环境的镜像已经由热心的开发者构建好并共享在 Docker Hub 上,直接使用它们就会远比自己编写 Dockerfile 并进行构建要来的简单的多了。事实上,在开发过程中我们用到的镜像大部分还是 阅读全文
posted @ 2019-02-20 10:00 时光飞逝,逝者如斯 阅读(1385) 评论(0) 推荐(1) 编辑
摘要:0x00 概述 在掌握 Dockerfile 的基本使用方法后,我们再来了解一些在开发中使用 Dockerfile 的技巧。这一小节的展现方式与之前的略有不同,其主要来自阅读收集和我自身在使用中的最佳实践。也许这里面介绍的不是最为标准或是合乎规范的方式,但一定是能够直接帮助大家在开发中使用 Dock 阅读全文
posted @ 2019-02-20 09:50 时光飞逝,逝者如斯 阅读(3224) 评论(0) 推荐(1) 编辑
摘要:0x00 概述 由于 Docker 镜像的结构优势,使它的占用空间远小于普通的虚拟机镜像,而这就大幅减少了 Docker 镜像在网络或者其他介质中转移所花费的时间,进而提高了我们进行迁移部署的效率。不过,你要是以为这就是 Docker 能够快速部署的终极大招那就大错特错了。在这一小节里,我们将谈到 阅读全文
posted @ 2019-02-20 09:41 时光飞逝,逝者如斯 阅读(678) 评论(0) 推荐(0) 编辑
摘要:0x00 概述 让 Docker 引以为傲的是它能够实现相比于其他虚拟化软件更快的环境迁移和部署,在这件事情上,轻量级的容器和镜像结构的设计无疑发挥了巨大的作用。通过将容器打包成镜像,再利用体积远小于其他虚拟化软件的 Docker 镜像,我们可以更快的将它们复制到其他的机器上。在这一节中,我们就专门 阅读全文
posted @ 2019-02-20 09:27 时光飞逝,逝者如斯 阅读(1798) 评论(0) 推荐(0) 编辑
摘要:0x00 概述 Linux是一个多用户多任务的操作系统,可以在Linux中为不同的用户设置不同的运行环境,具体做法是设置不同用户的环境变量。 0x01 Linux环境变量分类 按照生命周期来分,Linux环境变量可以分为两类: 按照作用域来分,Linux环境变量可以分为: 0x02 Linux设置环 阅读全文
posted @ 2019-02-12 13:22 时光飞逝,逝者如斯 阅读(265) 评论(0) 推荐(0) 编辑
摘要:0x00 概述 数据是应用程序重要的产出,所以很好的管理和存储数据,是对应用程序劳动结果的尊重。特别是在大数据时代,所有的数据都是重要的资产,保护好数据是每个开发者必须掌握的技能。我们知道,在 Docker 里,容器运行的文件系统处于沙盒环境中,与外界其实是隔离的,那么我们又要如何在 Docker 阅读全文
posted @ 2019-02-11 18:06 时光飞逝,逝者如斯 阅读(568) 评论(0) 推荐(0) 编辑
摘要:0x00 概述 在互联网时代,网络已经成为绝大多数应用进行数据交换的主要通道,Docker 作为集群部署的利器,在网络支持上也下了许多功夫。功能丰富和强大,并不代表使用复杂,在 Docker 的封装下,我们依然可以通过命令和参数轻松的为容器制定不同的网络方案。在这一节中,我们就来了解 Docker 阅读全文
posted @ 2019-02-11 16:34 时光飞逝,逝者如斯 阅读(2221) 评论(0) 推荐(0) 编辑
摘要:0x00 初衷 最近参与的几个项目,无一例外对监控都有极强的要求,需要对项目中各组件进行详细监控,如服务端API的请求次数、响应时间、到达率、接口错误率、分布式存储中的集群IOPS、节点在线情况、偏移量等。 比较常见的方式是写日志,将日志采集到远端进行分析和绘图,或写好本地监控脚本进行数据采集后,通 阅读全文
posted @ 2019-02-11 16:03 时光飞逝,逝者如斯 阅读(1046) 评论(0) 推荐(0) 编辑
摘要:0x00 概述 由于使用 yum 或者 apt-get 命令 安装 openjdk 可能存在类库不全,从而导致用户在安装后运行相关工具时可能报错的问题,所以此处我们推荐采用手动解压安装的方式来安装 JDK。具体步骤如下: 0x01 下载JDK 进入 Oracle 官方网站 下载合适的 JDK 版本, 阅读全文
posted @ 2019-02-11 13:42 时光飞逝,逝者如斯 阅读(179) 评论(0) 推荐(0) 编辑
摘要:最近学习K8S和基于容器的监控,发现了如下的教程质量不错,记录下来以备参考 1. K8S最佳实战(包括了K8S的Prometheus监控和EFK日志搜集) https://jimmysong.io/kubernetes-handbook/practice/ 2. Prometheus-book ht 阅读全文
posted @ 2019-02-11 13:25 时光飞逝,逝者如斯 阅读(2355) 评论(0) 推荐(2) 编辑
摘要:0x00 概述 前几天我尝试去创建一个仅包含我们经常在 CentOS 7 下使用的软件的本地仓库。当然,我们可以使用 curl 或者 wget 下载任何软件包,然而这些命令并不能下载要求的依赖软件包。你必须去花一些时间而且手动的去寻找和下载被安装的软件所依赖的软件包。然而,我们并不是必须这样。在这个 阅读全文
posted @ 2019-02-11 10:59 时光飞逝,逝者如斯 阅读(1654) 评论(0) 推荐(0) 编辑
摘要:0x00 概述 容器是基于容器技术所建立和运行的轻量级应用运行环境,它是 Docker 封装和管理应用程序或微服务的“集装箱”。在 Docker 中,容器算是最核心的部分了,掌握容器的操作也是 Docker 中最基础的技能了。在这一节中,我们会深入了解容器,展示关于容器的操作。 0x01 容器的创建 阅读全文
posted @ 2019-02-11 10:01 时光飞逝,逝者如斯 阅读(819) 评论(0) 推荐(0) 编辑
摘要:0x00 概述 之前我们说到了,Docker 与其他虚拟化软件的一处不同就是将镜像管理纳入到了功能之中。实现虚拟化只是程序能够无缝移植的一部分,而有了镜像管理,就真正取代了我们在移植过程中的繁琐操作。利用 Docker 的镜像管理功能,我们可以很方便的通过网络传输和分享镜像,并保障镜像内容的一致性。 阅读全文
posted @ 2019-02-11 09:43 时光飞逝,逝者如斯 阅读(1461) 评论(0) 推荐(0) 编辑
摘要:0x00 概述 镜像和容器作为 Docker 里最基础的概念,我们很有必要了解 Docker 对它们的很多定义以及其他与它们有关的知识。在这一小节里,我们就专门针对镜像与容器两个概念展开,细致的梳理与这两者有关的概念和定义。 0x01 Docker 镜像 如果进行形象的表述,我们可以将 Docker 阅读全文
posted @ 2019-02-11 09:31 时光飞逝,逝者如斯 阅读(649) 评论(0) 推荐(0) 编辑