当前位置: 首页 > news >正文

Kubernetes Tutorials翻译4——Using a Service to Expose Your App

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

Kubernets Services

实际上同一个cluster中的Pods拥有独立的ip,只是这些ip仅在K8s内部使用不对外暴露。为解决pods终止,删除或者替换问题,K8s通过Services对Pods进行群组消息分发,让pods与其中的程序能够自动进行服务发现。K8s Service是对Pods进行:逻辑集群划分,enables external traffic exposure(使外部流量展现?),负载均衡与服务发现的一个抽象层。

Service通过pods在cluster中独立的的内部ip与端口将外部流量正确导流到pods。如果想要内部服务能够被外边访问到,需要以下参数:

· LoadBalancer (负载均衡) - 向外提供一个IP地址(就像AWS或者GCP云服务提供的IP)

· NodePort - 在一个cluster中的所有Node通过NAT模式将同一个port暴露给Servce。

Services overview

Service 为其管理的Pods提供了流量的负载均衡。当某个服务的部署器中有一组Pods时,这会非常有用。(在下一节,我们创建的application将会多实例部署)。

Service还负责一个cluster中的服务发现(covered in Accessing the Service)。比如一个web服务可以直接接受后端服务的流量,而不用考虑Pods。

Service 使用 Label Selectors(标签选择器)匹配一组Pods。Label Selectors是Label上一组允许逻辑操作的组件。

Label 是附加在比如Pods等对象上的 key/value 键值对,hashtags from social media(可以看做主题标签  例子:#标题)。Label用来识别对象间的关系,用类似以下方式:

· Production environment(production, test, dev)产品的环境( 出产,测试用,开发版本)

· Application version (beata,v1.3)程序版本

· Type of service/service (fronted,backen,database)服务类型(前端,后端,数据库)

Labels

Label 可以在对象创建时候或之后附加其上,也可以随时更改。Kubectl run命令在新 Pods/Deployment 执行时已经设置了默认的 Labels/Labels Selectors。Deployment中Labels与Label Selectors之间的链接决定了Pods之间的关系。

 

转载于:https://my.oschina.net/lemonfight/blog/861016

相关文章:

  • JavaScript 函数式编程
  • 企业云桌面-08-准备虚拟机-041-exsi01-042-exsi02-043-exsi03-044-exsi04
  • Cocos2dx源码赏析(3)之事件分发
  • SQL跨数据库复制表数据
  • opencv轮廓提取、轮廓识别相关要点
  • yii2: oracle汉字占用字节长度
  • jquery easy ui 验证框架
  • java生成验证码并可刷新
  • JS三大经典变量命名法
  • 数字基础(Digital Fundamentals)中的truth table转化成表达式
  • 为你解惑之WPF经典9问详解
  • 输入一个整数,将这个整数以字符串的形式逆序输出 程序不考虑负数的情况,若数字含有0,则逆序形式也含有0,如输入为100,则输出为001...
  • MSER
  • 你知道第一个 C 语言编译器是如何编写的吗?
  • Haproxy的三种保持客户端会话保持方式
  • 【译】JS基础算法脚本:字符串结尾
  • 【许晓笛】 EOS 智能合约案例解析(3)
  • 5分钟即可掌握的前端高效利器:JavaScript 策略模式
  • Fabric架构演变之路
  • JavaScript创建对象的四种方式
  • Python学习之路16-使用API
  • React Native移动开发实战-3-实现页面间的数据传递
  • Spring Boot快速入门(一):Hello Spring Boot
  • TiDB 源码阅读系列文章(十)Chunk 和执行框架简介
  • 初识 beanstalkd
  • 个人博客开发系列:评论功能之GitHub账号OAuth授权
  • 前端
  • 学习HTTP相关知识笔记
  •  一套莫尔斯电报听写、翻译系统
  • 移动端 h5开发相关内容总结(三)
  • 译自由幺半群
  • 《TCP IP 详解卷1:协议》阅读笔记 - 第六章
  • JavaScript 新语法详解:Class 的私有属性与私有方法 ...
  • MyCAT水平分库
  • 如何用纯 CSS 创作一个货车 loader
  • ​2020 年大前端技术趋势解读
  • (安全基本功)磁盘MBR,分区表,活动分区,引导扇区。。。详解与区别
  • (安卓)跳转应用市场APP详情页的方式
  • (二)七种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (附源码)spring boot火车票售卖系统 毕业设计 211004
  • (附源码)ssm高校实验室 毕业设计 800008
  • (规划)24届春招和25届暑假实习路线准备规划
  • (区间dp) (经典例题) 石子合并
  • (一)插入排序
  • (原創) 如何解决make kernel时『clock skew detected』的warning? (OS) (Linux)
  • . NET自动找可写目录
  • .NET 实现 NTFS 文件系统的硬链接 mklink /J(Junction)
  • .NET/C# 的字符串暂存池
  • .NET构架之我见
  • .NET开发人员必知的八个网站
  • .net网站发布-允许更新此预编译站点
  • .Net下的签名与混淆
  • @column注解_MyBatis注解开发 -MyBatis(15)
  • @Documented注解的作用
  • [ Linux 长征路第二篇] 基本指令head,tail,date,cal,find,grep,zip,tar,bc,unname