首页
技术小册
AIGC
面试刷题
技术文章
MAGENTO
云计算
视频课程
源码下载
PDF书籍
「涨薪秘籍」
登录
注册
kubernetes模型设计
1. 通用对象设计原则
2. 模型设计
2.1. TypeMeta
2.2. Metadata
3. 控制器模式
kubernetes组件介绍
2.1. etcd
2.2. master组件
2.2.1. apiserver
2.2.2. controller manager
2.2.3. scheduler
2.3. node组件
2.3.1. kubelet
2.3.2. kube-porxy
2.3.3. container runtime
2.4. 核心附件
2.4.1. CNI网络插件
2.4.1.1. Flannel 通信原理
2.4.1.2. Flannel三种工作模式
2.4.1.3. flannel的模式选择和查看
2.4.2. DNS
当前位置:
首页>>
技术小册>>
Kubernets合辑3-kubernetes介绍
小册名称:Kubernets合辑3-kubernetes介绍
在k8s集群中pod的IP地址会发生变化,k8s通过标签选择器筛选出一组pod,这组pod共同指关联到抽象资源service,这个service拥有固定的IP地址,即cluster ip。此时无论后端的pod如何变化,都可以请求都可以通过service到达后端的pod上。 每个service有着自己的名称和cluster IP地址,可以通过IP地址直接访问到service后端对应的pod资源,也可以使用DNS将cluster ip 和 service 名称关联,实现通过service的名称访问后端pod。kubernetes的dns插件有kube-dns和coredns两种,在kubernetes 1.11 开始使用coredns较多,在此之前使用kube-dns比较多。 使用dns解析时,如果在pod外,需要使用全域名解析如:nginx-web.default.svc.cluster.local,pod内部则可以使用短域名。 ``` [root@hdss7-21 ~]# kubectl exec nginx-ds-jdp7q -- /bin/bash -c "cat /etc/resolv.conf" # 重点关注主机域 nameserver 192.168.0.2 search default.svc.cluster.local svc.cluster.local cluster.local host.com options ndots:5 ####### # 全路径访问(常用在集群外访问情况): [root@hdss7-21 ~]# dig -t A kubernetes.default.svc.cluster.local @192.168.0.2 +short 192.168.0.1 # 短域名访问(常用在同一个名称空间内pod之间访问) [root@hdss7-21 ~]# kubectl exec nginx-ds-jdp7q -- /bin/bash -c "host kubernetes" kubernetes.default.svc.cluster.local has address 192.168.0.1 # 带名称空间的短域名(常用在跨名称空间pod之间访问) [root@hdss7-21 ~]# kubectl exec nginx-ds-jdp7q -- /bin/bash -c "host coredns.kube-system" coredns.kube-system.svc.cluster.local has address 192.168.0.2 ``` 在Pod数量比较多,频繁使用域名解析,出现DNS解析超时,此时可以考虑使用 local-dns-cache,这种方式会在各个节点部署一个本地DNS缓存服务器,可以大幅度减少Core DNS压力。
上一篇:
2.4.1.3. flannel的模式选择和查看
该分类下的相关小册推荐:
Kubernetes中文教程(三)
Kubernetes中文教程(五)
Kubernets合辑7-存储
Kubernetes中文教程(六)
Kubernetes合辑1-安装Kubernetes
Kubernets合辑8-权限控制
Kubernetes中文教程(二)
Kubernetes中文教程(四)
Kubernets合辑10-网络
Kubernets合辑6-服务发现
云原生-K8S入门实战
Kubernets合辑9-资源约束