什么是Ingress Ingress是kubernetes中用来对集群外部进来的请求进行负载、路由控制的一种机制。通过ingress,可以方便的将集群内的service以http或https方式对外提供服务,而且不用将各个服务再单独暴露。Ingress功能由Ingress resource和Ingr Read More
前言 本文通过两个简单的服务之间的访问,结合tcpdump抓包,详细分析下在IPVS模式下,kubernetes实现通过服务名称访问NodePort、ClusterIp类型的service的原理。 当然kubernetes网络实现牵扯到很多知识,特别是对Linux低层的模块的各种调用,如果对Linu Read More
前言 在kubernets集群的每个节点上都运行着kube proxy进程,负责实现Kubernetes中service组件的虚拟IP服务。目前kube proxy有如下三种工作模式: User space 模式 iptables 模式 IPVS 模式 1. User space模式 在这种模式下, Read More
部署nfs provisioner "external storage nfs" 1. 创建工作目录 1. 下载nfs provisioner对应的镜像,上传到自己的私有镜像中 1. 编辑启动nfs provisioner的deploy.yml文件 volumes.persistentVolumeC Read More
总体设计思想 1. 总体设计架构图 "Kubernetes monitoring architecture" 1. 设计介绍 监控分成两个部分 __核心指标流程__ 包括的组件有 kubelet、resource estimator、metrics server、API server。这些指标被ku Read More
前言 在kubernetes环境下,无论集群再大,对应的集群资源(cpu、memory、storage)总是有上限的。而默认情况下,我们启动的pod、以及pod中运行的容器,对应的资源是不加限制的。理论上每个pod,或者是pod内运行的容器,可以无限使用资源直到把所在节点上的资源耗尽,造成节点崩溃, Read More
本章节通过在Jenkins创建一个kubernetes云环境,动态的在kubernetes集群中创建pod完成pipeline的构建流程,关于直接在宿主机上搭建Jenkins集群的可参照 "Kubernetes CI/CD(1)" 部署Jenkins 1. 下载Jenkins对应的镜像 2. 将je Read More
本文通过在kubernetes上启动Jenkins服务,并将宿主机上的docker、docker.sock挂载到Jenkins容器中,实现在Jenkins容器中直接打镜像的形式实现CI功能。 Kubernetes 集群的安装请参考 "kubernetes安装" 部署Jenkins 1. 下载Jenk Read More
使用spring boot创建web工程时,默认采用embeded tomcat作为容器,实际使用过程中,可能会需要对其中的某些功能做微调,而tomcat又没有给出预留配 ,这时就需要对tomcat embed core源码进行编译了,下面说下具体的步骤 创建工程 1. 在eclipse中创建tom Read More
引言 学习docker网络,可以带着下面两个问题来探讨 1. 容器之间可以相互访问的原理 2. 容器暴露端口后,通过宿主机访问到容器内应用,并且对于访问端而言不用感知容器存在的原理 Docker 本身的技术依赖Linux的内核虚拟化技术,所以为了能够更好的理解Docker的网络实现,必须要对牵扯到的 Read More