Prometheus

SpringCloud 应用在 Kubernetes 上的最佳实践 -- 线上发布

梦想与她 提交于 2020-08-13 07:17:05
前言 在应用发布上线的时候我们最担心的莫过于因为代码的bug引发业务的问题,虽然我们可以通过灰度的方式分批发布减小影响范围,但是如果能够在发布的过程中从实时监控中快速的发现问题进行回滚,那么就能缩短业务受影响的时间。因此我们可以看到灰度、监控、回滚是整个发布过程中不可或缺的三大利器,有了这三大利器后,我们能够做到随时发布,从而加快业务的迭代和上线速度。而监控作为基础设施的一个重要环节,是保障生产环境服务稳定不可或缺的一部分,目前EDAS提供了非常丰富的监控能力,下面我们从不同的场景来详细介绍一下这些监控能力。 体系化监控能力搭建 监控体系,最怕的就是有覆盖不到的地方,一个覆盖全面的监控应该是从基础设施到上层应用均有对应的手段去覆盖: 首先,如果故障产生时,最先感知到的其实是业务的受损,如交易量下跌、登陆的 UV 下跌等等。 而如果继续往下钻,如果业务集群很大的时候,我们最先需要定位到某一个服务或者某一台机器,这个过程如果没有相应的工具相佐犹如大海捞针,所以一个分布式链路级别的应用监控会是建设 Spring Cloud 应用的很好的配搭。 等到我们找到了相应的服务要开始进行定位分析的时候,根据问题类型(是错是慢?)接下来需要开始分析 JVM、内存、CPU 等维度的指标。 最后我们可能会发现这个问题是由于业务代码引起,也有可能由于基础设施引起,而在 K8S 中,Prometheus

1.安装部署及简单监控

折月煮酒 提交于 2020-08-13 06:45:58
1,安装部署 1,环境准备。 IP地址 角色 192.168.75.11 Prometheus Server 192.168.75.10 node_exporter 版本: 测试通过系统:CentOS Linux release 7.7.1908 (Core) Prometheus:prometheus-2.19.0.linux-amd64.tar.gz Alertmanager:alertmanager-0.20.0.linux-amd64.tar.gz node_exporter:node_exporter-1.0.0.linux-amd64.tar.gz 软件包下载地址: https://prometheus.io/download/ 2,部署Prometheus Server 1,下载安装包 cd /usr/local/src/ wget https://github.com/prometheus/prometheus/releases/download/v2.19.0/prometheus-2.19.0.linux-amd64.tar.gz wget https://github.com/prometheus/alertmanager/releases/download/v0.20.0/alertmanager-0.20.0.linux-amd64.tar.gz wget

2.Prometheus邮件报警配置

时光总嘲笑我的痴心妄想 提交于 2020-08-13 04:22:25
1、安装配置 Alertmanager wget https://github.com/prometheus/alertmanager/releases/download/v0.20.0/alertmanager-0.20.0.linux-amd64.tar.gz tar -zxv -f alertmanager-0.20.0.linux-amd64.tar.gz -C /usr/local cd /usr/local mv alertmanager-0.20.0.linux-amd64/ alertmanager 2,创建启动文件 vim /usr/lib/systemd/system/alertmanager.service [Unit] Description=alertmanager Documentation=https://github.com/prometheus/alertmanager After=network.target [Service] Type=simple User=prometheus ExecStart=/usr/local/alertmanager/alertmanager --config.file=/usr/local/alertmanager/alert-test.yml --storage.path=/usr/local

云原生在京东丨揭秘五大云原生项目在京东的落地实践

≡放荡痞女 提交于 2020-08-13 00:21:43
如今,云原生被企业和开发者奉为一种标准,并被认为是云计算的未来。 严格来说, 云原生并不是一个产品的名称,而是一套技术体系和一套方法论,它包括 DevOps、持续交付、微服务、容器、敏捷基础设施等内容。 云原生(Cloud Native)概念在 2013 年被首次提出,在云原生技术全面爆发之前,我们开发的应用可以被称为非云原生应用,非云原生应用并没有考虑到应用的弹性和规模性,甚至很多都不具备扩展性,当业务规模扩大时,特别依赖硬件的升级,进而带来了很多问题。 京东在每年的 618、11.11 都会面临海量数据和流量增长,从前端网站、订单、结算、支付、搜索、推荐,到后端的仓储、配送、客服、售后各种业务系统都面临着前所未有的挑战。因此,京东自然需要一个灵活的、有弹性的、可规模化扩展的平台,这也决定了京东从很早开始就拥抱云原生。 京东目前运营着全球 最大规模的 Docker 集群、Kubernetes 集群 ,以及最复杂的 Vitess 集群之一,基本实现了“All in Containers”,是目前全球容器化最彻底的互联网企业之一。 京东作为容器技术先行者,早在 2014 年,就率先将 Docker 容器技术大规模应用至生产环境。在 2016 年初开始实践 Kubernetes,在2017年初基于 Vitess 构建起弹性数据库,并且自研京东“阿基米德”调度系统

3.配置Grafana Dashboard

女生的网名这么多〃 提交于 2020-08-12 23:58:09
本次我们通过部署 Grafana 来进行图形展示,Grafana 为我们提供了非常多的图形模板。 Grafana 官网: https://grafana.com/ 1、下载安装 Grafana 我们使用最简单的 RPM 包方式来安装,下载链接: https://grafana.com/grafana/download wget https://dl.grafana.com/oss/release/grafana-7.0.3-1.x86_64.rpm yum install grafana-7.0.3-1.x86_64.rpm 运行 Grafana 服务,默认监听在 TCP/3000 的端口上,默认用户名和密码为 “admin”。 访问地址: http://192.168.75.11:3000 , 首次登陆后可以重新设置密码,也可以跳过设置,使用默认的密码 systemctl start grafana-server systemctl enable grafana-server 2、配置 Grafana 添加数据源 填写对应的配置信息。 Name:定义数据源的名字; Type:数据源类型; URL:Prometheus 服务的IP地址和端口; 其他保持默认,然后点击测试并保存。 3,导入 Dashboard 模板 在 Grafana 官方提供了众多的 Dashboard

基于docker搭建Prometheus+Grafana监控报警系统

自闭症网瘾萝莉.ら 提交于 2020-08-12 14:28:19
下载prometheus等镜像: # prometheus镜像 docker pull docker.io/prom/prometheus # grafana镜像 docker pull docker.io/grafana/grafana # node-exporter:监控系统信息,这里先写下,暂时不用 docker pull docker.io/prom/node-exporter 一. Prometheus安装 1.1 编辑配置文件prometheus.yml 简单期间,本文使用Docker方式安装,其他方式安装请详见 Prometheus安装说明 。 # 第一步:建立相应文件夹 mkdir -p /opt/prometheus mkdir -p /opt/prometheus/server # mkdir -p /opt/prometheus/client touch /opt/prometheus/server/rules.yml # 后面报警系统使用 chmod 777 /opt/prometheus/server/rules.yml # 第二步:编辑配置文件prometheus.yml cd /opt/prometheus/ vi prometheus.yml # 第三步:prometheus.yml内容如下: 更多配置项详见 Prometheus

如何自动扩展K8S存储池容量?

吃可爱长大的小学妹 提交于 2020-08-12 08:11:04
Portworx技术视频系列:通过PX-AutoPilot自动扩展存储池容量 https://v.qq.com/x/page/w3102db86te.html请添加链接描述 欢迎来到Portworx技术系列视频,我是Ryan Wallner。今天我们来介绍一下存储容量管理。Portworx Autopilot,我们会专门介绍一下存储池扩充、容量管理,这样可以让用户基于一些提前设定的规则引擎,自动的添加磁盘。Portwortx Autopilot可以自动化的管理容量,自动化的运维,例如添加磁盘,扩充PVCs,或者在存储池里扩充磁盘。这些操作可以通过脚本自动执行,也可以手动方式,但都是以K8S云原生的方式来进行的,定义YAML文件,给予Portworx权限来做这些事情。 当你完成了Portworx的配置,为每个节点配置了每个100G的磁盘,假如是云中,我们使用EBS,这样我们就为PVCs设定了一个Portworx存储池,总共300G。应用会使用PVCs,后续可能有更多的应用,数据库,服务会运行在K8S上,当它们开始使用存储容量的时候,假设它们使用了150G的空间。这是所有存储容量的一半。我们如何来管理这些容量?如何触发动作呢?我们来看一下Autopilot是怎么做的。 当你安装了Portworx,开始使用Autopilot,你会需要Prometheus,Prometheus的作用

【过关斩将】运维老鸟带教你如何精通运维

梦想与她 提交于 2020-08-12 07:00:27
文章目录 前言 一. 你的困惑在哪里? 1. 关于学习与公司的区别 2. 这么多我该学哪一个? 二. 如何才能学精通运维 三. 最核心的问题来了 总结 前言 我经常说一句话: 运维行业入门容易,精通难。 为什么? 因为运维学的东西又多又杂; 需要了解网络,学习系统基础操作,熟悉数据库,熟悉基础服务,熟悉自动化工具,虚拟化,容器,监控,故障排查等等。 而且随便一个点都有无数的工具需要掌握,比如监控: zabbix,grafana, cacti,天兔,prometheus,nagios,monit,ganglia,zenoss,open-falcon等等。 每一个工具又有无数的插件和模块,比如prometheus,与grafana结合,与微信结合,与邮件结合,与钉钉结合,单机模式,分布式,与数据库结合,与存储结合,与硬件结合,太多了,多到不想写。 很多人学着学着就放弃了,所以今天我们就一起来探讨下,运维到底该如何学。 一. 你的困惑在哪里? 这个问题比较好,你的困惑在哪里呢? 我调查了数百名小伙伴,大家普遍的困惑就是: 学的在公司能用上吗? 来源: oschina 链接: https://my.oschina.net/u/4349274/blog/4463621

使用envoy在k8s中作grpc的负载均衡

岁酱吖の 提交于 2020-08-12 01:12:53
1. 为我们的应用创建headless服务 在Kubernetes中,有一种称为headless服务的特定服务,恰好与Envoy的STRICT_DNS服务发现模式一起使用时非常方便。 Headless服务不会为底层Pod提供单个IP和负载平衡,而只是具有DNS配置,该配置为我们提供了一个A记录,其中包含与标签选择器匹配的所有Pod的Pod IP地址。我们希望在实现负载平衡并自己维护与上游Pod的连接的情况下使用此服务类型,这正是我们使用Envoy可以做到的。 我们可以通过将.spec.clusterIP字段设置为“None”来创建headless服务。因此,假设我们的应用程序pod的标签app的值为myapp,我们可以使用以下yaml创建headless服务。 现在,如果我们在Kubernetes集群中检查服务的DNS记录,我们将看到带有IP地址的单独的A记录。如果我们有3个Pod,则会看到与此类似的DNS摘要。 $ nslookup myapp Server: 10.40 . 0.10 Address: 10.40 . 0.10 # 53 Non - authoritative answer: Name: myapp. namespace .svc.cluster.local Address: 10.36 . 224.5 Name: myapp. namespace .svc

节省服务器成本50%以上!独角兽完美日记电商系统容器化改造实践

两盒软妹~` 提交于 2020-08-11 23:08:42
完美日记创立于2017年,这家公司上线不到两年即成为天猫彩妆销冠,2019年成为11年来第一个登上天猫双十一彩妆榜首的国货品牌,包揽天猫2019全年彩妆销冠;2020年4月成为首个亮相天猫超级品牌日的国货彩妆品牌,同时勇破彩妆品牌销售纪录。另外,完美日记已在全国各地开设了100家线下店,计划至2022年底开店超600家。截至2020年4月,品牌SKU超过700个,全网用户粉丝数量超过2500万,月曝光量10亿+。 “轻研发、重营销”是流量思维企业的通病,为了“打造互联网时代新的美妆集团”,在依靠流量和营销快速占据市场的同时,完美日记也在不断夯实其技术底座。今年4月,完美日记已完成IT系统全面容器化,保证了每一次大促活动的系统稳定性和可用性,同时利用阿里云ACK容器快速弹性扩缩容,节约服务器成本50%以上。 1、完美日记容器化改造之路 对于一家创业公司而言,常常有三个问题摆在面前: 如何高效、低成本地搭建系统,同时确保安全稳定? 如何敏捷构建和发布应用,满足业务需求? 如何提高团队开发效率,确保开发质量? 早期大部分互联网公司都是直接购买服务器,租用IDC机房的机架部署,应用是直接运行在物理机上,如果要扩展必须购买新的服务器。IDC会频繁出现各种故障,如果遇到IDC迁移就更麻烦,必须半夜搬机器,天亮前上线,对于企业来说,在成本、服务稳定性、工作效率上都是很大的消耗。