Open Service Mesh

2020-08-07
阅读 5 分钟
3.6k
Open Service Mesh (OSM) 是微软开源的一个轻量级,可扩展的云原生 service mesh 解决方案。其遵循了SMI 规范。并且微软承诺,会尽快交给CNCF基金会管理,这就意味着这是一个社区主导的项目,而不是微软。

使用Prometheus监控Flink

2020-07-27
阅读 9 分钟
11.5k
服务发现使配置更加容易。Prometheus支持consul,etcd,kubernetes以及各家公有云厂商自动发现。对于监控目标动态发现,这点特别契合Cloud时代,应用动态扩缩的特点。我们无法想象,在Cloud时代,需要运维不断更改配置。

一文入门Kubernetes

2020-07-26
阅读 3 分钟
2.6k
Kubernetes提供了支持复杂容器应用程序所需的一切。对于开发人员和运营人员来说,这是最便捷,最受欢迎的框架,几乎所有组织的DevOps团队都广泛使用它。

flink on native kubernetes

2020-07-17
阅读 6 分钟
4.2k
上一章讲了flink 的 application mode。今天我们主要通过该模式提交WordCount作业,并且选择的是native kubernetes。

生产环境运行gRPC服务的挑战

2020-07-17
阅读 2 分钟
2.9k
gRPC (gRPC Remote Procedure Calls) 是Google发起的一个开源远程过程调用 (Remote procedure call) 系统。该系统基于 HTTP/2 协议传输,使用Protocol Buffers 作为接口描述语言。

探究 flink1.11 Application 模式

2020-07-17
阅读 5 分钟
9.8k
这些平台旨在通过简化应用的提交来降低最终用户的使用负担。通常的做法是,会提供一个诸如管理平台的web程序,方便使用者提交应用,并且该平台集成了一些权限,监控等内容。这个管理平台我可以叫作部署服务。

Pod 就地升级4--如何判断Pod就地升级完成

2020-07-11
阅读 4 分钟
2.2k
上一章我们讲了,kubelet如何通过计算容器的hash来判断是否需要升级容器。 本文主要讲如何判断Pod就地升级完成。 在ContainerStatus中不仅有hash filed。还记录了ImageID filed。 {代码...} 关于ImageID的更加详细的讲述,大家可以参考这个系列文章的第一篇。 我们任意查看一个Pod的具体信息: {代码...} 如上 imageID: ...

Pod 就地升级3--kubelet 通过hash管理容器版本

2020-07-11
阅读 11 分钟
2.7k
当创建一个Pod的时候,kubelet会计算每个容器的hash,并且把该hash值写到ContainerStatus中,该status的定义如下:

Pod 就地升级2--Readiness gates

2020-07-11
阅读 2 分钟
5.7k
Readiness gates,又被称为pod “ready++”,该特性kubernetes1.11被引入,在kubernetes1.14 达到稳定状态。

Pod 就地升级1--Docker Image IDs

2020-07-11
阅读 5 分钟
2k
Docker 镜像是用于创建容器的只读模板,并提供了基于多层文件和路径的有序联合文件系统,该文件系统可以与其他镜像和容器共享。共享镜像层是Docker平台的基本组成部分,并且通过实现写​​时复制(COW)机制来实现。在其生命周期内,如果容器需要从提供其文件系统的只读映像中更改文件,它将在进行更改之前将文件复制到其...

详解k8s 4种类型Service

2020-07-08
阅读 6 分钟
16.4k
一个Kubernetes的Service是一种抽象,它定义了一组Pods的逻辑集合和一个用于访问它们的策略 - 有的时候被称之为微服务。一个Service的目标Pod集合通常是由[Label Selector](https://link.zhihu.com/?target=http%3A//kubernetes.kansea.com/docs/user-guide/labels/%23label-selectors) 来决定的(下面有讲一个没有选择...

Gubernator:微服务的云原生分布式速率限制

2020-07-02
阅读 6 分钟
1.3k
Gubernator不依赖于Memcache或Redis之类的外部缓存,因此不存在与相关服务的部署同步。这使得在kubernetes或nomad等编排系统中动态增加或缩小群集。

为什么你应该在docker 中使用gosu?

2020-07-01
阅读 5 分钟
4.8k
Docker容器中运行的进程,如果以root身份运行话会有安全隐患,该进程拥有容器内的全部权限,更可怕的是如果有数据卷映射到宿主机,那么通过该容器就能操作宿主机的文件夹了,一旦该容器的进程有漏洞被外部利用后果是很严重的。

您需要了解的有关Raft的5件事

2020-06-29
阅读 2 分钟
1.6k
运行分布式系统的一个基本问题是确保当节点故障时它们是可靠的。通常,CPU可能会过热,HDD可能会损坏,网络可能不可靠,可能会发生电源中断,并且这种情况还会持续下去。至关重要的是要假设会发生故障,并且我们需要一种方法来确保分布式系统可以承受故障。共识算法用于确保分布式系统具有容错能力,还用于确保节点在值...

Persistent Volumes:计算和存储分离

2020-06-29
阅读 2 分钟
2.4k
Kubernetes文档指出“管理存储与管理计算实例是一个不同的问题”。这概括了现代数据中心设计的基本原则,即从规划和部署角度出发,最好将计算和存储分开考虑。在Kubernetes中,通过诸如容器存储接口(CSI)之类的子系统,计算和存储的逻辑分离已变得越来越普遍。因此,与Kubernetes一起使用是一种强大的策略。 计算机存储...

在Kubernetes上集成Argo工作流和spark

2020-06-24
阅读 3 分钟
3.4k
在我的第一篇文章中,我谈到了Argo CD。这次是Argo Workflow,它又来自Argo项目,Kubernetes上的Spark,以及我们如何使两者一起工作。

Kubernetes中有状态应用的优雅缩容

2020-06-22
阅读 5 分钟
3.3k
将有状态的应用程序部署到Kubernetes是棘手的。 StatefulSet使它变得容易得多,但是它们仍然不能解决所有问题。最大的挑战之一是如何缩小StatefulSet而不将数据留在断开连接的PersistentVolume成为孤立对象上。在这篇博客中,我将描述该问题和两种可能的解决方案。

延迟应用启动,直到Sidecar准备就绪

2020-06-21
阅读 2 分钟
3.9k
Kubernetes在Pod中启动容器的方式出乎意料。在检查了源代码以确认我所看到的内容之后,我意识到我刚刚找到了Istio Service Mesh中一个长期存在的问题的解决方案。

k8s 部署生产vault集群

2020-06-21
阅读 9 分钟
2.8k
Vault可以在高可用性(HA)模式下运行,以通过运行多个Vault服务器来防止中断。Vault通常受存储后端的IO限制的约束,而不是受计算要求的约束。某些存储后端(例如Consul)提供了附加的协调功能,使Vault可以在HA配置中运行,而其他一些则提供了更强大的备份和还原过程。

consul架构

2020-06-19
阅读 3 分钟
3.9k
在将应用程序迁移到动态预配置的基础架构时,将面临扩展服务和管理它们之间的通信的挑战。 Consul通过提供服务发现来帮助动态应用程序的组件彼此通信。它监视每个节点和应用程序的运行状况,以便仅将运行状况正常的实例公开为可发现的。 Consul的分布式键值存储使您可以在全球基础架构中进行运行时配置更新。

Kubernetes如何高效管理节点的资源

2020-06-18
阅读 4 分钟
2.3k
kubelet是Kubernetes中的主要节点组件,它执行许多关键任务。Kubelet主要职责在: 向kube-apiserver注册节点 watch kube-apiserver中已经调度完成的Pod,并在Pod被调度完成之后告诉容器运行时(例如Docker)启动容器 监视运行中的容器并将其状态报告给kube-apiserver 执行活动性探针并在容器失败后重新启动容器 运行由ku...

使用水平Pod自动缩放器在Kubernetes上自动缩放应用程序

2020-06-18
阅读 5 分钟
1.8k
本文概述了Kubernetes中的Horizo​​ntal Pod Autoscaler(HPA)的工作方式以及使用方法。 介绍 部署具有静态配置的副本数的无状态应用不是最佳选择。 而弹性副本数目具备以下特点: 当请求率增加时,应用程序应扩大规模(即增加副本数)以保持响应速度。 当请求率降低时,应用程序应缩小规模(即减少副本数),以避免浪费...

使用Open Policy Agent实现Kubernetes Pod安全策略

2020-06-10
阅读 3 分钟
3k
在此博客文章中,首先我将讨论Pod安全策略准入控制器。然后,我们将看到Open Policy Agent如何实现Pod安全策略。实际上,Open Policy Agent被视为Pod安全策略的潜在替代方案。

Consul on Kubernetes

2020-06-10
阅读 7 分钟
2.9k
consul 发展到今日,早已不是只用于服务发现和配置共享的工具了。官方对其的定义是自动化网络配置,发现服务并启用跨任何云或运行时的安全连接。

Linkerd 2.8:简单,安全的多集群Kubernetes服务网格

2020-06-10
阅读 2 分钟
1.8k
我们很高兴宣布Linkerd 2.8的发布!该版本为Linkerd引入了一个新的多集群扩展,使它可以跨Kubernetes集群建立连接,这些集群对应用程序而言是安全的,透明的,并且可以与任何网络拓扑一起使用。我们认为,这是当今提供安全的Kubernetes多集群连接的最简单选择。 2.8版本还使Linkerd在附加系统的开头有了更多的模块化,并...

细数k8s支持的4种类型的container

2020-06-07
阅读 7 分钟
2.7k
截止目前k8s1.18,k8s已经支持标准容器,sidecar容器,init 容器,ephemeral 容器 4种类型的containers。本文我们详细介绍一下这4种容器的特性已经使用场景。

Kubernetes本地持久化方案

2020-06-07
阅读 6 分钟
5.5k
Kubernetes中的本地存储意味着在每个节点服务器上本地可用的存储设备或文件系统。本文介绍Kubernetes中现有的本地存储解决方案,包括官方原生支持的存储方式以及社区的一些常见方案。

Kubernetes集群node节点规格的选择

2020-06-02
阅读 6 分钟
3.1k
或者,如果您使用的是诸如Google Kubernetes Engine(GKE)之类的托管Kubernetes服务,是否应该使用八个n1-standard-1或两个n1-standard-4实例来实现所需的计算能力?

k8s部署单实例VictoriaMetrics完整教程

2020-06-02
阅读 36 分钟
2.8k
上一篇文章,我们讲述了如何利用VictoriaMetrics作为Prometheus的长期存储,来实现大规模k8s集群的监控。本文主要讲述部署单实例VictoriaMetric到k8s集群中。

使用VictoriaMetrics监控大规模Kubernetes集群

2020-05-31
阅读 4 分钟
6k
目前大多数关于Kubernetes集群监控的文章主要介绍如何使用Prometheus在Kubernetes集群上设置监控和报警系统,以及如何使用Grafana在其上建立出色的可视化系统。这本身就是一个很棒的系统,但是确实有一些问题,例如: