通过 Service 访问 Pod - 每天5分钟玩转 Docker 容器技术(136)

本节开始学习 Service。
我们不应该期望 Kubernetes Pod 是健壮的,而是要假设 Pod 中的容器很可能因为各种原因发生故障而死掉。Deployment 等 controller 会通过动态创建和销毁 Pod 来保证应用整体的健壮性。换句话说,Pod 是脆弱的,但应用是健壮的。

每个 Pod 都有自己的 IP 地址。当 controller 用新 Pod 替代发生故障的 Pod 时,新 Pod 会分配到新的 IP 地址。这样就产生了一个问题:

如果一组 Pod 对外提供服务(比如 HTTP),它们的 IP 很有可能发生变化,那么客户端如何找到并访问这个服务呢?

Kubernetes 给出的解决方案是 Service。

创建 Service

Kubernetes Service 从逻辑上代表了一组 Pod,具体是哪些 Pod 则是由 label 来挑选。Service 有自己 IP,而且这个 IP 是不变的。客户端只需要访问 Service 的 IP,Kubernetes 则负责建立和维护 Service 与 Pod 的映射关系。无论后端 Pod 如何变化,对客户端不会有任何影响,因为 Service 没有变。

来看个例子,创建下面的这个 Deployment:

我们启动了三个 Pod,运行 httpd 镜像,label 是 run: httpd,Service 将会用这个 label 来挑选 Pod。

Pod 分配了各自的 IP,这些 IP 只能被 Kubernetes Cluster 中的容器和节点访问。

接下来创建 Service,其配置文件如下:

① v1 是 Service 的 apiVersion

② 指明当前资源的类型为 Service

③ Service 的名字为 httpd-svc

④ selector 指明挑选那些 label 为 run: httpd 的 Pod 作为 Service 的后端。

⑤ 将 Service 的 8080 端口映射到 Pod 的 80 端口,使用 TCP 协议。

执行 kubectl apply 创建 Service httpd-svc

httpd-svc 分配到一个 CLUSTER-IP 10.99.229.179。可以通过该 IP 访问后端的 httpd Pod。

根据前面的端口映射,这里要使用 8080 端口。另外,除了我们创建的 httpd-svc,还有一个 Service kubernetes,Cluster 内部通过这个 Service 访问 kubernetes API Server。

通过 kubectl describe 可以查看 httpd-svc 与 Pod 的对应关系。

Endpoints 罗列了三个 Pod 的 IP 和端口。我们知道 Pod 的 IP 是在容器中配置的,那么 Service 的 Cluster IP 又是配置在哪里的呢?CLUSTER-IP 又是如何映射到 Pod IP 的呢?

答案是 iptables,我们下节讨论。

书籍:
1.《每天5分钟玩转Docker容器技术》
https://item.jd.com/16936307278.html

2.《每天5分钟玩转OpenStack》
https://item.jd.com/12086376.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/242513.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

伺服的原理

伺服的原理 伺服系统(servomechanism)又称随动系统,是用来精确地跟随或复现某个过程的反馈控制系统。伺服系统使物体的位置、方位、状态等输出被控量能够跟随输入目标(或给定值)的任意变化的自动控制系统。它的主要任…

有钱了该不该提前还清房贷?

有钱了该不该提前把房贷还清?对于很多还在按揭贷款中的人来说,估计大家都会问这样的问题。但是我建议大家不要提前还款,为什么呢?目前房贷的利息实际上时候很低的,商业贷款的利息在5%左右,公积金贷款那更低…

Service IP 原理 - 每天5分钟玩转 Docker 容器技术(137)

Service Cluster IP 是一个虚拟 IP,是由 Kubernetes 节点上的 iptables 规则管理的。 可以通过 iptables-save 命令打印出当前节点的 iptables 规则,因为输出较多,这里只截取与 httpd-svc Cluster IP 10.99.229.179 相关的信息: 这…

编码器的分类及工作原理

编码器的分类及工作原理 编码器(encoder)是将信号(如比特流)或数据进行编制、转换为可用以通讯、传输和存储的信号形式的设备。编码器把角位移或直线位移转换成电信号,前者称为码盘,后者称为码尺。按照读出…

老赖整治升级,不还钱直接扣微信钱包!

都说欠钱还钱天经地义,但是偏偏有人就是喜欢耍赖,欠钱不还跟债主躲猫猫。但是大家都知道,如果欠钱不还,债主起诉到法院之后,老赖的银行账户是要被冻结的,如果账户有余额,会优先用于偿还债权人的…

买房申请房贷被拒,首付款要打水漂了吗?

肯定不会打水漂啊!去办理房贷之前很多人其实都不了解银行的房贷要求,一般都是在中介的安排下一步步的操作,而房产中介一般前期都不管你贷款能不能过,差个征信之后,先让你签购房合同,等你交定金后带你去银行…

机械传动知识

机械传动知识 机械传动在机械工程中应用非常广泛,主要是指利用机械方式传递动力和运动的传动。分为两类:一是靠机件间的摩擦力传递动力的摩擦传动,二是靠主动件与从动件啮合或借助中间件啮合传递动力或运动的啮合传动。 同步传送

刷光借呗额度之后用户突然去世,支付宝会怎么做?

欠债还钱,这是天经地义的,对马云来说也是一个样。支付宝本身是一个企业机构,而不是慈善机构,借呗花呗赚钱的目的不会因为借款人的去世而转移。如果现实中确实发生了用户刷完借呗之后突然去世的情况,那支付宝会通过以下…

李嘉诚再卖地3800亩,房价要变天了吗?

近日,李嘉诚将其位于广东中山的碧海银湖项目出售,该公司拥有3800亩土地。看到此消息很多网友都纷纷表示,房价估要崩盘了,但果真如此吗?李嘉诚的商业头脑是顶尖的。他在这个时候卖了这么多的土地,囤了那么久…

伺服选型计算

伺服选型计算 从这个意义上说,伺服动力系统的选型,并非仅仅是根据各运动轴的扭矩和转速…等传动参数的计算去选取电机和驱动器(充其量可称作估算吧),而是要为系统中的每个运动轴匹配合适的动力装置。原则上它其实是基…

DNS 访问 Service - 每天5分钟玩转 Docker 容器技术(138)

在 Cluster 中,除了可以通过 Cluster IP 访问 Service,Kubernetes 还提供了更为方便的 DNS 访问。 kubeadm 部署时会默认安装 kube-dns 组件。 kube-dns 是一个 DNS 服务器。每当有新的 Service 被创建,kube-dns 会添加该 Service 的 DNS 记录…

在信用健全的今天,史玉柱背负2.5亿债务还能翻身吗?

我们认为以史玉柱的韧劲,不论放在什么时候他都可以翻身。一、史玉柱的传奇可以说史玉柱在创业的过程中,一直伴随着借钱和负债。史玉柱1989年,史玉柱怀揣独立开发的汉卡软件和M-6401桌面排版印刷系统南下深圳开始了创业之路,但是当…

CANopne通信基础

CANopne通信基础 CAN是控制器域网 (Controller Area Network, CAN) 的简称,是国际上应用最广泛的现场总线之一。

银行产生的烂账是如何处理的?

说到银行烂账,估计很多人都会愤怒,但更多人关心的是银行出现烂账了怎么处理,会不会拿自己存在银行的钱开刀?自己存在银行是否安全等等。我们先来了解下什么是银行烂账,银行一般会将贷款客户做5级分类,分别是…

中国上榜前50名富豪当中,有多少人完全是通过白手起家?

可以肯定告诉大家,中国顶级富豪当中,有90%以上的人都是靠完全白手起家致富的!一、2018年胡润富豪概述胡润研究院发布《2018胡润全球富豪榜》,其中全球有2694位10亿美金富豪上榜,人数达到达历史新高,榜单中的…

怎么使用MATLAB编辑图像,使得细节放大

怎么使用MATLAB编辑图像,使得细节放大 首先点击小鼠标,选择窗口 选择编辑,点击复制 在选择编辑,点击粘贴 然后,可以缩小一个窗口,删除想要删除的部分 演示一下坐标轴的删除。首先双击,坐标…

机器学习性能评估指标

引言:分类是数据挖掘三大核心技术( 关联规则、分类、聚类) 之一 ,其实质是产生一个目标函数 f , 该函数将输入数据集的属性集 x 映射到已经定义的类标签 y 上。该目标函数通常也被称为分类模型或分类器 机器学习分为三个阶段: 第一阶段:学习模…

经常收到银行白金信用卡邀请短信,真能办下来吗?

尊敬的XX先生,您是我行的优质客户,特意邀请您申请我行的白金信用卡,额度在10万以上,【XX银行】大家都没有经常接到过类似的短信?之前我也是经常接到类似的短信,但是我都置之不理,因为信用卡够用…

使用Qt创建一个C语言工程

使用Qt创建一个C语言工程 第一步:点击new按钮;或者在左边,点击右键选择新建项目;或者点击文件,选择新建项目 方式一 方式二 方式三 第二步:在弹出的对话框中选择Non-Qt Project和Plain C Application.选…

按揭买的房,房产证为什么要放在银行,自己要用房产证怎么办?

按揭买房的流程大概是签订购房合同,付定金,然后在规定期限内付首付,同时申请按揭贷款,按揭贷款批下来以后,过户,过户完成,然后房产证交给银行办抵押,办完抵押以后,银行会…