10 哎_小羊_168

尚未进行身份认证

我要认证

学会发现,学会记录,学会分享。Fighting!

等级
TA的排名 6k+

Prometheus 通过 consul 分布式集群实现自动服务发现

Consul 是基于 GO 语言开发的开源工具,主要面向分布式,服务化的系统提供服务注册、服务发现和配置管理的功能。Consul 提供服务注册/发现、健康检查、Key/Value存储、多数据中心和分布式一致性保证等功能。Prometheus 通过 Consul 可以很方便的实现服务自动发现和维护,同时 Consul 支持分布式集群部署,将大大提高了稳定性,通过 Prometheus 跟 Consul 集群二者结合起来,能够高效的进行数据维护同时保证系统稳定。

2020-03-31 22:22:05

Prometheus 通过 consul 实现自动服务发现

Consul 是基于 GO 语言开发的开源工具,主要面向分布式,服务化的系统提供服务注册、服务发现和配置管理的功能。Consul 提供服务注册/发现、健康检查、Key/Value存储、多数据中心和分布式一致性保证等功能。之前我们通过 Prometheus 实现监控,当新增一个 Target 时,需要变更服务器上的配置文件,即使使用 file_sd_configs 配置,也需要登录服务器修改对应 Json 文件,会非常麻烦。不过 Prometheus 官方支持多种自动服务发现的类型,其中就支持 Consul。

2019-11-12 09:23:07

Prometheus 使用 PushGateway 进行数据上报采集

Prometheus 是一套开源的系统监控、报警、时间序列数据库的组合,最初有 SoundCloud 开发的,后来随着越来越多公司使用,于是便独立成开源项目。Prometheus 基本原理是通过 Http 协议周期性抓取被监控组件的状态,而输出这些被监控的组件的 Http 接口为 Exporter。PushGateway 作为 Prometheus 生态中的一个重要一员,它允许任何客户端向其 Push 符合规范的自定义监控指标,在结合 Prometheus 统一收集监控。

2019-10-30 14:20:41

Spring Boot 使用 Micrometer 集成 Prometheus 监控 Java 应用性能

Micrometer 为 Java 平台上的性能数据收集提供了一个通用的 API,它提供了多种度量指标类型(Timers、Guauges、Counters等),同时支持接入不同的监控系统,例如 Influxdb、Graphite、Prometheus 等。我们可以通过 Micrometer 收集 Java 性能数据,配合 Prometheus 监控系统实时获取数据,并最终在 Grafana 上展示出来,从而很容易实现应用的监控。

2019-09-15 22:16:00

Prometheus 监控报警系统 AlertManager 之邮件告警

Prometheus 是一套开源的系统监控、报警、时间序列数据库的组合,最初有 SoundCloud 开发的,后来随着越来越多公司使用,于是便独立成开源项目。Alertmanager 主要用于接收 Prometheus 发送的告警信息,它支持丰富的告警通知渠道,例如邮件、微信、钉钉、Slack 等常用沟通工具,而且很容易做到告警信息进行去重,降噪,分组等,是一款很好用的告警通知系统。本文介绍 Prometheus 监控报警系统 AlertManager 之邮件告警

2019-08-04 21:27:40

Spring Boot 项目转容器化 K8S 部署实用经验分享

Kubernetes 是 Google 开源的容器集群管理系统,它构建在目前流行的 Docker 技术之上,为容器化的应用提供资源调度、部署运行、服务发现、扩容缩容等一整套功能,用于容器集群的自动化部署、扩容以及运维的开源平台。Spring Boot 是 Spring 框架的集成,通过该框架可以大大简化应用的搭建以、开发及部署过程,从而深受大家喜爱。之前 Spring Boot 项目大多以传统虚拟机或物理机部署方式,转容器化 K8S 集群部署的话,也是非常简单的,分享一下实际操作中的一些使用经验。

2019-07-21 17:47:23

Kubernetes 使用 PodPreset 注入信息到 Pods

PodPreset 是一种 K8s API 资源,用于在创建 Pod 时注入其他运行时需要的信息,这些信息包括 secrets、volume mounts、environment variables 等,我们可以使用标签选择器来指定某个或某些 Pod,来将 PodPreset 预设信息应用上去。使用 PodPreset 的好处就是我们可以将一些常用 Pod 预设信息配置为模板,这样就不需要显式为每个 Pod 提供所有信息,简化 Pod 初始化配置,还能起到配置统一的效果。

2019-07-07 16:03:05

使用 febootstrap 制作自定义基础镜像

febootstrap 是一个方便我们制作原生 OS 基础镜像的工具,例如 Centos、Ubuntu 等操作系统,同时还可以指定安装一些特定软件到环境镜像里头,可以使我们更方便的了解和控制基础镜像的构成,最后,通过该基础镜像在扩展成应用镜像,最终来部署服务,可以使用 febootstrap 制作自定义基础镜像

2019-06-09 20:52:01

Spring Boot 使用 Log4j2 & Logback 输出日志到 EKL

ELK 是 Elasticsearch , Logstash, Kibana 的缩写,Elasticsearch 是开源分布式搜索引擎,提供搜集、分析、存储数据等功能,Logstash 主要是用来日志的搜集、分析、过滤日志的工具,Kibana 为 Elasticsearch 提供分析和可视化的 Web 平台,可以在 Elasticsearch 的索引中查找,交互数据,并生成各种维度的表图。可以通过 Spring-boot 通过 log4j2 或 logback 自动将日志输出到 ELK 中。

2019-05-25 17:01:45

K8s 集群使用 ConfigMap 优雅加载 Spring Boot 配置文件

我们知道 Spring Boot 工程默认的配置文件名称为 application.properties,有三种方式来运行时指定运行哪个环境的配置文件,kubernetes 中可通过ConfigMap 来实现对容器中应用的配置管理,ConfigMap API 资源提供了将配置数据注入容器的方式,这里主要介绍 K8s 集群如何使用 ConfigMap 优雅加载 Spring Boot 配置文件

2019-05-12 09:48:28

Rancher 2.x 一键式部署 Prometheus + Grafana 监控 Kubernetes 集群

Prometheus 是一套开源的系统监控、报警、时间序列数据库的组合,Prometheus 基本原理是通过 Http 协议周期性抓取被监控组件的状态,而通过 Exporter Http 接口输出这些被监控的组件信息,而且已经有很多 Exporter 可供选择。Grafana 是一个可视化仪表盘,它拥有美观的图标和布局展示,功能齐全的仪表盘和图形编辑器,默认支持很多数据源类型,我们可以将 Prometheus 抓取的数据,通过 Grafana 优美的展示出来,非常直观。通过 Rancher 一键安装他们。

2019-04-01 10:40:26

Rancher 2.x 负载均衡配置及使用

Kubernetes 支持 4 层和 7 层负载均衡策略,其中 4 层负载均衡(或外部负载均衡)支持转发 HTTP、TCP 请求到 Nodeports 上去,7 层负载均衡(或 Ingress Controller)支持根据 Host、Path 的负载均衡以及 SSL 终端,因为它只支持转发 HTTP 和 HTTPS 的请求,所以它需要监听 80 和 443 端口。RKE 集群部署 7 层负载均衡底层默认支持 Nginx Ingress Controller 类型。

2019-03-19 15:50:44

Rancher 2.x 搭建及管理 Kubernetes 集群

Rancher 是一套容器管理平台,它可以帮助组织在生产环境中轻松快捷的部署和管理容器。Rancher可以轻松地管理各种环境的 Kubernetes,满足IT需求并为 DevOps 团队提供支持。Rancher 用户可以选择使用 RKE 创建 K8s 集群,也可以使用 GKE,AKS 和 EKS 等云K8s 服务。Rancher 用户还可以导入和管理现有的 Kubernetes 集群。同时 Rancher UI 为 DevOps 工程师提供了一个直观的用户界面来管理他们的服务容器。

2019-03-16 16:32:03

Docker/K8s 解决容器内时区不一致方案

使用 docker 容器启动服务后,如果使用默认 Centos 系统作为基础镜像,就会出现系统时区不一致的问题,因为默认 Centos 系统时间为 UTC 协调世界时 (Universal Time Coordinated),一般本地所属时区为 CST(+8 时区,上海时间),时间上刚好相差 8 个小时。这就导致了,我们服务启动后,获取系统时间来进行相关操作,例如存入数据库、时间换算、日志记录等,都会出现时间不一致的问题,所以很有必要解决掉容器内时区不统一的问题。

2019-03-08 10:12:58

国内环境下 Kubernetes 源码编译及运行

kubernetes 源码编译,分为本地二进制可执行文件编译和 docker 镜像编译两种,不管哪种方式,都是直接使用并不需要修改任何 k8s 代码。当我们有特殊需求时,比如需要修改 kube-proxy 对 service 的代理逻辑等,就需要修改 k8s 源码了,为了让修改的代码生效,就需要对 k8s 代码执行编译了。当然 k8s 也提供了 CRD 等可扩展插件,在不修改 k8s 源码的基础上实现自定义功能,但对于底层逻辑策略需要修改的话,还是办不到的。国内环境下 Kubernetes 源码编译及运行。

2019-02-25 15:01:12

Kubernetes 集群基于 Rook 的 Ceph 存储之块设备、文件系统、对象存储

Ceph 是一个开源的分布式存储系统,包括对象存储、块设备、文件系统。它可靠性高、管理方便、伸缩性强,能够轻松应对 PB、EB 级别数据。Rook 是专用于 Cloud-Native 环境的文件、块、对象存储服务。它实现了一个自动管理的、自动扩容的、自动修复的分布式存储服务。Rook 支持 Ceph 存储,基于 Kubernetes 使用 Rook 可以大大简化 Ceph 存储集群的搭建以及使用其块设备、文件系统、对象存储功能。

2019-01-14 09:50:12

Kubernetes 集群基于 Rook 搭建 Ceph 分布式存储系统

Rook 是专用于 Cloud-Native 环境的文件、块、对象存储服务。它实现了一个自动管理的、自动扩容的、自动修复的分布式存储服务。Rook 支持自动部署、启动、配置、分配、扩容/缩容、升级、迁移、灾难恢复、监控以及资源管理,Rook 目前支持 Ceph、NFS、Minio Object Store、Edegefs、Cassandra、CockroachDB 存储的搭建,后期会支持更多存储方案。本文将在 Kubernetes 基于 Rook 搭建 Ceph 分布式存储系统

2019-01-10 09:52:50

使用 client-go 对 Kubernetes 进行自定义开发及源码分析

client-go 是一种能够与 Kubernetes 集群通信的客户端,通过它可以对 Kubernetes 集群中各资源类型进行 CRUD 操作,它有三大 client 类,分别为:Clientset、DynamicClient、RESTClient。通过它,我们可以很方便的对 Kubernetes 集群 API 进行自定义开发,来满足个性化需求。本文介绍如何使用 client-go 对 k8s 集群进行自定义开发及源码分析。

2018-12-03 10:52:47

Kubernetes 集群使用 NFS 网络文件存储

Kubernetes PersistentVolumes 持久化存储方案中,提供两种 API 资源方式: PersistentVolume 和 PersistentVolumeClaim。PV 可理解为集群资源,PVC 可理解为对集群资源的请求,Kubernetes 支持很多种持久化卷存储类型。NFS 是网络文件存储系统,它允许网络中的计算机之间通过 TCP/IP 网络共享资源。通过 NFS,我们本地 NFS 的客户端应用可以透明地读写位于服务端 NFS 服务器上的文件,就像访问本地文件一样方便。

2018-11-12 10:46:28

Linux 环境下 NFS 服务安装及配置使用

NFS 是 Network FileSystem 的缩写,顾名思义就是网络文件存储系统,它最早是由 Sun 公司发展出来的,也是 FreeBSD 支持的文件系统中的一个,它允许网络中的计算机之间通过 TCP/IP 网络共享资源。通过 NFS,我们本地 NFS 的客户端应用可以透明地读写位于服务端 NFS 服务器上的文件,就像访问本地文件一样方便。简单的理解,NFS 就是可以透过网络,让不同的主机、不同的操作系统可以共享存储的服务。

2018-11-06 10:25:05

查看更多

勋章 我的勋章
  • 签到王者
    签到王者
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 分享达人
    分享达人
    成功上传6个资源即可获取