Kubernetes系列
文章平均质量分 89
介绍关于Kubernetes的一些技术知识
cloudvtech
这个作者很懒,什么都没留下…
展开
-
kubernetes系列之十九:配置kubernetes使用kubevirt管理虚拟机
一、前言kubevirt可以扩展kubernetes的功能以管理虚拟机,其架构见文章https://github.com/kubevirt/kubevirt/blob/master/docs/architecture.md在安装之前需要先做如下准备工作:安装libvirt和qemu软件包yum -y install qemu-kvm libvirt virt-ins...原创 2018-10-08 10:22:19 · 10745 阅读 · 2 评论 -
kubernetes系列之十八:使用helm安装istio
一、前言istio是Kubernetes平台微服务管理的框架标准,是Service Mesh在Kubernetes平台的标准实现。相比于其它的微服务框架,istio提供非代码介入的框架机制,使用sidecar机制将微服务的服务面和管理面连接起来,而且使用的sidecar envoy是一个高效的proxy。Istio 辑上分为数据平面和控制平面。数据平面由一组以 sidecar 方式部署...原创 2018-10-03 07:06:48 · 4474 阅读 · 1 评论 -
kubernetes系列之十七:使用kops在AWS部署kubernetes并建立基于AWS Network Load Balancer的service
一、前言原创 2018-06-03 18:03:58 · 4936 阅读 · 1 评论 -
kubernetes系列之十六:Kubernetes CRD sample-controller的编译和测试
一、前言在文章《kubernetes系列之十四:Kubernetes CRD(CustomResourceDefinition)概览》中,对于Kubernetes官方提供的CRD例子进行了分析,包括CRD的定义以及后端controller的实现。同时如下两篇文章也对k8s的controller进行了更详尽的分析和示例:A Deep Dive Into Kubernetes ControllersK...原创 2018-05-27 07:30:58 · 4619 阅读 · 4 评论 -
kubernetes系列之十五:Kubernetes CRD在multus-cni和prometheus-operator的应用
conetent原创 2018-05-16 05:05:18 · 2852 阅读 · 0 评论 -
kubernetes系列之十四:Kubernetes CRD(CustomResourceDefinition)概览
content原创 2018-05-15 09:17:37 · 20959 阅读 · 0 评论 -
kubernetes系列之十三:POD多网卡方案multus-cni之通过CRD给POD配置自由组合网络
一、前言在文章《kubernetes POD多网卡方案multus-cni之一:概览》中,可以看到通过配置multus,可以为一个POD配置多个网络接口。根据multus主页上的描述,现在可以使用kubernetes的CDR来配置network object,允许POD对网络进行选取,在POD deployment定义中,可以指定需要使用哪个或者那些multus所管理的网络,来满足这种根据POD功...原创 2018-05-13 08:09:12 · 10369 阅读 · 1 评论 -
kubernetes系列之十二:POD多网卡方案multus-cni之概览
一、前言在生产环境下,为了保证安全性和性能,不同功能的网络进行隔离是一个必要的措施,比如管理网络、控制网络和数据网络的隔离(必要情况下,数据网络的data in和data out网络也要进行隔离)。这种隔离在物理机和虚拟机里面很容易实现,但是在POD里面,如果使用Kubernetes这样的容器云管理平台,则会面临一些限制,尤其是现在Kubernetes的POD默认还不支持多网卡设置,但是业界对PO...原创 2018-05-12 16:25:06 · 15213 阅读 · 3 评论 -
kubernetes系列之十一:在Kubernetes平台对容器进行debug
一、前言在容器云的部署中,一个重要的准则是所有的容器以及容器内的进行都要以最低权限运行,所以一般情况下,一个应用程序的所有容器都是以非root权限运行的;另外,为了保证容器镜像的最小,一般debug相关的工具都不会随应用程序发布。在这种情况下,如果要对特定的容器进行debug,则必须让用户登录到特定的node,在宿主机系统空间运行debug命令,同时还要保证node上面有所有这些应用程序debug...原创 2018-05-11 08:32:15 · 2270 阅读 · 0 评论 -
kubernetes系列之十:使用prometheus和grafana对kubernetes的部署进行监控
一、前言不同于传统平台的监控,在容器云平台由于POD的易变动性,所以需要更加container native的监控解决方案,Prometheus就是这样一个适合kubernetes平台的容器云监控解决方案。Prometheus已经成为CNCF的项目,能够和Kubernetes很好的集成。Prometheus和Kubernetes集成有两种方式,一种是使用prometheus-operator,另外...原创 2018-05-10 10:26:52 · 4069 阅读 · 0 评论 -
kubernetes系列之九:kubernetes container的lifecycle hook
一、前言在传统操作系统环境下,我们每个应用程序在启动之前都需要进行一些准备工作而结束之前都需要进行一些清理工作,这样才能保证系统环境的一致性。在容器云环境下,容器的启动和删除是相对频繁的行为,如何在这样的环境中处理好环境一致性问题,Kubernetes的容器 lifecycle hook可以解决这个问题。POD的life cycle hook包括如下两种:PostStartPreStop转载自ht...原创 2018-05-09 08:52:47 · 3342 阅读 · 0 评论 -
kubernetes系列之八:Kubernetes的liveness和readiness探测
一、前言在基于容器云的应用程序部署中,具体POD的生命周期根据各种环境状况有很大不同,POD内部各个容器的状态,container依赖的上游或者周边服务的状态都会对POD作为最终服务实体的服务能力造成影响,所以需要有一个机制来根据container不同的状态来决定POD能否继续存在或者能否加入服务列表对外提供服务。Kubernetes的liveness和readiness探测就是为了解决这个问题产...原创 2018-05-08 08:51:13 · 7739 阅读 · 0 评论 -
kubernetes系列之七:一些将legacy应用迁移到kubernetes的经验
一、前言基于kubernetes的应用实际上是微服务在container方向的实例,所以很多微服务的设计原则在kubernetes框架内依然具有参考价值,比如The Twelve Factors。在legacy应用从基于VM的部署向基于kubernetes部署的迁移过程中,需要根据container和微服务的特点,对legacy系统的诸多方面进行调整,满足kubernetes平台微服务的一些基本要...原创 2018-04-21 10:18:36 · 899 阅读 · 0 评论 -
kubernetes系列之六:安装kubernets v1.10.0和ipvs mode kube-proxy
一、前言kubeadm是Kubernetes官方推出的快速部署Kubernetes集群工具,kubeadm通过将Kubernetes相关服务容器化以简化部署过程。在kubernetes 1.8以上的版本中,对于kube-proxy组件增加了除iptables模式和用户模式之外ipvs模式的支持。通过ipvs的NAT模式,对访问k8s service的请求进行虚IP到POD IP的转发。本文在kub...原创 2018-04-14 18:50:06 · 6660 阅读 · 1 评论 -
kubernetes系列之五:IPVS概览
一、前言IPVS是基于TCP四层(IP+端口)的负载均衡软件。IPVS会从TCP SYNC包开始为一个TCP连接所有的数据包建立状态跟踪机制,保证一个TCP连接中所有的数据包能到同一个后端。所以IPVS是基于TCP状态机进行控制管理,只感知TCP头而不对TCP的payload进行查看;因此,对IPVS后端服务器集群还有一个假定,那就是所有后端都具有同样的应用层的服务功能,但是由于IPVS可以给后端...原创 2018-04-17 22:05:20 · 13367 阅读 · 0 评论 -
kubernetes系列之四:kubernetes的源地址保持(source IP preserve)
一、前言kubernetes提供服务的实体(POD)具有内部网络空间的地址,外部无法直接访问,所以kubernetes提供了多种对外暴露POD服务的方法。这些方法都借助于kubernetes的service的概念,将一系列具有等同服务能力的POD组成一个抽象的服务实体,这个服务实体具有一个虚IP,这个虚IP可以是kubernetes cluster内部网络可达的IP(对应cluster servi...原创 2018-04-13 18:47:02 · 5645 阅读 · 0 评论 -
kubernetes系列之三:kubernetes使用CNI macvlan作为网络插件
一、前言macvlan是kernel新支持的特性之一,需要Linux kernel v3.9–3.19和4.0+的支持。这种模式所配置的container网络同主机网络在同一个LAN里面,可以具有和主机一样的网络能力。使用macvlan可以在主机的一个网络接口上配置多个虚拟的网络接口,这些网络接口有自己独立的MAC地址和IP地址。macvlan 下的container网络和主机在同一个网段中,共享...原创 2020-04-14 19:46:50 · 16336 阅读 · 2 评论 -
kubernetes系列之二:iptables概览
一、前言在基于虚拟化的云系统中,网络虚拟化是不可或缺的关键部分。虚拟化的网络可以自由的在本地进行基于单机的网络配置或者借助一些互联技术(underlay、overlay或者点对点技术)在虚拟网络内部空间实现跨节点和数据中心的网络互联,但是如果虚拟网络内部的服务要对外进行暴露,就不得不借助地址转换或者端口转换等数据包修改技术。而在现有的container管理框架中,iptables更是承担了服务暴露...原创 2018-04-06 07:59:16 · 2434 阅读 · 0 评论 -
kubernetes系列之一:Kubernetes如何利用iptables对外暴露service
一、前言Kubernetes利用iptables达成以下两个目的:对外暴露POD和服务(通过host port、cluster service、node external IP、external load balancer、node port)简单的负载均衡在Kubernetes worker node的iptables的NAT表的prerouting和output 链表会出现如下规则作为kube...原创 2018-03-31 19:06:46 · 4292 阅读 · 0 评论