zoukankan      html  css  js  c++  java
  • K8S headless service服务详解

    一、headless和ClusterIP的区别

    CoreDNS的作用:在K8S里,我们想要通过name来访问服务的方式就是在Deployment上面添加一层Service,这样我们就可以通过Service name来访问服务了,那其中的原理就是和CoreDNS有关,它将Service name解析成Cluster IP,

    这样我们访问Cluster IP的时候就通过Cluster IP作负载均衡,把流量分布到各个POD上面

    K8s中资源的全局FQDN格式:
      Service_NAME.NameSpace_NAME.Domain.LTD.
      Domain.LTD.=svc.cluster.local.     #这是默认k8s集群的域名。

    1、clusterip举例

    ClusterIP的原理:一个Service可能对应多个EndPoint(Pod)client访问的是Cluster IP,通过iptables规则转到Real Server,从而达到负载均衡的效果

    备注: 从上面的结果中我们可以看到虽然Service有2个endpoint,但是dns查询时只会返回Service的地址。

               具体client访问的是哪个Real Server,是由iptables来决定的

    2、headless举例

     解释:dns查询会如实的返回2个真实的endpoint

    headless使用场景

    第一种:自主选择权,有时候client想自己来决定使用哪个Real Server,可以通过查询DNS来获取Real Server的信息。

    第二种:Headless Service的对应的每一个Endpoints,即每一个Pod,都会有对应的DNS域名;这样Pod之间就能互相访问,集群也能单独访问pod

  • 相关阅读:
    Django(app的概念、ORM介绍及编码错误问题)
    Django(完整的登录示例、render字符串替换和redirect跳转)
    Construct Binary Tree from Preorder and Inorder Traversal
    Single Number II
    Single Number
    Binary Tree Level Order Traversal II
    Binary Tree Level Order Traversal
    Binary Tree Zigzag Level Order Traversal
    Recover Binary Search Tree
    Add Binary
  • 原文地址:https://www.cnblogs.com/wuchangblog/p/14032057.html
Copyright © 2011-2022 走看看