分类: 云原生

61 篇文章

Prometheus:监控 K8S 集群内部 ETCD
这里的环境为 Prometheus 是外部部署,而 etcd 是部署在 K8S 集群内部,从而实现对他监控 每个 etcd 服务器都/metrics在其客户端端口路径下导出指标。 11.1 ETCD 自带 metrics 验证 如果我们的 etcd 是部署在集群内部就需要通过证书认证的方式才能够拿到对应的监控指标 1.查看监控接口是否能够正常使用 …
Prometheus:实现分组告警
9 分组告警 真实的场景中,我们往往期望可以给告警设置级别,而且可以实现不同的报警级别可以由不同的receiver接收告警消息。Alertmanager中路由负责对告警信息进行分组匹配,并向告警接收器发送通知。以下为本次需要实现的目的 1、添加两个不同的告警级别的告警规则 当节点服务器 cpu15 分钟负载低于1时,发生告警,告警级别 normal…
Prometheus:常用 PromQL 监控语句总汇
4 PromQL 语句 Prometheus 提供一个函数式的表达式语言 PromQL (Prometheus Query Language),可以使用户实时地查找和聚合时间序列数据,表达式计算结果可以在图表中展示,也可以在 Prometheus 表达式浏览器中以表格形式展示,或者作为数据源, 以 HTTP API 的方式提供给外部系统使用如 gr…
istio 系列:1 istio 原理介绍和部署
[TOC] 1 istio 原理介绍和部署 1.1 什么是 serviceMesh 提到Service Mesh,就不得不提微服务。 根据维基百科的定义: 微服务(Microservices)是一种软件架构风格,它是以专注于单一责任与功能的小型功能区块(Small Building Blocks)为基础,利用模块化的方式组合出复杂的大型应用程序,各…
K8S 实战系列:Kubernetes 网络
14 K8S 网络 https://kubernetes.io/zh/docs/concepts/cluster-administration/networking/ 在 K8S 中网络非常安全,因为涉及到 pod 的各种通讯 容器网络的目的: 1.实现同一个 pod 中的不同容器通信(LNMP),一个 pod 中的容器共用底层的网络组件 2.实现…
K8S 实战系列:K8S 资源限制
13 K8S 资源限制 CPU 以核心为单位 memory 以字节为单位 requests 为 kubernetes scheduler 执行 pod 调度时 node 节点至少需要拥有的资源,如果匹配到该节点的可用资源符合 requests 的预取,就会将 pod 调度到该节点 limits 为 pod 运行成功后最多可以使用的资源上限。 kub…
K8S 实战系列:K8S pod 实现代码升级和回滚
[TOC] 11 K8S pod 实现代码升级和回滚 11.1 传统架构代码升级 传统情况下一般在虚拟机进行代码升级与回滚,在公司内部都会采用 gitlab ,gitlab 主要是让开发将代码提交,所以这个 gitlab 的安全一定要做好,别到时候代码丢了也不能泄露。 有了 gitlab 之后我们做代码部署一般使用 Jenkins,有了 Jenki…
K8S入门系列:HPA 自动伸缩控制器
10 HPA 自动伸缩控制器 kubectl autoscale 自动控制在k8s集群中运行的 pod 数量(水平自动伸缩),需要提前设置 pod 范围及触发条件。 k8s 从1.1 版本开始增加了名称为 HPA(Horizontal Pod Autoscaler) 的控制器,用于实现基于 pod 中资源(CPU/Memory) 利用率进行对 po…
K8S 实战系列:ingress 实现 7 层代理
9 ingress 实现 7 层代理 Ingress Ingress 公开了从集群外部到集群内服务的 HTTP 和 HTTPS 路由。 流量路由由 Ingress 资源上定义的规则控制。 下面是一个将所有流量都发送到同一 Service 的简单 Ingress 示例: 可以将 Ingress 配置为服务提供外部可访问的 URL、负载均衡流量、终止 …
K8S 实战系列:K8S 运行微服务案例
8 K8S 运行 dubbo + zookeeper 微服务案例 微服务的话最需要的地方就是注册中心,也就是 K8S 中跑的服务会有很多个,然后对应的服务起来之后就会注册到 zookeeper 这种注册中心,然后服务之间内部调用 这个就够就是在 K8S 中先启注册中心,这里我使用的是 zookeeper ,然后服务采用的是生产者消费者模型由开发定义…