飞天使-k8s知识点5-kubernetes基础名词扫盲

文章目录

        • deployments
        • pod
          • Node
          • services
          • kubectl 实现应用伸缩
          • kubectl 实现滚动更新
          • kubernetes架构

deployments
中文文档
http://docs.kubernetes.org.cn/251.html

deployment是用来创建和更新应用的,master 会负责将创建好的应用实例调度到集群中的各个节点
应用实例创建完成后,Kubernetes Deployment Controller会持续监视这些实例。如果管理实例的节点被关闭或删除,那么 Deployment Controller将会替换它们,实现自我修复能力。

飞天使-k8s知识点5-kubernetes基础名词扫盲_第1张图片

pod
pod 是 kubernetes 中的最小单位, pod 会被master 分配到指定的node上,直到生命周期结束

(凡人皆有一死来描述pod,没有比这跟准确的了)

飞天使-k8s知识点5-kubernetes基础名词扫盲_第2张图片

Node
Node 是物理机或者虚拟机,被master 管理

kubelet 管理 k8s master 和node 之间的通信,管理机器上运行的pods 和containers 容器

kubectl get  列出资源
kubectl describe 显示资源的详细信息
kubectl logs 打印容器中的容器日志
kubectl exec  pod中容器内部执行的命令

飞天使-k8s知识点5-kubernetes基础名词扫盲_第3张图片

services
ReplicationController动态创建新的Pods来保持应用的运行,如果pod数目少了

Kubernetes中的Service 是一个抽象的概念,它定义了Pod的逻辑分组和一种可以访问它们的策略,这组Pod能被Service访问,使用YAML (优先)或JSON 来定义Service,Service所针对的一组Pod通常由LabelSelector实现

可以通过type在ServiceSpec中指定一个需要的类型的 Service,Service的四种type:

ClusterIP(默认) - 在集群中内部IP上暴露服务。此类型使Service只能从群集中访问。
NodePort - 通过每个 Node 上的 IP 和静态端口(NodePort)暴露服务。NodePort 服务会路由到 ClusterIP 服务,这个 ClusterIP 服务会自动创建。通过请求 :,可以从集群的外部访问一个 NodePort 服务。
LoadBalancer - 使用云提供商的负载均衡器(如果支持),可以向外部暴露服务。外部的负载均衡器可以路由到 NodePort 服务和 ClusterIP 服务。
ExternalName - 通过返回 CNAME 和它的值,可以将服务映射到 externalName 字段的内容,没有任何类型代理被创建。这种类型需要v1.7版本或更高版本kube-dnsc才支持。


飞天使-k8s知识点5-kubernetes基础名词扫盲_第4张图片
飞天使-k8s知识点5-kubernetes基础名词扫盲_第5张图片

kubectl 实现应用伸缩
在之前模块中,我们创建了一个Deployment,然后通过Service暴露,Deployment创建的Pod来运行应用,当流量增加时,我们需要扩展应用来满足用户需求。

通过Deployment更改副本数可以实现伸缩。


飞天使-k8s知识点5-kubernetes基础名词扫盲_第6张图片
飞天使-k8s知识点5-kubernetes基础名词扫盲_第7张图片

kubectl 实现滚动更新
滚动更新通过Deployments实现应用实例在不中断、不停机情况下更新,新的Pod会逐步调度到可用的资源Node节点上

更新时的Pod数量可以是数字或百分数(pod)来表示。在Kubernetes更新中,支持升级 / 回滚(恢复)更新

与应用伸缩相似,滚动更新是实现流量负载均衡方式。



kubernetes架构
Borg是谷歌内部的大规模集群管理系统,负责对谷歌内部很多核心服务的调度和管理。Borg的目的是让用户能够不必操心资源管理的问题,让他们专注于自己的核心业务,并且做到跨多个数据中心的资源利用率最大化


etcd 保存整个集群的状态
controller manager 负责维护集群的状态,比如故障检测,自动扩展,滚动更新等
scheduler 负责资源的调度,按照预定的调度策略将pod 调度到相应的机器上
kubelet 负责维护容器的生命周期,同时也负责,volume 网络的管理
container runtime 负责镜像管理以及pod和容器的真正运行 
kube-proxy 负责为service 提供cluster 内部的服务发现和负载均衡


飞天使-k8s知识点5-kubernetes基础名词扫盲_第8张图片

飞天使-k8s知识点5-kubernetes基础名词扫盲_第9张图片
飞天使-k8s知识点5-kubernetes基础名词扫盲_第10张图片
飞天使-k8s知识点5-kubernetes基础名词扫盲_第11张图片

飞天使-k8s知识点5-kubernetes基础名词扫盲_第12张图片

参考文章: http://docs.kubernetes.org.cn/115.html

你可能感兴趣的:(kubernetes,容器,云原生)