Kubernetes Headless Service
1. Headless Service
headless service 需要将 spec.clusterIP 设置成 None。
因为没有ClusterIP,kube-proxy 并不处理此类服务,因为没有load balancing或 proxy 代理设置,在访问服务的时候回返回后端的全部的Pods IP地址,主要用于开发者自己根据pods进行负载均衡器的开发(设置了selector) 或 StatefulSet.
2. Test Headless Service With selectors
$cat deployment.yaml
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: nginx-deployment
spec:
replicas: 2 # tells deployment to run 2 pods matching the template
template: # create pods using pod definition in this template
metadata:
# unlike pod-nginx.yaml, the name is not included in the meta data as a unique name is
# generated from the deployment name
labels:
app: nginx_test
spec:
containers:
- name: nginx
image: nginx:1.7.9
ports:
- containerPort: 80
$ cat headless_service.yaml
kind: Service
apiVersion: v1
metadata:
name: nginx-service
spec:
selector:
app: nginx_test
ports:
- protocol: TCP
port: 80
targetPort: 80
clusterIP: None
通过dns访问,会返回后端pods的列表
登录到Cluster的内部pod
nslookup nginx-service
nslookup: can't resolve '(null)': Name does not resolve Name: nginx-service
Address 1: 10.10.23.36
Address 2: 10.10.23.39
Kubernetes Headless Service的更多相关文章
- kubernetes学习Service之headless和statefulSet结合
一.首先说headless Service和普通Service的区别 headless不分配clusterIP headless service可以通过解析service的DNS,返回所有Pod的地址 ...
- kubernetes的headless service介绍
headless service是一个特殊的ClusterIP类service,这种service创建时不指定clusterIP(--cluster-ip=None),因为这点,kube-proxy不 ...
- kubernetes进阶(04)kubernetes的service
一.service概念 Service是对一组提供相同功能的Pods的抽象,并为它们提供一个统一的入口.借助Service,应用可以方便的实现服务发现与负载均衡,并实现应用的零宕机升级.Service ...
- Kubernetes的service资源介绍
service 三种工作模式:userspace.iptables.ipvs 删除手动创建的service [root@master ~]# kubectl delete svc redis serv ...
- Kubernetes中Service的使用
目录 简介 1. Service资源定义 1.1 Service Type ClusterIP 无头service NodePort sessionAffinity实现源地址session绑定 简介 ...
- 007.kubernets的headless service配置和ingress的简单配置
前面配置了servcie的nodepoint和clusterIP附在均衡 一 headless service配置 1.1 默认下的DNS配置 [root@docker-server1 deploym ...
- [Kubernetes]说说 Service 与 Ingress
在 Kubernetes 中, Service 有三种对外暴露的方法,但是由于每个 Service 都要有一个负载均衡的服务,所以采用 Service 的话,会造成既浪费成本又高的现象.对于用户来说, ...
- statefulSet + headless service 学习记录 service :selector --> template :label
1.statefulset.yaml apiVersion: apps/v1kind: StatefulSetmetadata: name: webspec: serviceName: &q ...
- 【Kubernetes】Kubernetes的Service外部访问方式:NodePort和LoadBalancer
Kubernetes的Pod的寿命是有限的,它们不会复活,因此尽管每个Pod都有自己的IP地址,但是这些IP地址是不可靠的,会随着Pod的消亡而消失. 这就带来一个问题,如果一些Pod的集合(称之为b ...
随机推荐
- ASP.NET管道技术
Asp.net mvc是基于dnf(.net framework )实现了代码分离的开源框架.ASP.NET MVC框架拥有极强的定制以及扩展的特性.本文梳理了ASP.NET MVC的管道(pipel ...
- 对asp.net缓存 的深入了解
一.缓存概念,缓存的好处.类型.-------------------------------------------------------------------------------- ...
- Unity3D学习笔记——NGUI之UITable
UITable:这个控件可以方便的排列其他小组件,并能控制小组件之间的距离. 效果如下: 这个控件的效果和UIGrid很相似,区别是UIGrid能控制每个小组件的大小,而这个 控件控制的是小组件之前的 ...
- awk合并两个文件并显示
问题: 答案:
- redis 底层数据结构 整数集合intset
整数集合是集合键的底层实现之一,当一个集合只包含整数值元素,并且这个集合的元素数量不多时Redis就会使用整数集合作为集合键的底层实现 整数集合是Redis用于保存整数值的集合抽象数据结构,它可以保存 ...
- 事务处理笔记《一》ADO.NET级别的事务
现在我们对事务的概念和原理都有所了解了,并且作为已经有一些基础的C#开发者,我们已经熟知编写数据库交互程序的一些要点,即: (1)使用SqlConnection类的对象的Open()方法建立与数据库服 ...
- CSS标签内多余内容隐藏
CSS: <style> .mazey{width:100px;} .nowrap{overflow:hidden;text-overflow:ellipsis;white-space:n ...
- DevExpress控件-lookupedit的使用方法详解(图文)转http://blog.csdn.net/qq395537505/article/details/50920508
绑定数据源: lookupedit.Properties.ValueMember = 实际要用的字段; //相当于editvalue lookupedit.Properties.DisplayMemb ...
- MySQL错误日志提示innodb_table_stats和innodb_index_stats不存在故障处理
查看MySQL error日志,发现有如下报错 7efbc586f700 InnoDB: Error: Table "mysql"."innodb_table_stats ...
- matlab学习笔记之求解线性规划问题和二次型问题
一.线性规划问题 已知目标函数和约束条件均为线性函数,求目标函数的最小值(最优值)问题. 1.求解方式:用linprog函数求解 2.linprog函数使用形式: x=linprog(f,A,b) ...